JP2013130952A - Data transferring apparatus and data transferring method - Google Patents

Data transferring apparatus and data transferring method Download PDF

Info

Publication number
JP2013130952A
JP2013130952A JP2011278697A JP2011278697A JP2013130952A JP 2013130952 A JP2013130952 A JP 2013130952A JP 2011278697 A JP2011278697 A JP 2011278697A JP 2011278697 A JP2011278697 A JP 2011278697A JP 2013130952 A JP2013130952 A JP 2013130952A
Authority
JP
Japan
Prior art keywords
attribute information
transfer
packet
identifier
held
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2011278697A
Other languages
Japanese (ja)
Inventor
Akiyoshi Momoi
昭好 桃井
Chuma Nagao
宙馬 長尾
Daisuke Shiraishi
大介 白石
Tsuyoshi Hiraoka
豪 平岡
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 JP2011278697A priority Critical patent/JP2013130952A/en
Publication of JP2013130952A publication Critical patent/JP2013130952A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To solve the problem in the conventional techniques in which a packet is not compressed in a transfer having a large difference from the last transfer but having a small difference from the second last or third last transfer because only the difference from the last transfer is considered, so that transfer efficiency is not improved.SOLUTION: A data transferring apparatus that transfers data using a packet retains transfer attribute information on a plurality of past transfers; and executes a transfer, when its transfer attribute information matches that of a past transfer, without the transfer attribute information but with the addition of an identifier indicating which past transfer it matches, so as to reduce the size of a packet and improve transfer efficiency.

Description

本発明は、パケットを使用してデータ転送を行うデータ転送装置及びデータ転送方法に関する。   The present invention relates to a data transfer apparatus and a data transfer method for performing data transfer using a packet.

パケットを使用してデータ転送を行う技術が様々な分野に適用されている。TCP/IP(Transmission Control Protocol/Internet Protocol)はインターネット上のデータ転送をパケットベースで行う技術である。また、PCI−Express(Peripheral Component Interconnect−Express)は集積回路間のデータ転送をパケットベースで行う技術である。また、NoC(Network On Chip)は集積回路内のデータ転送をパケットベースで行う技術である。パケットベースでデータ転送を行うメリットは、アドレスやデータ等の転送に必要な様々な情報をセットとして少ない信号線で転送できることにある。例えば、PCI−Expressでは、2対の差動線路のみで、データ転送を行うことができる。他にも、パケットベースでデータ転送を行うメリットとして、転送レートを上げやすいという点がある。
しかし、パケットベースの転送方式においては、様々な情報を時間軸上に展開して送信するため、非パケットベースの転送方式に比べて転送に要するサイクル数が多いという問題点がある。そのため、パケット構造を工夫し、必要最低限の情報のみを転送することで、転送に要するサイクル数を減らし、転送効率を上げる技術が提案されている。例として、非特許文献1に開示されているRFC1144に規定されているV.Jacobsonのヘッダー圧縮方式がある。V.Jacobsonのヘッダー圧縮方式では、直前の転送のパケットとこれから転送を行おうとしているパケットとの比較を行い、差分のあった情報だけを転送することで、パケットを圧縮し転送効率の向上を図っている。
Techniques for transferring data using packets are applied in various fields. TCP / IP (Transmission Control Protocol / Internet Protocol) is a technology that performs data transfer on the Internet on a packet basis. PCI-Express (Peripheral Component Interconnect-Express) is a technique for performing data transfer between integrated circuits on a packet basis. In addition, NoC (Network On Chip) is a technique for performing data transfer in an integrated circuit on a packet basis. An advantage of performing data transfer on a packet basis is that various information necessary for transfer of addresses, data, and the like can be transferred with a small number of signal lines as a set. For example, in PCI-Express, data transfer can be performed using only two pairs of differential lines. Another advantage of transferring data on a packet basis is that it is easy to increase the transfer rate.
However, the packet-based transfer method has a problem in that the number of cycles required for transfer is larger than that of the non-packet-based transfer method because various information is developed and transmitted on the time axis. Therefore, a technique has been proposed in which the packet structure is devised and only the minimum necessary information is transferred, thereby reducing the number of cycles required for transfer and increasing transfer efficiency. As an example, V.V. defined in RFC1144 disclosed in Non-Patent Document 1 is described. There is a header compression method of Jacobson. V. In the header compression method of Jacobson, the packet of the previous transfer is compared with the packet to be transferred, and only the information with the difference is transferred, so that the packet is compressed and the transfer efficiency is improved. Yes.

RFC 1144 Compressing TCP/IP Headers February 1990RFC 1144 Compressing TCP / IP Headers February 1990

非特許文献1のような従来技術では、直前の転送との差分しか考慮されないために、圧縮効率が良くないので転送効率を向上させ難い。   In the conventional technique such as Non-Patent Document 1, since only the difference from the immediately preceding transfer is considered, the compression efficiency is not good, and it is difficult to improve the transfer efficiency.

以上の課題を解決するために本発明に係るデータ転送装置は、パケットの属性情報を第1識別子と対応づけて複数保持する保持手段と、データ転送の種類を示す属性情報を含む転送要求を受信する受信手段と、前記受信手段により受信した属性情報と前記保持手段の保持している属性情報とが一致すると、前記受信手段により受信した属性情報が前記保持手段により保持されるどの属性情報と一致するかを示す第1識別子を前記受信手段により受信した属性情報の代わりにパケットに含めて送信する送信手段とを有することを特徴とする。
また、本発明に係るデータ転送装置は、パケットの属性情報を前記第1識別子と対応づけて複数保持する保持手段と、第1識別子を含む転送要求を受信する受信手段と、前記保持手段の保持する属性情報のうち前記受信手段により受信した第1識別子に対応する属性情報を、前記受信手段により受信した識別子の代わりにパケットに含めて送信する送信手段とを有することを特徴とする。
In order to solve the above problems, a data transfer apparatus according to the present invention receives a transfer request including a holding unit that holds a plurality of packet attribute information in association with a first identifier, and attribute information indicating a type of data transfer. If the attribute information received by the receiving means matches the attribute information held by the holding means, the attribute information received by the receiving means matches with which attribute information held by the holding means Transmitting means for transmitting the first identifier indicating whether or not to be included in the packet instead of the attribute information received by the receiving means.
The data transfer apparatus according to the present invention includes a holding unit that holds a plurality of packet attribute information in association with the first identifier, a receiving unit that receives a transfer request including the first identifier, and a holding unit that holds the packet. Transmission means for transmitting the attribute information corresponding to the first identifier received by the receiving means included in the packet instead of the identifier received by the receiving means.

直前の転送との差分が大きかったとしても、2つ前や3つ前の転送との差分が小さい場合に、パケットを圧縮することができ、転送効率を上げることができる。   Even if the difference from the previous transfer is large, the packet can be compressed and the transfer efficiency can be improved when the difference from the previous transfer or the previous transfer is small.

システムの構成を示す。The system configuration is shown. 本発明の一実施形態におけるバスブリッジの構成を示す。The structure of the bus bridge in one Embodiment of this invention is shown. パケットのフォーマットを示す。Indicates the format of the packet. 本発明の一実施形態におけるパケット識別子を示す。3 shows a packet identifier in one embodiment of the present invention. シリアルバスのフォーマットを示す。Indicates the serial bus format. 従来例及び本発明の第一実施形態におけるタイミングチャートを示す。The timing chart in 1st embodiment of a prior art example and this invention is shown. チップ間通信システムの構成を示す概略図である。It is the schematic which shows the structure of the communication system between chips. AXIバスプロトコルを示す図である。It is a figure which shows an AXI bus protocol. 履歴保持部が保持するテーブルを示す。The table which a log | history holding part hold | maintains is shown.

<実施形態1>
以下、図面を参照しながら本発明の実施形態1について詳細に説明する。
<Embodiment 1>
Hereinafter, Embodiment 1 of the present invention will be described in detail with reference to the drawings.

図7は、本発明の実施形態1のデータ転送装置を備えるチップ間通信システムの構成例を示す。CPU901、ROM902、RAM903は第1バス909に接続され、PCI906、USB907、IDE908は第2バス910に接続されている。そして第1バス909と第2バス910はブリッジ904とブリッジ905を介して接続されている。この構成は汎用のコンピュータにおける2チップセットの構成で代表的な構成であり、ブリッジ904を備えるチップとブリッジ905を備えるチップとを備える。   FIG. 7 shows a configuration example of an inter-chip communication system including the data transfer apparatus according to the first embodiment of the present invention. The CPU 901, ROM 902, and RAM 903 are connected to the first bus 909, and the PCI 906, USB 907, and IDE 908 are connected to the second bus 910. The first bus 909 and the second bus 910 are connected via a bridge 904 and a bridge 905. This configuration is a typical configuration of a two-chip set in a general-purpose computer, and includes a chip including a bridge 904 and a chip including a bridge 905.

CPU901はROM902のプログラムをRAM903に展開し、RAMからプログラムを読み込んで実行する。第2バスに接続されているPCI906、USB907、IDE908は各種周辺機器(不図示)との接続を制御する制御部である。   The CPU 901 expands the program in the ROM 902 in the RAM 903, reads the program from the RAM, and executes it. The PCI 906, USB 907, and IDE 908 connected to the second bus are control units that control connection with various peripheral devices (not shown).

ブリッジ904はCPU又はDMAC(不図示)によって第1バス909のプロトコルに従って送信されるデータ転送要求(リードリクエスト、ライトリクエスト等)を、チップ間接続によってブリッジ905へ転送する。なお、ライトリクエストの際はRAM903のデータや不図示のレジスタの値などを包含している。ブリッジ905はブリッジ904から取得したデータを第2バス910のプロトコルに従って、各種周辺回路に転送する。また、データ転送要求は転送対象のデータの転送に用いるデータ伝達方式の種類(バースト長、排他属性、セキュリティ情報、キャッシュ利用の有無)を示す属性情報を含む。例えば、CPU又はDMAC(不図示)からPCI906、USB907、IDE908へのリードアクセスで読み出すデータ(リスポンス時)やライトアクセスで書込むデータをこの属性情報の示すデータ転送の種類で転送する。   The bridge 904 transfers a data transfer request (read request, write request, etc.) transmitted according to the protocol of the first bus 909 by the CPU or DMAC (not shown) to the bridge 905 by inter-chip connection. Note that the write request includes data in the RAM 903, a register value (not shown), and the like. The bridge 905 transfers the data acquired from the bridge 904 to various peripheral circuits according to the protocol of the second bus 910. The data transfer request includes attribute information indicating the type of data transmission method (burst length, exclusive attribute, security information, presence / absence of cache use) used for transferring the data to be transferred. For example, data to be read by read access to PCI 906, USB 907, and IDE 908 from CPU or DMAC (not shown) and data to be written by write access are transferred in the data transfer type indicated by this attribute information.

ここで、リクエストに対するリスポンス(リードデータ、リクエスト完了通知等)は、リクエストの送り先からリクエスト送信元へ伝達される。その場合はブリッジ905とブリッジ904を通過し、リクエストの場合と逆のプロトコル変換をなされるので説明は省略する。   Here, the response to the request (read data, request completion notification, etc.) is transmitted from the request transmission destination to the request transmission source. In that case, since the protocol conversion is performed in reverse to the case of the request through the bridge 905 and the bridge 904, the description is omitted.

なお、実施形態1のデータ転送装置を備えるチップ間通信システムの構成は図7の構成に限らず、集積回路から送受するパケットについて広く適用できる。   The configuration of the inter-chip communication system including the data transfer apparatus according to the first embodiment is not limited to the configuration of FIG.

図1はASIC_A100とASIC_B200がシリアルバス300で接続されているシステムの構成を示す。(ASICはApplication Specific Integrated Circuitの略称である。)シリアルバス300上では、パケットによるデータ転送が行われる。ASIC_A100は第1バスマスタA101、第1バスマスタB102、第1ブリッジ103、DRAMコントローラA104を有しており、各モジュールは、第1バス105によって接続されている。第1バス105は、アドレスやデータ等がそれぞれ専用線で接続されているパラレルバスである。   FIG. 1 shows a configuration of a system in which ASIC_A 100 and ASIC_B 200 are connected by a serial bus 300. (ASIC is an abbreviation for Application Specific Integrated Circuit.) On serial bus 300, data transfer is performed using packets. The ASIC_A 100 includes a first bus master A 101, a first bus master B 102, a first bridge 103, and a DRAM controller A 104, and each module is connected by a first bus 105. The first bus 105 is a parallel bus in which addresses, data, and the like are connected by dedicated lines.

第1バスマスタA101及び第1バスマスタB102は第1バス105を介して、第1ブリッジ103とDRAMコントローラA104との間でデータ転送を行う。DRAMコントローラA104はDRAM I/F A107を介してDRAM_A106との間でデータ転送を行う。第1ブリッジ103は第1バス105からの転送をシリアルバス300の転送に変換して、接続先のASIC_B200内の第2ブリッジ203へ転送を行う。一方、ASIC_B200は第2バスマスタA201、第2バスマスタB202、第2ブリッジ203、DRAMコントローラB204を有しており、各モジュールは、第2バス205によって接続されている。第2バス205は、アドレスやデータ等がそれぞれ専用線で接続されているパラレルバスである。   The first bus master A 101 and the first bus master B 102 transfer data between the first bridge 103 and the DRAM controller A 104 via the first bus 105. The DRAM controller A104 performs data transfer with the DRAM_A106 via the DRAM I / F A107. The first bridge 103 converts the transfer from the first bus 105 to the transfer of the serial bus 300 and transfers the transfer to the second bridge 203 in the connection destination ASIC_B 200. On the other hand, the ASIC_B 200 includes a second bus master A 201, a second bus master B 202, a second bridge 203, and a DRAM controller B 204, and each module is connected by a second bus 205. The second bus 205 is a parallel bus in which addresses, data, and the like are connected by dedicated lines.

第2ブリッジ203はシリアルバス300からの転送を第2バスの転送に変換して、第2バスを介してDRAMコントローラB204に転送する。第2バスマスタA201及び第2バスマスタB202は第2バス205を介して、DRAMコントローラB204との間でデータ転送を行う。DRAMコントローラB204はDRAM I/F B207を介してDRAM_B206との間でデータ転送を行う。なお、第1バスマスタA・Bや第2バスマスタA・Bは図7に示すCPU901や、各種周辺機器との接続を制御するPCI906、USB907、IDE908、また不図示のDMACなどバスマスタとしてリクエストを出力する構成であればよい。   The second bridge 203 converts the transfer from the serial bus 300 to the transfer of the second bus, and transfers it to the DRAM controller B 204 via the second bus. The second bus master A 201 and the second bus master B 202 perform data transfer with the DRAM controller B 204 via the second bus 205. The DRAM controller B204 performs data transfer with the DRAM_B206 via the DRAM I / F B207. The first bus masters A and B and the second bus masters A and B output requests as bus masters such as the CPU 901 shown in FIG. 7 and PCI 906, USB 907, IDE 908 for controlling connection with various peripheral devices, and DMAC (not shown). Any configuration may be used.

図2は本実施形態の転送方式を実現するための第1ブリッジ103及び第2ブリッジ203の構成図である。以下にブリッジのそれぞれの処理について説明する。   FIG. 2 is a configuration diagram of the first bridge 103 and the second bridge 203 for realizing the transfer method of the present embodiment. Each process of the bridge will be described below.

〔リクエスト送信処理〕
まず、第1ブリッジ103によるデータ転送要求(ライトリクエスト、リードリクエスト等、以降単にリクエストと称す)の送信処理について説明する。第1バスリクエスト受信部1030は第1バス105を介して、第1バスマスタA101や第1バスマスタB102からのリクエストを受信する。リクエストは、転送先のアドレス(Address)、Write転送かRead転送かを示すフラグ、書き込みデータ(Wdata)、ストローブ(Wstrb)及び転送属性情報(ReqAtrb0/1)を有する。
[Request transmission processing]
First, transmission processing of a data transfer request (write request, read request, etc., simply referred to as a request hereinafter) by the first bridge 103 will be described. The first bus request receiving unit 1030 receives requests from the first bus master A 101 and the first bus master B 102 via the first bus 105. The request includes a transfer destination address (Address), a flag indicating whether Write transfer or Read transfer, write data (Wdata), strobe (Wstrb), and transfer attribute information (ReqAtrb0 / 1).

転送属性情報(ReqAtrb0/1)は、転送長や転送の優先度等を示す情報を含む。リクエスト送信履歴保持部1036には、過去に転送した転送属性情報(ReqAtrb0/1)が複数保持される。リクエスト送信履歴保持部2036に保持される情報の例を図9に示す。リクエストパケット変換部1031は、受信したリクエストを1つ以上のパケットに変換する。   The transfer attribute information (ReqAtrb0 / 1) includes information indicating the transfer length, transfer priority, and the like. The request transmission history holding unit 1036 holds a plurality of transfer attribute information (ReqAtrb0 / 1) transferred in the past. An example of information held in the request transmission history holding unit 2036 is shown in FIG. The request packet conversion unit 1031 converts the received request into one or more packets.

ここで、リクエストパケット変換部1031が変換したパケットを図3(a)及び図3(b)に示す。パケットはヘッダー及びデータによって構成される。ヘッダー及びデータ共に複数の所定長(32Bit)のキャラクタによって構成される。ヘッダーは、パケットの種類を示す識別子(Type)や転送属性情報(ReqAtrb0/1)や転送先のアドレス(Address)を有する。また、データは書き込みデータ(Wdata)やストローブ(Wstrb)によって構成され、Write転送時に生成される。   Here, the packet converted by the request packet conversion unit 1031 is shown in FIGS. A packet is composed of a header and data. Both the header and the data are composed of a plurality of characters having a predetermined length (32 bits). The header includes an identifier (Type) indicating the type of packet, transfer attribute information (ReqAtrb0 / 1), and a transfer destination address (Address). The data is composed of write data (Wdata) and strobe (Wstrb), and is generated at the time of Write transfer.

以下、リクエストパケット変換部1031におけるパケット変換処理について詳細に説明する。リクエストパケット変換部1031は、第1バスからのリクエストをパケットに変換する際に、リクエスト送信履歴保持部1036に保持されている、過去の転送属性情報(ReqAtrb0/1)を参照し、一致するものがあるか比較を行う。そして、リクエストパケット変換部1031は、比較結果に応じたパケットに変換する。   Hereinafter, packet conversion processing in the request packet conversion unit 1031 will be described in detail. The request packet conversion unit 1031 refers to the past transfer attribute information (ReqAtrb0 / 1) held in the request transmission history holding unit 1036 when converting a request from the first bus into a packet, and matches Make a comparison. Then, the request packet conversion unit 1031 converts the packet into a packet according to the comparison result.

比較結果が一致しなかった場合は、図3(a)に示すように転送属性情報(ReqAtrb0/1)がパケットに付加される。この時パケットに付加する識別子は転送属性情報(ReqAtrb0/1)が付加されていることを示す識別子となり、Read転送であれば“00000”、Write転送であれば“01000”となる。また、リクエスト送信履歴保持部1036に転送属性情報(ReqAtrb0/1)を保持する。ただし、リクエスト送信履歴保持部1036が転送属性情報(ReqAtrb0/1)を所定数保持している状態(例えば、保持可能な最大数保持している)であるならば、保持されている最も古い転送属性情報(ReqAtrb0/1)を削除する。そして、代わりにこれから転送を行う転送属性情報(ReqAtrb0/1)を保持する。   When the comparison results do not match, the transfer attribute information (ReqAtrb0 / 1) is added to the packet as shown in FIG. At this time, the identifier added to the packet is an identifier indicating that the transfer attribute information (ReqAtrb0 / 1) is added, and is “00000” for Read transfer and “01000” for Write transfer. Further, the transfer attribute information (ReqAtrb0 / 1) is held in the request transmission history holding unit 1036. However, if the request transmission history holding unit 1036 holds a predetermined number of transfer attribute information (ReqAtrb0 / 1) (for example, holds the maximum number that can be held), the oldest transfer held. Attribute information (ReqAtrb0 / 1) is deleted. Instead, transfer attribute information (ReqAtrb0 / 1) to be transferred is held.

一方で、比較結果が一致した場合は、図3(b)に示すように転送属性情報(ReqAtrb0/1)をパケットに付加しない。この時パケットに付加する識別子は転送属性情報(ReqAtrb0/1)がリクエスト送信履歴保持部1036に保持されているどの転送属性情報(ReqAtrb0/1)と一致するかを示す識別子となる。   On the other hand, when the comparison results match, the transfer attribute information (ReqAtrb0 / 1) is not added to the packet as shown in FIG. At this time, the identifier added to the packet is an identifier indicating which transfer attribute information (ReqAtrb0 / 1) held in the request transmission history holding unit 1036 matches the transfer attribute information (ReqAtrb0 / 1).

図4にパケット変換処理で付加する識別子の詳細を示す。本実施形態では、リクエスト送信履歴保持部1036は図9に示すように4個まで過去に転送したパケットの転送属性情報を記憶するものとする。識別子の最上位ビットは過去の転送情報と一致するか否かを示す識別子(第2識別子)であり、0であれば一致しない事を示し、1であれば一致する事を示す。識別氏の上位から2番目のビットはRead転送かWrite転送かを示す識別氏であり、0であればRead転送を1であればWrite転送を示す。識別氏の上位から3番目のビットはRequestかResponseかを示す識別氏であり、0であればRequestを1であればResponseを示す。識別子の下位2ビット(第1識別子)は過去の転送情報と一致する場合に、どの組合せと一致するかを示す。例えば下位2ビットが“00”であれば組合せ1と一致し、下位2ビットが“01”であれば組合せ2と一致する。例えばRead転送時に過去の転送属性情報の組合せ3と転送属性情報が一致しているならば、今回転送するパケットの識別子は“10010”となる。なお、図9に示す転送属性情報はAXI(Advanced eXtensible Interface)に対応しており、その詳細は後述する。   FIG. 4 shows details of the identifier added in the packet conversion process. In the present embodiment, the request transmission history holding unit 1036 stores transfer attribute information of up to four packets transferred in the past as shown in FIG. The most significant bit of the identifier is an identifier (second identifier) indicating whether or not it matches the past transfer information. If it is 0, it indicates that it does not match, and if it is 1, it indicates that it matches. The second bit from the top of the identification is an identification indicating whether it is Read transfer or Write transfer. If it is 0, it indicates Read transfer, and if it is 1, it indicates Write transfer. The third bit from the top of the identification is the identification indicating whether it is a request or a response. If it is 0, the request indicates a response. The lower 2 bits (first identifier) of the identifier indicate which combination is matched when matched with past transfer information. For example, if the lower 2 bits are “00”, it matches the combination 1, and if the lower 2 bits are “01”, it matches the combination 2. For example, if the combination 3 of transfer attribute information in the past and the transfer attribute information match at the time of Read transfer, the identifier of the packet to be transferred this time is “10010”. Note that the transfer attribute information shown in FIG. 9 corresponds to AXI (Advanced extensible Interface), details of which will be described later.

本実施形態のリクエストパケット変換部1031によって生成されるパケットは、直前の転送だけでなく、過去数個前の転送と転送属性情報(ReqAtrb0/1)が一致すれば、一致しなかった時のパケットに比べて1キャラクタ少ないパケットとなる。リクエストパケット送信部1032は、パケットに変換されたリクエストをパラレルーシリアル変換し、シリアルバス300へ送信する。   The packet generated by the request packet conversion unit 1031 according to the present embodiment is not only the previous transfer but also the packet at the time when the previous transfer and the transfer attribute information (ReqAtrb0 / 1) match. The packet is one character fewer than The request packet transmission unit 1032 performs parallel-serial conversion on the request converted into the packet and transmits the request to the serial bus 300.

パラレルーシリアル変換の例を図5に示す。図5において“N”は非転送期間(NOP)を示し、“S”はスタートビットを示す。また、数字はキャラクタ内のBit位置を示す。パラレルーシリアル変換は、32Bit単位のキャラクタごと行われる。32Bit単位のキャラクタにキャラクタの先頭を示す2Bitのスタートビットが付加され、まず。2Bitのスタートビットが送信される。その後32Bit単位のキャラクタの最上位Bitから順に1Bitずつ送信が行われる。パラレルーシリアル変換されたキャラクタはクロックとともにシリアルバス300を介して、受信側のASIC_B200に送信される。   An example of parallel-serial conversion is shown in FIG. In FIG. 5, “N” indicates a non-transfer period (NOP), and “S” indicates a start bit. The number indicates the bit position in the character. Parallel-serial conversion is performed for each character in units of 32 bits. First, a 2-bit start bit indicating the head of the character is added to the 32-bit unit character. A 2-bit start bit is transmitted. Thereafter, transmission is performed 1 bit at a time in order from the most significant bit of the 32-bit character. The parallel-serial converted character is transmitted to the receiving side ASIC_B 200 through the serial bus 300 together with the clock.

〔リクエスト受信処理〕
続いて、第2ブリッジ203によるリクエストの受信処理について説明する。リクエストパケット受信部2030はシリアルバス300を介してASIC_A100から送信された、キャラクタを受信し、シリアルーパラレル変換する。シリアルーパラレル変換は、32Bit単位のキャラクタごと行われる。まず、2Bitのスタートビットの認識を行う。2Bitのスタートビットが認識されたならば、後続の32Bitのシリアルデータを受信しパラレルデータに変換し32Bitのキャラクタを生成する。
[Request reception processing]
Next, a request reception process by the second bridge 203 will be described. The request packet receiving unit 2030 receives the character transmitted from the ASIC_A 100 via the serial bus 300 and performs serial-parallel conversion. Serial-parallel conversion is performed for each character in units of 32 bits. First, a 2-bit start bit is recognized. If the 2-bit start bit is recognized, the subsequent 32-bit serial data is received and converted into parallel data to generate a 32-bit character.

リクエスト受信履歴保持部2036には、過去に転送した転送属性情報(ReqAtrb)が複数保持される。リクエスト受信履歴保持部2036に保持される情報の例を図10に示す。リクエストパケット逆変換部2031は、転送の種類を示す識別子(Type)を含むパケットを第2バスへのリクエスト形式へ変換する処理を行う。識別子の詳細な説明はリクエスト送信処理の説明と同じであるためここでは割愛する。パケットの種類を示す識別子が、転送属性情報(ReqAtrb0/1)が付加されていることを示していれば、受信したパケットから転送属性情報(ReqAtrb0/1)を抽出し、第2バスへのリクエスト形式に変換する。また、抽出した転送属性情報(ReqAtrb0/1)をリクエスト受信履歴保持部2036に保持する。ただし、リクエスト受信履歴保持部2036に保持されている転送属性情報(ReqAtrb0/1)の数が、保持可能な最大数であるならば、保持されているもっとも古い転送属性情報(ReqAtrb)を削除する。そして、代わりに受信した転送属性情報(ReqAtrb0/1)を保持する。   The request reception history holding unit 2036 holds a plurality of transfer attribute information (ReqAtrb) transferred in the past. An example of information held in the request reception history holding unit 2036 is shown in FIG. The request packet reverse conversion unit 2031 performs processing for converting a packet including an identifier (Type) indicating the type of transfer into a request format to the second bus. Since the detailed description of the identifier is the same as the description of the request transmission process, it is omitted here. If the identifier indicating the packet type indicates that the transfer attribute information (ReqAtrb0 / 1) is added, the transfer attribute information (ReqAtrb0 / 1) is extracted from the received packet, and a request to the second bus is made. Convert to format. Further, the extracted transfer attribute information (ReqAtrb0 / 1) is held in the request reception history holding unit 2036. However, if the number of transfer attribute information (ReqAtrb0 / 1) held in the request reception history holding unit 2036 is the maximum number that can be held, the oldest transfer attribute information (ReqAtrb) held is deleted. . Instead, the received transfer attribute information (ReqAtrb0 / 1) is held.

一方、パケットの種類を示す識別子が、転送属性情報(ReqAtrb0/1)が付加されていないことを示していれば、リクエストパケット逆変換部2031はリクエスト受信履歴保持部2036に保持されている転送属性情報(ReqAtrb0/1)を参照する。例えば、識別子が“10010”であれば、組合せ3の転送属性情報が参照される。そして、識別子に対応する転送属性情報(ReqAtrb0/1)を用いて、第2バスへのリクエスト形式に変換する。第2バスリクエスト送信部2032は、第2バスへのリクエスト形式に変換されたリクエストをDRAMコントローラB204へ第2バス205を介して送信する。   On the other hand, if the identifier indicating the packet type indicates that the transfer attribute information (ReqAtrb0 / 1) is not added, the request packet reverse conversion unit 2031 transfers the transfer attribute held in the request reception history holding unit 2036. Information (ReqAtrb0 / 1) is referred to. For example, if the identifier is “10010”, the transfer attribute information of the combination 3 is referred to. Then, using the transfer attribute information (ReqAtrb0 / 1) corresponding to the identifier, it is converted into a request format to the second bus. The second bus request transmission unit 2032 transmits the request converted into the request format for the second bus to the DRAM controller B 204 via the second bus 205.

〔レスポンス送信処理〕
続いて、第2ブリッジ203によるレスポンスの送信処理について説明する。第2バスレスポンス受信部2033は第2バス205を介して、DRAMコントローラB204からのレスポンスを受信する。レスポンスは、エラーか否かを示すステータス情報(RespSt)、読み出しデータ(Rdata)、及び転送長や転送のプライオリティーを示す転送属性情報(RespAtrb0/1)によって構成される。レスポンス送信履歴保持部2037には、少なくとも2個以上の過去の転送の転送属性情報(RespAtrb0/1)が保持される。レスポンス送信履歴保持部2037に保持される情報の例を図9に示す。レスポンスパケット変換部2034は、受信したレスポンスをパケットに変換する。変換されるパケットの例を図3(c)及び図3(d)に示す。パケットはヘッダー及びデータによって構成される。ヘッダー及びデータ共に複数の32Bit単位のキャラクタによって構成される。ヘッダーは、転送の種類を示す識別子(Type)やステータス(RespSt)や転送属性情報(RespAtrb0/1)によって構成される。図4に識別子の例を示す。識別子の詳細な説明はリクエスト送信処理の説明と同じであるためここでは割愛する。また、データは読み出しデータ(Rdata)によって構成され、Read転送時にのみ生成される。以下、レスポンスパケット変換部2034におけるパケット変換処理について詳細に説明する。
[Response transmission processing]
Next, a response transmission process by the second bridge 203 will be described. The second bus response receiving unit 2033 receives a response from the DRAM controller B 204 via the second bus 205. The response includes status information (RespSt) indicating whether or not an error, read data (Rdata), and transfer attribute information (RespAtrb0 / 1) indicating the transfer length and transfer priority. The response transmission history holding unit 2037 holds transfer attribute information (RespAtrb0 / 1) of at least two past transfers. An example of information held in the response transmission history holding unit 2037 is shown in FIG. The response packet conversion unit 2034 converts the received response into a packet. Examples of packets to be converted are shown in FIGS. 3 (c) and 3 (d). A packet is composed of a header and data. Both the header and data are composed of a plurality of 32-bit unit characters. The header includes an identifier (Type) indicating the type of transfer, a status (RespSt), and transfer attribute information (RespAtrb0 / 1). FIG. 4 shows examples of identifiers. Since the detailed description of the identifier is the same as the description of the request transmission process, it is omitted here. The data is constituted by read data (Rdata) and is generated only at the time of Read transfer. Hereinafter, packet conversion processing in the response packet conversion unit 2034 will be described in detail.

レスポンスパケット変換部2034は、第2バスからのレスポンスをパケットに変換する際に、レスポンス送信履歴保持部2037に保持されている、過去の転送属性情報(RespAtrb0/1)を参照し、一致するものがあるか比較を行う。比較結果に応じて、異なるパケットへの変換が行われる。   The response packet conversion unit 2034 refers to the past transfer attribute information (RespAtrb0 / 1) held in the response transmission history holding unit 2037 when converting the response from the second bus into a packet, and matches Make a comparison. Depending on the comparison result, conversion into a different packet is performed.

比較結果が一致しなかった場合は、図3(c)に示すように転送属性情報(RespAtrb0/1)がパケットに付加される。この時の転送の識別子は転送属性情報(RespAtrb0/1)が付加されていることを示す識別子となり、Read転送であれば“00100”、Write転送であれば“01100”となる。また、レスポンス送信履歴保持部2037に転送属性情報(RespAtrb)を保持する。ただし、レスポンス送信履歴保持部2037に保持されている転送属性情報(RespAtrb0/1)の数が、保持可能な最大数であるならば、保持されているもっとも古い転送属性情報(RespAtrb0/1)を削除する。そして、代わりにこれから転送を行う転送属性情報(RespAtrb0/1)を保持する。   When the comparison results do not match, the transfer attribute information (RespAtrb0 / 1) is added to the packet as shown in FIG. The transfer identifier at this time is an identifier indicating that transfer attribute information (RespAtrb0 / 1) is added, and is “00100” for Read transfer and “01100” for Write transfer. Also, the transfer attribute information (RespAtrb) is held in the response transmission history holding unit 2037. However, if the number of transfer attribute information (RespAtrb0 / 1) held in the response transmission history holding unit 2037 is the maximum number that can be held, the oldest transfer attribute information (RespAtrb0 / 1) held is changed. delete. Instead, transfer attribute information (RespAtrb0 / 1) to be transferred is held.

一方、比較結果が一致した場合は、レスポンスパケット変換部2034は図3(d)に示すように転送属性情報(RespAtrb0/1)をパケットに付加しない。この時の転送の識別子は転送属性情報(RespAtrb0/1)がレスポンス送信履歴保持部2037に保持されているどの転送属性情報(RespAtrb0/1)と一致するかを示す識別子となる。   On the other hand, when the comparison results match, the response packet conversion unit 2034 does not add the transfer attribute information (RespAtrb0 / 1) to the packet as shown in FIG. The transfer identifier at this time is an identifier indicating which transfer attribute information (RespAtrb0 / 1) held in the response transmission history holding unit 2037 matches the transfer attribute information (RespAtrb0 / 1).

図4に識別子の例を示す。識別子の詳細な説明はリクエスト送信処理の説明と同じであるためここでは割愛する。本実施形態のレスポンスパケット変換部2034によって生成されるパケットは、直前の転送だけでなく、過去数個前の転送と転送属性情報(RespAtrb0/1)が一致すれば、一致しなかった時のパケットに比べて1キャラクタ少ないパケットとなる。   FIG. 4 shows examples of identifiers. Since the detailed description of the identifier is the same as the description of the request transmission process, it is omitted here. The packet generated by the response packet conversion unit 2034 of the present embodiment is not only the previous transfer, but if the previous several transfers and the transfer attribute information (RespAtrb0 / 1) match, the packet when it does not match The packet is one character fewer than

レスポンスパケット送信部2035は、パケットに変換されたレスポンスをパラレルーシリアル変換し、シリアルバス300へ送信する。パラレルーシリアル変換の動作は、リクエストパケット送信部1032の動作と同じであるため、ここでは説明を省略する。パラレルーシリアル変換されたキャラクタはクロックとともにシリアルバス300を介して、受信側のASIC_A100に送信される。   The response packet transmission unit 2035 performs parallel-serial conversion on the response converted into the packet, and transmits the response to the serial bus 300. The parallel-serial conversion operation is the same as the operation of the request packet transmission unit 1032, and thus the description thereof is omitted here. The parallel-serial converted character is transmitted to the receiving side ASIC_A 100 via the serial bus 300 together with the clock.

〔レスポンス受信処理〕
続いて、第1ブリッジ103によるレスポンスの受信処理について説明する。レスポンスパケット受信部1033はシリアルバス300を介してASIC_B200から送信された、キャラクタを受信し、シリアルーパラレル変換する。シリアルーパラレル変換の動作は、リクエストパケット受信部2030の動作と同じであるため、ここでは説明を省略する。
[Response reception processing]
Next, a response reception process by the first bridge 103 will be described. The response packet receiving unit 1033 receives the character transmitted from the ASIC_B 200 via the serial bus 300, and performs serial-parallel conversion. Since the operation of serial-parallel conversion is the same as that of the request packet receiving unit 2030, description thereof is omitted here.

レスポンス受信履歴保持部1037には、少なくとも2個以上の過去の転送に転送属性情報(RespAtrb0/1)が保持される。レスポンス受信履歴保持部1037に保持される情報の例を図10に示す。レスポンスパケット逆変換部1034は、転送の種類を示す識別子(Type)によって行われるパケットから第1バスへのレスポンス形式への変換を行う。識別子の詳細な説明はリクエスト送信処理の説明と同じであるためここでは割愛する。パケットの種類を示す識別子が、転送属性情報(RespAtrb0/1)が付加されているパケットを示しているならば、受信したパケットから転送属性情報(RespAtrb0/1)を抽出し、第1バスへのレスポンス形式に変換する。また、抽出した転送属性情報(RespAtrb0/1)をレスポンス受信履歴保持部1037に保持する。ただし、レスポンス受信履歴保持部1037に保持されている転送属性情報(RespAtrb0/1)の数が、保持可能な最大数であるならば、保持されているもっとも古い転送属性情報(RespAtrb)を削除する。そして、代わりに受信した転送属性情報(RespAtrb0/1)を保持する。一方、パケットの種類を示す識別子が、転送属性情報(RespAtrb0/1)が付加されていないことを示す識別子であるならば、レスポンス受信履歴保持部1037に保持されている転送属性情報(RespAtrb0/1)を参照する。例えば、識別子が“10110”であれば、組合せ3の転送属性情報が参照される。そして、参照された転送属性情報(RespAtrb0/1)を用いて、第1バスへのレスポンス形式に変換する。第1バスレスポンス送信部1035は、第1バスへのレスポンス形式に変換されたレスポンスを対応するリクエストを発行した第1バスマスタへ第1バス105を介して送信する。   The response reception history holding unit 1037 holds transfer attribute information (RespAtrb0 / 1) for at least two past transfers. An example of information held in the response reception history holding unit 1037 is shown in FIG. The response packet inverse conversion unit 1034 performs conversion from a packet performed by an identifier (Type) indicating the type of transfer into a response format to the first bus. Since the detailed description of the identifier is the same as the description of the request transmission process, it is omitted here. If the identifier indicating the packet type indicates a packet to which transfer attribute information (RespAtrb0 / 1) is added, the transfer attribute information (RespAtrb0 / 1) is extracted from the received packet, and is sent to the first bus. Convert to response format. Further, the extracted transfer attribute information (RespAtrb0 / 1) is held in the response reception history holding unit 1037. However, if the number of transfer attribute information (RespAtrb0 / 1) held in the response reception history holding unit 1037 is the maximum holdable number, the oldest transfer attribute information (RespAtrb) held is deleted. . Instead, the received transfer attribute information (RespAtrb0 / 1) is held. On the other hand, if the identifier indicating the packet type is an identifier indicating that the transfer attribute information (RespAtrb0 / 1) is not added, the transfer attribute information (RespAtrb0 / 1) held in the response reception history holding unit 1037. ). For example, if the identifier is “10110”, the transfer attribute information of the combination 3 is referred to. Then, using the referenced transfer attribute information (RespAtrb0 / 1), it is converted into a response format to the first bus. The first bus response transmission unit 1035 transmits the response converted into the response format to the first bus via the first bus 105 to the first bus master that issued the corresponding request.

〔AXI〕
図8は集積回路内で用いられるバスのプロトコルであるAXI(Advanced eXtensible Interface)バスの制御信号および、アドレス/データ/属性情報を示す。
[AXI]
FIG. 8 shows control signals and address / data / attribute information of an AXI (Advanced Extensible Interface) bus which is a bus protocol used in the integrated circuit.

AXIバスプロトコルは、5つのチャネルと呼ばれる転送路を有する。各チャネルは、リードのアドレスを運ぶリードアドレスチャネル、ライトのアドレスを運ぶライトアドレスチャネル、リードの応答・データを運ぶリードデータチャネル、ライトのデータを運ぶライトデータチャネル、ライトのレスポンスを運ぶライト応答チャネルである。それぞれのチャネルは転送のやり取り・タイミングを司るValid,Ready信号によってハンドシェークを行い、一連の転送の手続きを行う。また、それぞれのチャネルには、データ転送の基本情報となるアドレスやデータ以外に、転送の属性情報として、転送タイプを示すxBURST,転送長を示すxLEN、アトミック転送を示すxLOC、キャッシュの制御情報を示すxCACHE、転送のセキュリティ情報を示すxPROT、転送のデータ幅のサイズxSIZE、転送の優先度を示すxQOS、転送領域区間を示すxBURST、ユーザの任意の情報を運ぶxUSER信号が規定されている。   The AXI bus protocol has a transfer path called five channels. Each channel has a read address channel carrying a read address, a write address channel carrying a write address, a read data channel carrying a read response / data, a write data channel carrying a write data, and a write response channel carrying a write response. It is. Each channel performs a handshake by a Valid / Ready signal that controls transfer exchange / timing, and performs a series of transfer procedures. In addition to the address and data, which are basic information for data transfer, each channel includes transfer attribute information xBURST indicating transfer type, xLEN indicating transfer length, xLOC indicating atomic transfer, and cache control information. XCACHE indicating transfer security information, xPROT indicating transfer data width, xSIZE indicating transfer priority, xQOS indicating transfer priority, xBURST indicating a transfer area section, and xUSER signal carrying arbitrary user information are defined.

〔履歴保持部〕
履歴保持部(1036、2037、2036、1038)は、既に保持している属性情報と同じものは保持せず、既に保持しているものと異なる属性情報が受信された場合(パケット変換部からすると、バスから受信した属性情報を識別子に置き換えなかった場合に相当する)にそれを保持する。追加保持する際には、保持されているもっとも古いものを追加するものに書き換える。既に履歴として保持しているかどうかは送信側で判断され、受信側へはパケットの識別子で、保持されているかどうかまた、保持されているとしたらどの情報と合致するかが判断される。
[History holding section]
The history holding unit (1036, 2037, 2036, 1038) does not hold the same attribute information as already held, and when attribute information different from the already held attribute information is received (from the packet conversion unit) This corresponds to the case where the attribute information received from the bus is not replaced with the identifier). When adding and holding, the oldest held one is rewritten to add. Whether it is already held as a history is determined on the transmission side, and on the receiving side, it is determined by the identifier of the packet, whether it is held, and what information matches if it is held.

図9は各送信履歴保持部(1036、2037)、受信履歴保持部(2036、1038)が保持する履歴テーブルを示す。履歴テーブルは複数の属性情報の組合せを保持している。図示していないが、其々のエントリに格納されている組合せについて、直近で何個前に転送パケットであるかが分かる情報を対応付けて記憶しておくことが好ましい。   FIG. 9 shows a history table held by each transmission history holding unit (1036, 2037) and reception history holding unit (2036, 1038). The history table holds a combination of a plurality of attribute information. Although not shown, it is preferable to store the information stored in each entry in association with information that indicates the most recent transfer packet.

第1バス(AXI)、第2バス(AXI)の属性情報は、排他制御属性(LOCK)、キャッシュの属性(CACHE)、セキュリティ属性(PORT)、データサイズ(SIZE)、リクエストタイプ(BURST)、送信元(ID)等を有する。   The attribute information of the first bus (AXI) and the second bus (AXI) includes an exclusive control attribute (LOCK), a cache attribute (CACHE), a security attribute (PORT), a data size (SIZE), a request type (BURST), It has a transmission source (ID) and the like.

排他制御属性(LOCK)は、受信装置側でシステムバスを独占的に使用する手続きを行った上で転送を行うか否かを示す。排他制御属性(LOCK)信号として、バスロックを行う転送を行うかどうかを示す“Lock”ビットと、システム性能の向上を図るための排他転送を行うかどうかを示す“Exclusive”ビットと、について各々1ビットで表現している。   The exclusive control attribute (LOCK) indicates whether or not the transfer is performed after performing a procedure for exclusively using the system bus on the receiving device side. As an exclusive control attribute (LOCK) signal, a “Lock” bit indicating whether or not to perform a bus lock transfer, and an “Exclusive” bit indicating whether or not to perform an exclusive transfer for improving system performance, respectively. It is expressed by 1 bit.

キャッシュ属性(CACHE)は、受信装置がデータの転送先までの経路において転送内容のバッファリングを許可するか否かを示す。キャッシュ属性(CACHE)には4ビット割り当てられ、キャッシュ可能かどうかを示すビット、バッファリングが可能かどうかを示すビット、キャッシュミスした際にWriteThrough やWriteBack などといったキャッシュシステム自身に指示を出すフィールド(2ビット)がある。   The cache attribute (CACHE) indicates whether or not the receiving apparatus permits buffering of transfer contents in the route to the data transfer destination. 4 bits are allocated to the cache attribute (CACHE), a bit indicating whether or not caching is possible, a bit indicating whether or not buffering is possible, and a field (2 that indicates to the cache system itself such as WriteThrough and WriteBack when a cache miss occurs Bit).

セキュリティ属性は、セキュリティレベルの高いスレーブにデータが受信されるように手続きを行った上で転送を行うか否かを示す。   The security attribute indicates whether or not the transfer is performed after performing a procedure so that data is received by a slave having a high security level.

リクエストタイプ(BURST)は転送のタイプを示し、INCR(連続アドレス転送)/FIXED(アドレス固定)/WRAP(キャッシュミスの際のアドレッシング)の3つを2ビットにエンコードして表現している。   The request type (BURST) indicates the type of transfer, and is expressed by encoding three of INCR (continuous address transfer) / FIXED (address fixed) / WRAP (addressing at the time of cache miss) into 2 bits.

データサイズはデータサイズの示す単位でデータ転送を行うことを示す。例えば、物理的なデータ幅が128ビットだとしても、8bit/16bit/../128bitの様に、どのデータ幅分を転送に使用しているかを示す。なお、説明を簡単にするために送信履歴保持部がテーブルを保持している例について説明しているが、同等の情報であればテーブル形式にする必要はない。   The data size indicates that data transfer is performed in the unit indicated by the data size. For example, even if the physical data width is 128 bits, 8 bits / 16 bits /. . This indicates which data width is used for transfer, such as / 128 bits. In order to simplify the description, an example in which the transmission history holding unit holds a table has been described. However, it is not necessary to use a table format if the information is equivalent.

以上のように実施形態1では、第1ブリッジ103はリクエストパケットの生成を行う際に、直前の転送だけでなく過去数個前の転送の転送属性情報(ReqAtrb0/1)を参照する。そして、参照された転送属性情報(ReqAtrb0/1)とこれから転送を行う転送の転送属性情報(RespAtrb0/1)の比較を行う。比較結果が一致したときには、転送属性情報(ReqAtrb0/1)をパケットに付加しないことで、転送に必要なキャラクタ数を削減している。このような構成だと、直前の転送と、転送属性情報(ReqAtrb0/1)が一致していないが、2個前や3個前の転送と転送属性情報(RespAtrb0/1)が一致している場合にも、転送に必要なキャラクタ数を削減し、転送の効率を高めることができる。   As described above, in the first embodiment, when generating a request packet, the first bridge 103 refers to transfer attribute information (ReqAtrb0 / 1) of not only the previous transfer but also the previous several transfers. Then, the referred transfer attribute information (ReqAtrb0 / 1) is compared with the transfer attribute information (RespAtrb0 / 1) of the transfer to be transferred from now on. When the comparison results match, the transfer attribute information (ReqAtrb0 / 1) is not added to the packet, thereby reducing the number of characters required for transfer. With such a configuration, the transfer attribute information (ReqAtrb0 / 1) does not match the previous transfer, but the transfer attribute information (RespAtrb0 / 1) matches the previous or third transfer. Even in this case, it is possible to reduce the number of characters required for transfer and increase the transfer efficiency.

一方、本実施形態の、第2ブリッジ203はレスポンスパケットの生成を行う際に、直前の転送だけでなく過去数個前の転送の転送属性情報(RespAtrb0/1)を参照する。そして、参照された転送属性情報(RespAtrb0/1)とこれから転送を行う転送の転送属性情報(RespAtrb0/1)の比較を行う。比較結果が一致したときには、転送属性情報(RespAtrb0/1)をパケットに付加しないことで、転送に必要なキャラクタ数を削減している。このような構成だと、直前の転送と、転送属性情報(RespAtrb0/1)が一致していないが、2個前や3個前の転送と転送属性情報(RespAtrb0/1)が一致している場合にも、転送に必要なキャラクタ数を削減し、転送の効率を高めることができる。   On the other hand, when generating the response packet, the second bridge 203 of the present embodiment refers to transfer attribute information (RespAtrb0 / 1) of not only the previous transfer but also the previous few transfers. Then, the referred transfer attribute information (RespAtrb0 / 1) is compared with the transfer attribute information (RespAtrb0 / 1) of the transfer to be transferred from now on. When the comparison results match, the transfer attribute information (RespAtrb0 / 1) is not added to the packet, thereby reducing the number of characters required for transfer. With such a configuration, the transfer attribute information (RespAtrb0 / 1) does not match the previous transfer, but the transfer attribute information (RespAtrb0 / 1) matches the previous or third transfer. Even in this case, it is possible to reduce the number of characters required for transfer and increase the transfer efficiency.

図6(a)に従来例におけるリクエストパケット送信に要するサイクル数を、図6(b)に本発明におけるリクエストパケット送信に要するサイクル数を示す。図中の数字は転送に要するサイクル数を示すものとする。図6(a)及び(b)の例では第1バスマスタA101からのリクエスト(図中のA1〜A4)と第1バスマスタB102からのリクエスト(図中のB1〜B4)が交互に第1ブリッジ103に送信される例である。なお、全ての転送は64BitのSingle Write転送とする。この例において、第1バスマスタA101から発行される転送属性情報(ReqAtrb0/1)と第1バスマスタB102から発行される転送属性情報(ReqAtrb0/1)は異なっているものとする。図6(a)の例においては、パケット生成の際にキャラクタの削減が行われず、各マスタからの全のパケットは3キャラクタのヘッダー及び3キャラクタのデータによって構成され、全部で6キャラクタのパケットとなる。よって、各マスタから4つのWrite転送を行うのに、6(キャラクタ数)*4(各マスタあたりの転送数)*2(マスタ数)=48キャラクタ必要になる。各キャラクタの転送には34サイクルかかるため、従来例の転送には48*34=1632サイクル必要になる。本発明によれば、各マスタからの2転送目以降のパケット生成の際に、キャラクタの削減が行われる。そのため、キャラクタの削減が行われないパケットのキャラクタ数が6キャラクタであるのに対して、各マスタからの2転送目以降の転送のキャラクタ数は5キャラクタに削減できる。よって、各マスタから4つのWrite転送を行うのに必要なキャラクタ数は、6(1転送目のキャラクタ数)*2(マスタ数)+5(2転送目以降のキャラクタ数)*3(各マスタからの総転送数―1)*2(マスタ数)=42キャラクタとなる。各キャラクタの転送には34サイクルかかるため、本発明の転送には42*34=1428サイクル必要になる。従来例では、同じ転送に1632サイクル必要になるため、本発明では従来例よりも204サイクル転送に必要なサイクル数を削減できる。   FIG. 6A shows the number of cycles required for request packet transmission in the conventional example, and FIG. 6B shows the number of cycles required for request packet transmission in the present invention. The numbers in the figure indicate the number of cycles required for transfer. In the example of FIGS. 6A and 6B, requests from the first bus master A101 (A1 to A4 in the figure) and requests from the first bus master B102 (B1 to B4 in the figure) are alternately switched to the first bridge 103. It is an example transmitted to. All transfers are assumed to be 64-bit single write transfers. In this example, it is assumed that the transfer attribute information (ReqAtrb0 / 1) issued from the first bus master A101 is different from the transfer attribute information (ReqAtrb0 / 1) issued from the first bus master B102. In the example of FIG. 6 (a), characters are not reduced at the time of packet generation, and all packets from each master are composed of a 3-character header and 3-character data. Become. Therefore, 6 (number of characters) * 4 (number of transfers per master) * 2 (number of masters) = 48 characters are required to perform four write transfers from each master. Since the transfer of each character takes 34 cycles, 48 * 34 = 1632 cycles are required for the transfer of the conventional example. According to the present invention, characters are reduced when generating the second and subsequent packets from each master. Therefore, while the number of characters in a packet that is not subjected to character reduction is 6 characters, the number of characters transferred from the second transfer onward from each master can be reduced to 5 characters. Therefore, the number of characters required to perform four write transfers from each master is 6 (number of characters in the first transfer) * 2 (number of masters) +5 (number of characters after the second transfer) * 3 (from each master) Total number of transfers-1) * 2 (number of masters) = 42 characters. Since the transfer of each character takes 34 cycles, the transfer of the present invention requires 42 * 34 = 1428 cycles. Since 1632 cycles are required for the same transfer in the conventional example, the present invention can reduce the number of cycles required for 204 cycle transfer compared to the conventional example.

なお、本実施形態では、Type内に転送属性情報が一致する過去の転送番号を付与したが、第一キャラクタ内のReserved領域に転送番号を付与することで、過去の転送属性情報の参照数を増やしてもよい。   In the present embodiment, a past transfer number having the same transfer attribute information in Type is assigned. However, by assigning a transfer number to the Reserved area in the first character, the reference number of the past transfer attribute information is obtained. May increase.

<実施形態2>
実施形態1記載のリクエスト送信履歴保持部1036及びリクエスト受信履歴保持部2036は、新しい転送の転送属性情報(ReqAtrb0/1)を優先的に保持していた。しかし、リクエスト送信履歴保持部1036及びリクエスト受信履歴保持部2036には転送を行う際の属性情報の比較の結果、一致回数の多い転送の転送属性情報(ReqAtrb0/1)を優先的に保持するように構成することもできる(一致回数の多い転送属性情報とはパケットに付与した回数の多い転送属性情報に相当し、その場合はパケとに付与した回数の少ない転送属性情報から置き換えることになる)。また、実施形態1記載のレスポンス送信履歴保持部2037及びレスポンス受信履歴保持部1037は、新しい転送の転送属性情報(RespAtrb0/1)を優先的に保持していた。しかし、レスポンス送信履歴保持部2037及びレスポンス受信履歴保持部1037には転送を行う際の属性情報の比較の結果、一致回数の多い転送の転送属性情報(RespAtrb0/1)を優先的に保持するように構成することもできる。以降の説明では実施形態1と同一機能を有する構成には同一符号を付すとともに、機能的に変わらないものについてはその説明を省略する。
<Embodiment 2>
The request transmission history holding unit 1036 and the request reception history holding unit 2036 described in the first embodiment preferentially hold transfer attribute information (ReqAtrb0 / 1) of a new transfer. However, the request transmission history holding unit 1036 and the request reception history holding unit 2036 preferentially hold the transfer attribute information (ReqAtrb0 / 1) of the transfer having a large number of matches as a result of the comparison of the attribute information at the time of transfer. (Transfer attribute information with a large number of matches corresponds to transfer attribute information with a large number of times assigned to a packet, and in this case, it is replaced with transfer attribute information with a small number of times given to a packet.) . Further, the response transmission history holding unit 2037 and the response reception history holding unit 1037 described in the first embodiment preferentially hold transfer attribute information (RespAtrb0 / 1) of a new transfer. However, the response transmission history holding unit 2037 and the response reception history holding unit 1037 preferentially hold the transfer attribute information (RespAtrb0 / 1) of the transfer having a large number of matches as a result of the comparison of the attribute information when performing the transfer. It can also be configured. In the following description, components having the same functions as those in the first embodiment are denoted by the same reference numerals, and descriptions of components that are not functionally changed are omitted.

〔リクエスト送信処理〕
リクエスト送信履歴保持部1036には、実施形態1のリクエスト送信履歴保持部1036に対して、さらに何回の転送と転送属性情報(ReqAtrb0/1)が一致したかを示す識別子が保持される。リクエストパケット変換部1031は、第1バスからのリクエストをパケットに変換する際に、リクエスト送信履歴保持部1036に保持されている、過去の転送属性情報(ReqAtrb0/1)を参照し、一致するものがあるか比較を行う。比較結果に応じて、異なるパケットへの変換が行われる。比較結果が一致しなかった場合は、実施形態1と同様にパケットを生成し、リクエスト送信履歴保持部1036に転送属性情報(ReqAtrb0/1)を保持する。ただし、リクエスト送信履歴保持部1036に保持されている転送属性情報(ReqAtrb0/1)の数が、保持可能な最大数であるならば、リクエスト送信履歴保持部1036に保持されている一致数を示す識別子を参照する。参照の結果最も一致数の少ない転送属性情報(ReqAtrb0/1)を削除する。そして、代わりにこれから転送を行う転送属性情報(ReqAtrb0/1)を保持する。一方、比較結果が一致した場合は、実施形態1と同様にパケットを生成する。さらに、リクエスト送信履歴保持部1036に保持されている一致した転送属性情報(ReqAtrb0/1)の一致数を示す識別子の値を1増加させる。
[Request transmission processing]
The request transmission history holding unit 1036 holds an identifier indicating how many times the transfer and transfer attribute information (ReqAtrb0 / 1) match the request transmission history holding unit 1036 of the first embodiment. The request packet conversion unit 1031 refers to the past transfer attribute information (ReqAtrb0 / 1) held in the request transmission history holding unit 1036 when converting a request from the first bus into a packet, and matches Make a comparison. Depending on the comparison result, conversion into a different packet is performed. If the comparison results do not match, a packet is generated as in the first embodiment, and the transfer attribute information (ReqAtrb0 / 1) is held in the request transmission history holding unit 1036. However, if the number of transfer attribute information (ReqAtrb0 / 1) held in the request transmission history holding unit 1036 is the maximum number that can be held, the number of matches held in the request transmission history holding unit 1036 is indicated. Refers to an identifier. As a result of the reference, the transfer attribute information (ReqAtrb0 / 1) having the smallest number of matches is deleted. Instead, transfer attribute information (ReqAtrb0 / 1) to be transferred is held. On the other hand, if the comparison results match, a packet is generated as in the first embodiment. Further, the value of the identifier indicating the number of matches of the matched transfer attribute information (ReqAtrb0 / 1) held in the request transmission history holding unit 1036 is incremented by one.

〔リクエスト受信処理〕
リクエスト受信履歴保持部2036には、実施形態1のリクエスト受信履歴保持部2036に対して、さらに何回の転送と転送属性情報(ReqAtrb0/1)が一致したかを示す識別子が保持される。リクエストパケット逆変換部2031は、転送の種類を示す識別子(Type)によってパケットから第2バスへのリクエスト形式への変換を行う。パケットの種類を示す識別子が、転送属性情報(ReqAtrb0/1)が付加されているパケットを示しているならば、実施形態1と同様に、第2バスへのリクエスト形式に変換する。また、抽出した転送属性情報(ReqAtrb0/1)をリクエスト受信履歴保持部2036に保持する。ただし、リクエスト受信履歴保持部2036に保持されている転送属性情報(ReqAtrb0/1)の数が、保持可能な最大数であるならば、リクエスト受信履歴保持部2036に保持されている一致数を示す識別子を参照する。参照の結果最も一致数の少ない転送属性情報(ReqAtrb0/1)を削除する。そして、代わりに受信した転送属性情報(ReqAtrb0/1)を保持する。一方、パケットの種類を示す識別子が、転送属性情報(ReqAtrb0/1)が付加されていないことを示す識別子であるならば、実施形態1と同様に第2バスへのリクエスト形式に変換する。さらに、リクエスト受信履歴保持部2036に保持されている一致した転送属性情報(ReqAtrb0/1)の一致数を示す識別子の値を1増加させる。
[Request reception processing]
The request reception history holding unit 2036 holds an identifier indicating how many times the transfer and transfer attribute information (ReqAtrb0 / 1) match the request reception history holding unit 2036 of the first embodiment. The request packet reverse conversion unit 2031 performs conversion from a packet to a request format to the second bus by an identifier (Type) indicating the type of transfer. If the identifier indicating the packet type indicates a packet to which transfer attribute information (ReqAtrb0 / 1) is added, it is converted into a request format to the second bus as in the first embodiment. Further, the extracted transfer attribute information (ReqAtrb0 / 1) is held in the request reception history holding unit 2036. However, if the number of transfer attribute information (ReqAtrb0 / 1) held in the request reception history holding unit 2036 is the maximum number that can be held, the number of matches held in the request reception history holding unit 2036 is indicated. Refers to an identifier. As a result of the reference, the transfer attribute information (ReqAtrb0 / 1) having the smallest number of matches is deleted. Instead, the received transfer attribute information (ReqAtrb0 / 1) is held. On the other hand, if the identifier indicating the type of packet is an identifier indicating that transfer attribute information (ReqAtrb0 / 1) is not added, it is converted into a request format to the second bus as in the first embodiment. Further, the identifier value indicating the number of matches of the matched transfer attribute information (ReqAtrb0 / 1) held in the request reception history holding unit 2036 is incremented by one.

〔レスポンス送信処理〕
レスポンス送信履歴保持部2037には、実施形態1のレスポンス送信履歴保持部2037に対して、さらに何回の転送と転送属性情報(RespAtrb0/1)が一致したかを示す識別子が保持される。レスポンスパケット変換部2034は、第2バスからのレスポンスをパケットに変換する際に、レスポンス送信履歴保持部2037に保持されている、過去の転送属性情報(RespAtrb0/1)を参照し、一致するものがあるか探索を行う。比較結果に応じて、異なるパケットへの変換が行われる。比較結果が一致しなかった場合は、実施形態1と同様にパケットを生成し、レスポンス送信履歴保持部2037に転送属性情報(RespAtrb0/1)を保持する。ただし、レスポンス送信履歴保持部2037に保持されている転送属性情報(RespAtrb0/1)の数が、保持可能な最大数であるならば、レスポンス送信履歴保持部2037に保持されている一致数を示す識別子を参照する。参照の結果最も一致数の少ない転送属性情報(RespAtrb0/1)を削除する。そして、代わりにこれから転送を行う転送属性情報(RespAtrb0/1)を保持する。比較結果が一致した場合は、実施形態1と同様にパケットを生成する。さらに、レスポンス送信履歴保持部2037に保持されている一致した転送属性情報(RespAtrb0/1)の一致数を示す識別子の値を1増加させる。
[Response transmission processing]
The response transmission history holding unit 2037 holds an identifier indicating how many times the transfer and transfer attribute information (RespAtrb0 / 1) match the response transmission history holding unit 2037 of the first embodiment. The response packet conversion unit 2034 refers to the past transfer attribute information (RespAtrb0 / 1) held in the response transmission history holding unit 2037 when converting the response from the second bus into a packet, and matches Search for any. Depending on the comparison result, conversion into a different packet is performed. If the comparison results do not match, a packet is generated as in the first embodiment, and the transfer attribute information (RespAtrb0 / 1) is held in the response transmission history holding unit 2037. However, if the number of transfer attribute information (RespAtrb0 / 1) held in the response transmission history holding unit 2037 is the maximum number that can be held, the number of matches held in the response transmission history holding unit 2037 is indicated. Refers to an identifier. As a result of the reference, the transfer attribute information (RespAtrb0 / 1) having the smallest number of matches is deleted. Instead, transfer attribute information (RespAtrb0 / 1) to be transferred is held. If the comparison results match, a packet is generated as in the first embodiment. Further, the identifier value indicating the number of matches of the matched transfer attribute information (RespAtrb0 / 1) held in the response transmission history holding unit 2037 is incremented by one.

〔レスポンス受信処理〕
レスポンス受信履歴保持部1037には、実施形態1のレスポンス受信履歴保持部1037に対して、さらに何回の転送と転送属性情報(RespAtrb0/1)が一致したかを示す識別子が保持される。レスポンスパケット逆変換部1034は、転送の種類を示す識別子(Type)によってパケットから第1バスへのレスポンス形式への変換を行う。パケットの種類を示す識別子が、転送属性情報(RespAtrb0/1)が付加されているパケットを示しているならば、実施形態1と同様に、第1バスへのレスポンス形式に変換する。また、抽出した転送属性情報(RespAtrb0/1)をレスポンス受信履歴保持部1037に保持する。ただし、レスポンス受信履歴保持部1037に保持されている転送属性情報(RespAtrb0/1)の数が、保持可能な最大数であるならば、レスポンス受信履歴保持部1037に保持されている一致数を示す識別子を参照する。参照の結果最も一致数の少ない転送属性情報(RespAtrb0/1)を削除する。そして、代わりに受信した転送属性情報(RespAtrb0/1)を保持する。一方、パケットの種類を示す識別子が、転送属性情報(RespAtrb0/1)が付加されていないことを示す識別子であるならば、実施形態1と同様に第1バスへのレスポンス形式に変換する。さらに、レスポンス受信履歴保持部1037に保持されている一致した転送属性情報(RespAtrb0/1)の一致数を示す識別子の値を1増加させる。
[Response reception processing]
The response reception history holding unit 1037 holds an identifier indicating how many times the transfer and transfer attribute information (RespAtrb0 / 1) match the response reception history holding unit 1037 of the first embodiment. The response packet inverse conversion unit 1034 performs conversion from a packet to a response format to the first bus by an identifier (Type) indicating the type of transfer. If the identifier indicating the packet type indicates a packet to which transfer attribute information (RespAtrb0 / 1) is added, it is converted into a response format to the first bus as in the first embodiment. Further, the extracted transfer attribute information (RespAtrb0 / 1) is held in the response reception history holding unit 1037. However, if the number of transfer attribute information (RespAtrb0 / 1) held in the response reception history holding unit 1037 is the maximum number that can be held, the number of matches held in the response reception history holding unit 1037 is indicated. Refers to an identifier. As a result of the reference, the transfer attribute information (RespAtrb0 / 1) having the smallest number of matches is deleted. Instead, the received transfer attribute information (RespAtrb0 / 1) is held. On the other hand, if the identifier indicating the type of packet is an identifier indicating that transfer attribute information (RespAtrb0 / 1) is not added, it is converted into a response format to the first bus as in the first embodiment. Further, the identifier value indicating the number of matches of the matched transfer attribute information (RespAtrb0 / 1) held in the response reception history holding unit 1037 is incremented by one.

以上のように本実施形態によれば、実施形態1に比べて更に効率良く転送情報を圧縮することができる。   As described above, according to the present embodiment, transfer information can be compressed more efficiently than in the first embodiment.

また、上述の実施形態では、集積回路間(チップ間、モジュール間)におけるデータ転送について説明したが、本発明は同一集積回路(同一チップ、同一モジュール)内におけるデータ転送にも適用することもできる。   In the above-described embodiment, data transfer between integrated circuits (between chips and modules) has been described. However, the present invention can also be applied to data transfer within the same integrated circuit (same chip, same module). .

ただし、チップ間の転送は、チップ内の転送に比べて、データを転送する能力が低く、システムのボトルネックとなる可能性が高い。チップ内の転送では、「属性情報」「アドレス」「データ」についてそれぞれに物理的に信号線が存在し、同時・並列的に転送することができる。一方、チップ間の転送では、製品のコストを下げようとすると共通の信号線を利用してすることになり(チップのIOピンはコスト上昇を招くため)、時系列に転送するので、上述の実施形態による転送効率の向上はチップ内転送に比べて顕著である。   However, transfer between chips has a lower ability to transfer data than transfer within a chip, and is likely to be a bottleneck of the system. In the transfer within the chip, signal lines physically exist for “attribute information”, “address”, and “data”, respectively, and can be transferred simultaneously and in parallel. On the other hand, when transferring between chips, a common signal line is used to reduce the cost of the product (since the IO pins of the chip cause an increase in cost), and transfer is performed in time series. The improvement in transfer efficiency according to the embodiment is remarkable as compared with the transfer in the chip.

さらに、アドレスの上位又は下位について変動しないことが予め分かっている部分があることが予め分かっている場合は属性情報テーブルに上位(又は下位)アドレス情報を含ませて、属性情報と変動のないアドレスの一部分(上位又は下位数ビット分)を一緒に圧縮するように構成してもよい。例えば、ソフトウェアのアドレスマップの特性やバスの規格を考慮すると、あるモジュールにアクセスする場合には常に上位4ビットは固定の”0000”となることが考えられる。その場合は、テーブルに上位アドレス比較値を入れておけば変動のないアドレスビット数分さらにデータ転送効率がよくなる(下位アドレスについても同様)。この場合、変動のないアドレス部分を識別子で置換する場合には、属性情報の組合せが一致することだけを確かめて置換するようにしてもよい。   Furthermore, if it is known in advance that there is a part that is known not to change for the upper or lower address, the address that does not change with the attribute information is included in the attribute information table by including the upper (or lower) address information. May be configured such that a part of them (upper or lower several bits) is compressed together. For example, in consideration of the characteristics of the software address map and the bus standard, when accessing a certain module, the upper 4 bits are always fixed to “0000”. In that case, if the upper address comparison value is entered in the table, the data transfer efficiency is further improved by the number of address bits without fluctuation (the same applies to the lower address). In this case, when replacing an unchanged address part with an identifier, it may be replaced only by confirming that the combination of attribute information matches.

また、上述の実施形態では属性情報の組合せが保持しているものと一致しない場合は、一致していないことを示す識別子を付加するだけであるが、属性情報の組合せが一致しなくても変動しないアドレス部分を置換するように構成してもよい。その場合には複合側は常に変動しないアドレス部分を付加する構成を設ければよい。   In the above-described embodiment, if the combination of attribute information does not match what is held, only an identifier indicating that the combination does not match is added. The address portion that is not to be replaced may be replaced. In that case, the composite side may be provided with a configuration for adding an address portion that does not always change.

また、上述の実施形態では図1における第1バス105、第2バス205、または図7におけるバス909とバス910に用いるプロトコルとしてAXIを挙げて説明したが、本発明はデータ、アドレス、属性情報を組み合わせて転送するプロトコルであれば広く効果を発揮することができる。なお、複数の転送内容を1つの属性情報として複数のビット数で表現している場合であっても本発明は適用できる。   In the above-described embodiment, AXI has been described as the protocol used for the first bus 105, the second bus 205 in FIG. 1, or the bus 909 and the bus 910 in FIG. 7, but the present invention provides data, address, and attribute information. If the protocol is combined and transferred, the effect can be exhibited widely. Note that the present invention can be applied even when a plurality of transfer contents are expressed as a plurality of bits as one attribute information.

Claims (12)

パケットの属性情報を第1識別子と対応づけて複数保持する保持手段と、
データ転送の種類を示す属性情報を含む転送要求を受信する受信手段と、
前記受信手段により受信した属性情報と前記保持手段の保持している属性情報とが一致すると、前記受信手段により受信した属性情報が前記保持手段により保持されるどの属性情報と一致するかを示す第1識別子を前記受信手段により受信した属性情報の代わりにパケットに含めて送信する送信手段とを有することを特徴とするデータ転送装置。
Holding means for holding a plurality of packet attribute information in association with the first identifier;
Receiving means for receiving a transfer request including attribute information indicating a type of data transfer;
When the attribute information received by the receiving unit matches the attribute information held by the holding unit, the attribute information received by the receiving unit matches the attribute information held by the holding unit. A data transfer apparatus comprising: a transmission unit that includes one identifier in a packet instead of the attribute information received by the reception unit and transmits the packet.
前記送信手段は、前記第1識別子を含めたか否かを示す第2識別子を転送要求に付加して送信することを特徴とする請求項1に記載のデータ転送装置。   2. The data transfer apparatus according to claim 1, wherein the transmission unit transmits a second identifier indicating whether or not the first identifier is included, added to a transfer request. 前記送信手段は、前記受信手段の受信した転送要求の属性情報が前記保持手段の保持するどの属性情報とも一致しないことを示す第1識別子を含めて転送要求を送信した場合に、当該転送要求に含まれる属性情報を前記保持手段に保持させることを特徴とする請求項1又は2に記載のデータ転送装置。   When the transmission means transmits a transfer request including a first identifier indicating that the attribute information of the transfer request received by the reception means does not match any attribute information held by the holding means, the transmission means The data transfer apparatus according to claim 1, wherein the attribute information included is held in the holding unit. 前記送信手段は、前記受信手段により受信した転送要求の属性情報が前記保持手段に保持されている属性情報と一致しなければ、一致しないことを示す第2識別子を前記受信手段により受信した転送要求の属性情報と一緒にパケットに含めて送信することを特徴とする請求項1乃至3のいずれか1項に記載のデータ転送装置。   If the attribute information of the transfer request received by the receiving means does not match the attribute information held in the holding means, the sending means receives the second identifier indicating that they do not match by the receiving means. 4. The data transfer apparatus according to claim 1, wherein the data transfer apparatus transmits the packet together with the attribute information. 前記受信手段は第1バスを介して転送要求を受信し、前記送信手段は第2バスの形式に沿った属性情報に変換してパケットを送信することを特徴とする請求項1乃至4のいずれか1項に記載のデータ転送装置。   5. The receiving device according to claim 1, wherein the receiving unit receives a transfer request via the first bus, and the transmitting unit transmits the packet after converting the attribute information to conform to the format of the second bus. 2. A data transfer apparatus according to claim 1. 第1識別子を含む転送要求を受信する受信手段と、
過去に受信したパケットの属性情報を前記第1識別子と対応づけて複数保持する保持手段と、
前記保持手段の保持する属性情報のうち前記受信手段により受信した第1識別子に対応する属性情報を、前記受信手段により受信した識別子の代わりにパケットに含めて送信する送信手段とを有することを特徴とするデータ転送装置。
Receiving means for receiving a transfer request including the first identifier;
Holding means for holding a plurality of attribute information of packets received in the past in association with the first identifier;
Transmitting means for transmitting attribute information corresponding to the first identifier received by the receiving means out of the attribute information held by the holding means in a packet instead of the identifier received by the receiving means. A data transfer device.
前記受信手段は、前記第1識別子を含めたか否かを示す第2識別子をさらに受信することを特徴とする請求項6に記載のデータ転送装置。   The data transfer apparatus according to claim 6, wherein the receiving unit further receives a second identifier indicating whether or not the first identifier is included. 前記受信手段は、前記第1識別子に置き換えられなかった属性情報を受信し、当該属性情報を前記保持手段に保持させることを特徴とする請求項6又は7に記載のデータ転送装置。   8. The data transfer apparatus according to claim 6, wherein the receiving unit receives attribute information that has not been replaced with the first identifier, and causes the holding unit to hold the attribute information. 前記保持手段は、過去に送信したパケットの属性情報を所定数保持している状態でさらに保持すべき属性情報を受けると、最も古く保持した属性情報を置き換える当該保持すべき属性情報に置き換えることを特徴とする請求項1乃至8のいずれか1項に記載のデータ転送装置。   When the holding means receives attribute information to be further held in a state where a predetermined number of pieces of attribute information of packets transmitted in the past are held, the holding means replaces the oldest held attribute information with the attribute information to be held. The data transfer device according to claim 1, wherein the data transfer device is a data transfer device. 前記保持手段は、過去に送信したパケットの属性情報を所定数保持している状態でさらに保持すべき属性情報を受けると、前記保持手段の保持する属性情報のうちパケットに付与した回数の少ない属性情報から置き換えることを特徴とする請求項1乃至9のいずれか1項に記載のデータ転送装置。   When the holding means receives attribute information to be further held in a state where a predetermined number of pieces of attribute information of packets transmitted in the past are held, the attribute having a small number of times given to the packet among the attribute information held by the holding means The data transfer device according to claim 1, wherein the data transfer device is replaced with information. パケットの属性情報を第1識別子と対応づけて複数保持する保持手段と、データ転送の種類を示す属性情報を含む転送要求を受信する受信手段と、を備えるデータ転送装置によるデータ転送方法であって、
前記受信手段により受信した属性情報と前記保持手段の保持している属性情報とが一致すると、前記受信手段により受信した属性情報が前記保持手段により保持されるどの属性情報と一致するかを示す第1識別子を前記受信手段により受信した属性情報の代わりにパケットに含めて送信することを特徴とするデータ転送方法。
A data transfer method by a data transfer apparatus, comprising: a holding unit that holds a plurality of packet attribute information in association with a first identifier; and a receiving unit that receives a transfer request including attribute information indicating a type of data transfer. ,
When the attribute information received by the receiving unit matches the attribute information held by the holding unit, the attribute information received by the receiving unit matches the attribute information held by the holding unit. A data transfer method characterized in that one identifier is included in a packet instead of the attribute information received by the receiving means and transmitted.
パケットの属性情報を前記第1識別子と対応づけて複数保持する保持手段と、第1識別子を含む転送要求を受信する受信手段と、を備えるデータ転送装置によるデータ転送方法であって、
前記保持手段が保持する属性情報のうち前記受信手段により受信した第1識別子に対応する属性情報を、前記受信手段により受信した識別子の代わりにパケットに含めて送信することを特徴とするデータ転送方法。
A data transfer method by a data transfer apparatus comprising: a holding unit that holds a plurality of packet attribute information in association with the first identifier; and a receiving unit that receives a transfer request including the first identifier,
A data transfer method characterized in that attribute information corresponding to a first identifier received by the receiving means among attribute information held by the holding means is included in a packet instead of the identifier received by the receiving means and transmitted. .
JP2011278697A 2011-12-20 2011-12-20 Data transferring apparatus and data transferring method Pending JP2013130952A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011278697A JP2013130952A (en) 2011-12-20 2011-12-20 Data transferring apparatus and data transferring method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011278697A JP2013130952A (en) 2011-12-20 2011-12-20 Data transferring apparatus and data transferring method

Publications (1)

Publication Number Publication Date
JP2013130952A true JP2013130952A (en) 2013-07-04

Family

ID=48908478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011278697A Pending JP2013130952A (en) 2011-12-20 2011-12-20 Data transferring apparatus and data transferring method

Country Status (1)

Country Link
JP (1) JP2013130952A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115190083A (en) * 2022-09-13 2022-10-14 广东省电信规划设计院有限公司 Data transmission method and device applied to intelligent equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115190083A (en) * 2022-09-13 2022-10-14 广东省电信规划设计院有限公司 Data transmission method and device applied to intelligent equipment
CN115190083B (en) * 2022-09-13 2022-12-02 广东省电信规划设计院有限公司 Data transmission method and device applied to intelligent equipment

Similar Documents

Publication Publication Date Title
US9672143B2 (en) Remote memory ring buffers in a cluster of data processing nodes
KR100675850B1 (en) System for axi compatible network on chip
KR100687659B1 (en) Network interface of controlling lock operation in accordance with axi protocol, packet data communication on-chip interconnect system of including the network interface, and method of operating the network interface
US7606933B2 (en) Shared memory and high performance communication using interconnect tunneling
US7155554B2 (en) Methods and apparatuses for generating a single request for block transactions over a communication fabric
TWI406133B (en) Data processing apparatus and data transfer method
WO2016202114A1 (en) Data transmission method and device and storage medium
US8473658B2 (en) Input output bridging
CN101169771B (en) Multiple passage internal bus external interface device and its data transmission method
CN104641360A (en) Dual casting PCIe inbound writes to memory and peer devices
US9678891B2 (en) Efficient search key controller with standard bus interface, external memory interface, and interlaken lookaside interface
US20060095635A1 (en) Methods and apparatuses for decoupling a request from one or more solicited responses
US20160011994A1 (en) Multi-processor with efficient search key processing
US7386626B2 (en) Bandwidth, framing and error detection in communications between multi-processor clusters of multi-cluster computer systems
US9594706B2 (en) Island-based network flow processor with efficient search key processing
US9112736B2 (en) Data transfer apparatus, data transfer method, and inter-chip communication system
JP5906078B2 (en) Data transfer apparatus and data transfer method
JP2013130952A (en) Data transferring apparatus and data transferring method
US9632959B2 (en) Efficient search key processing method
JP5800565B2 (en) Data transfer apparatus and data transfer method
JP5865067B2 (en) Data transfer apparatus and data transfer method
JP2018173856A (en) Information processor and method for controlling the same
JP4125933B2 (en) Processor system with common memory
KR100198789B1 (en) Receiving connecting network interface structure
TW448371B (en) Network card structure and method for automatic checking and filtering IP packets to directly activate responding procedure