JP5613517B2 - Information processing device - Google Patents

Information processing device Download PDF

Info

Publication number
JP5613517B2
JP5613517B2 JP2010220787A JP2010220787A JP5613517B2 JP 5613517 B2 JP5613517 B2 JP 5613517B2 JP 2010220787 A JP2010220787 A JP 2010220787A JP 2010220787 A JP2010220787 A JP 2010220787A JP 5613517 B2 JP5613517 B2 JP 5613517B2
Authority
JP
Japan
Prior art keywords
relay
information
order
read request
reply data
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.)
Expired - Fee Related
Application number
JP2010220787A
Other languages
Japanese (ja)
Other versions
JP2012078895A (en
Inventor
忍 吉奥
忍 吉奥
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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions 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 Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Priority to JP2010220787A priority Critical patent/JP5613517B2/en
Publication of JP2012078895A publication Critical patent/JP2012078895A/en
Application granted granted Critical
Publication of JP5613517B2 publication Critical patent/JP5613517B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Bus Control (AREA)

Description

本発明は複数のマスタが複数のスレーブに対してアクセス可能な情報処理装置に関する。   The present invention relates to an information processing apparatus in which a plurality of masters can access a plurality of slaves.

複数のマスタ(マルチマスタ)が複数のスレーブ(マルチスレーブ)に対してアクセス可能なシステム(以下、マルチマスタ-マルチスレーブ)が提供されている。マスタとは制御する側のデバイスであり、CPU(Central Processing Unit)、DMA(Direct Memory Access)コントローラ等を指している。スレーブとは制御される側のデバイスであり、メモリ、I/O(Input/Output)デバイス等を指している。   A system (hereinafter referred to as multi-master-multi-slave) in which a plurality of masters (multi-master) can access a plurality of slaves (multi-slave) is provided. The master is a device on the control side and refers to a CPU (Central Processing Unit), a DMA (Direct Memory Access) controller, and the like. A slave is a controlled device, and refers to a memory, an I / O (Input / Output) device, or the like.

マルチマスタ-マルチスレーブとして、共有バスを介して接続される複数のCPUと複数のメモリまたはI/Oデバイスとをバスを介して接続したシステムコントローラであって、新たな命令を発行したCPU と、その命令の転送先と、転送保留中の命令を発行したCPUとを識別する識別情報を保持する保持手段と、リード命令の転送とそのリード命令に対するリターンデータの転送とが独立して実行される転送手段と、リード時に、保持手段の保持内容に基づいて、リターンデータが転送命令の発行順と入れ替わらないように、転送手段を制御する順序制御手段と、を備えたものが提案されている(例えば特許文献1参照)。   As a multi-master-multi-slave, a system controller in which a plurality of CPUs connected via a shared bus and a plurality of memories or I / O devices are connected via a bus, the CPU issuing a new command; Holding means for holding identification information for identifying the transfer destination of the instruction and the CPU that issued the transfer pending instruction, and transfer of the read instruction and transfer of return data for the read instruction are executed independently. There has been proposed a transfer means and an order control means for controlling the transfer means so that the return data is not switched with the issue order of transfer instructions based on the contents held by the holding means at the time of reading. (For example, refer to Patent Document 1).

特開2004−126678号公報JP 2004-126678 A

マルチマスタ-マルチスレーブに適用できるインターフェースとして、PCIエキスプレス(Peripheral Component Interconnect Express)がある。PCIエキスプレスはシリアル転送インターフェースであり、PCIのようなパラレルインターフェースの欠点を改良し、高速データ転送を可能とする。PCIエキスプレスは複数のチップどうしの間及びチップとCPUとの間のインターフェースとして用いることができる。PCIエキスプレスを使用したシステムはチップの長寿命化、開発コストの削減、拡張性及び汎用性に関して有効である。   As an interface applicable to multi-master-multi-slave, there is PCI Express (Peripheral Component Interconnect Express). PCI Express is a serial transfer interface that improves the shortcomings of parallel interfaces such as PCI and enables high-speed data transfer. The PCI Express can be used as an interface between a plurality of chips and between a chip and a CPU. A system using a PCI Express is effective in terms of extending the life of the chip, reducing development costs, expandability, and versatility.

PCIエキスプレスではトランザクション層でパケットをやり取りする。トランザクションとしてメモリリクエスト、I/Oリクエスト、コンプリーション等がある。   In PCI Express, packets are exchanged at the transaction layer. Transactions include memory requests, I / O requests, completions, and the like.

メモリリクエストとはメモリに対するリード・ライトリクエストである。I/OリクエストとはI/Oデバイスに対するリード・ライトリクエストである。コンプリーションとはリクエストに対する応答であり、リードリクエストの場合にはデータが含まれる。   The memory request is a read / write request for the memory. An I / O request is a read / write request for an I / O device. Completion is a response to a request, and data is included in the case of a read request.

マルチマスタ-マルチスレーブでは、マスタからスレーブまでに経由するチップ数の差、リクエスト内容による処理時間の差、スレーブの応答時間の差等の理由で、リードリクエストの順番とリードリクエストに応じて返信されてきた返信データ(例えばコンプリーションデータ)の順番とが異なることが不可避的に発生する。各マスタにバッファを設けて、返信データの順番を正しく並び変える態様が考えられる。しかし、この態様では順番を並び替えるためのバッファを各マスタに設ける必要があるので、非効率である。   In multi-master-multi-slave, it is returned according to the order of read requests and read requests due to the difference in the number of chips passing from master to slave, the difference in processing time depending on the request contents, the difference in slave response time, etc. Inevitably, the order of reply data (for example, completion data) is different. A mode in which a buffer is provided in each master and the order of the reply data is correctly arranged is conceivable. However, this mode is inefficient because it is necessary to provide each master with a buffer for rearranging the order.

本発明はリードリクエストに応じて複数のスレーブから返信されてきた返信データの順番を並び替えるためのバッファを各マスタに設ける必要がない情報処理装置を提供することを目的とする。   An object of the present invention is to provide an information processing apparatus in which it is not necessary to provide each master with a buffer for rearranging the order of reply data returned from a plurality of slaves in response to a read request.

上記目的を達成する本発明の一の局面に係る情報処理装置は、複数のマスタと、複数のスレーブと、前記複数のマスタが前記複数のスレーブにアクセスする場合に送信中継と返信中継を実行する中継部と、を備え、前記送信中継において、前記中継部は、前記複数のマスタから送信されてきたリードリクエストを中継する際に、当該リードリクエストを特定する第1の情報、当該リードリクエストを送信したマスタを特定する第2の情報、当該マスタが送信したリードリクエストの中で当該リードリクエストが送信されてきた順番を特定する第3の情報を対応付けた送信中継情報を記憶する処理を、前記複数のマスタから送信されてきたリードリクエストの順に実行し、前記返信中継において、前記中継部は、前記複数のスレーブからリードリクエストに応じて返信されてきた前記第1の情報を有する返信データを中継する際に、同じマスタに返信する返信データであって対応するリードリクエストの順番が先である返信データを中継していれば、前記返信されてきた返信データを中継し、前記順番が先である返信データを中継していなければ、前記順番が先である返信データを中継するまで前記返信されてきた返信データを保持する処理を、前記送信中継情報を基にして前記複数のスレーブから返信されてきた返信データの順に実行する。   An information processing apparatus according to one aspect of the present invention that achieves the above object performs transmission relay and reply relay when a plurality of masters, a plurality of slaves, and the plurality of masters access the plurality of slaves. A relay unit, wherein when the relay unit relays the read request transmitted from the plurality of masters, the relay unit transmits the first request identifying the read request and the read request. Storing the second relay information specifying the master, the transmission relay information associated with the third information specifying the order in which the read request is transmitted among the read requests transmitted by the master, In the reply relay, the relay unit reads from the plurality of slaves in the order of read requests transmitted from the plurality of masters. When relaying reply data having the first information sent back in response to a quest, reply data that is reply data that is sent back to the same master and that has the corresponding read request in order is relayed. For example, the reply data that has been returned is relayed, and if the reply data that is in the first order is not relayed, the reply data that has been returned is retained until the reply data that is in the first order is relayed The process is executed in the order of reply data returned from the plurality of slaves based on the transmission relay information.

本発明によれば、中継部は、同じマスタに返信する返信データであって対応するリードリクエストの順番が先である返信データを中継していれば、返信されてきた返信データを中継し、順番が先である返信データを中継していなければ、順番が先である返信データを中継するまで返信されてきた返信データを保持する処理を実行する。従って、中継部は、同じマスタに返信する返信データの順番がリードリクエストの順番と異なっていれば、返信データの順番をリードリクエストの順番に合うように順番を変更して中継する。よって、本発明によれば、返信データの順番がリードリクエストの順番と異なる場合に、返信データを正しい順番に並び替えるためのバッファを各マスタに設ける必要がなくなる。   According to the present invention, the relay unit relays the reply data that has been sent back if the reply data is reply data that is sent back to the same master and the corresponding read request is in the first order. If the previous reply data is not relayed, a process of holding the reply data returned until the reply data in the first order is relayed is executed. Therefore, if the order of the reply data returned to the same master is different from the order of the read request, the relay unit relays the order of the reply data so that it matches the order of the read request. Therefore, according to the present invention, when the reply data order is different from the read request order, it is not necessary to provide a buffer for rearranging the reply data in the correct order in each master.

なお、本発明において、複数のマスタが複数のスレーブに対してアクセスするとは、複数のマスタの少なくとも一つが複数のスレーブに対してアクセスすることである。従って、残りのマスタについては複数のスレーブに対してアクセスしてもよいし、一つのスレーブに対してアクセスしてもよい。   In the present invention, a plurality of masters accessing a plurality of slaves means that at least one of the plurality of masters accesses a plurality of slaves. Therefore, the remaining masters may be accessed for a plurality of slaves or a single slave.

上記構成の前記送信中継において、前記中継部は、前記送信されてきたリードリクエストに前記第1の情報を付加して中継し、前記返信中継において、前記中継部は、前記返信されてきた返信データに付加されている前記第1の情報と前記送信中継情報とを用いて、前記返信されてきた返信データを保持するか又は中継するかを選択する。   In the transmission relay configured as described above, the relay unit relays by adding the first information to the transmitted read request, and in the reply relay, the relay unit returns the returned reply data. Using the first information added to the transmission information and the transmission relay information, it is selected whether the returned reply data is held or relayed.

この構成は第1の情報を、リードリクエストに含まれる情報(例えばパケットID)ではなく、リードリクエストに含まれない情報にした場合の態様である。   This configuration is an aspect in which the first information is not included in the read request (for example, packet ID) but is not included in the read request.

上記構成において、複数のチップ(チップセット)を備え、前記複数のマスタの少なくとも1つは、前記複数のスレーブに対してアクセスする際に経由するチップ(チップセット)数が異なる。   In the above configuration, a plurality of chips (chip sets) are provided, and at least one of the plurality of masters is different in the number of chips (chip sets) that are passed through when accessing the plurality of slaves.

マスタがスレーブにアクセスする際に経由するチップ(チップセット)数が異なれば、返信データの順番がリードリクエストの順番と異なることが発生しやすい。従って、複数のマスタの少なくとも1つが、複数のスレーブに対してアクセスする際に経由するチップ(チップセット)数が異なる場合に本発明は好適である。   If the number of chips (chip sets) through which the master accesses the slave is different, the order of the reply data is likely to be different from the order of the read requests. Therefore, the present invention is suitable when at least one of a plurality of masters has a different number of chips (chip sets) through which access is made to a plurality of slaves.

上記構成において、前記中継部は、前記複数のチップ(チップセット)のうち、前記複数のスレーブから返信されてきた返信データが前記複数のマスタへ分流する箇所を有するチップ(チップセット)に設けられている。   In the above configuration, the relay unit is provided in a chip (chip set) having a location where reply data returned from the plurality of slaves is diverted to the plurality of masters among the plurality of chips (chip set). ing.

この構成によれば、中継部が複数のマスタの近くに配置されるので、中継部で正しい順番に変更された返信データについて再び順番が変更されてしまう可能性を低くすることができる。   According to this configuration, since the relay unit is arranged near a plurality of masters, it is possible to reduce the possibility that the order of the reply data changed in the correct order by the relay unit will be changed again.

上記構成において、前記複数のチップ(チップセット)間のインターフェースはPCIエキスプレスである。   In the above configuration, an interface between the plurality of chips (chip sets) is a PCI express.

この構成によれば、リードリクエスト及び返信データの転送を高速化できる。
本発明の他の局面に係る情報処理装置は、複数のマスタと、複数のスレーブと、バッファを含み、前記複数のマスタが前記複数のスレーブにアクセスする場合に送信中継と返信中継を実行する中継部と、複数のチップと、を備え、前記複数のマスタのそれぞれは、前記複数のスレーブに対してアクセスする際に経由するチップ数が異なり、前記複数のチップには、前記複数のマスタ及び前記中継部を備えているが、前記複数のスレーブを備えていないチップが含まれており、前記送信中継において、前記中継部は、前記複数のマスタから送信されてきたリードリクエストを中継する際に、当該リードリクエストを特定する第1の情報、当該リードリクエストを送信したマスタを特定する第2の情報、当該マスタが送信したリードリクエストの中で当該リードリクエストが送信されてきた順番を特定する第3の情報を対応付けた送信中継情報を記憶する処理を、前記複数のマスタから送信されてきたリードリクエストの順に実行し、前記返信中継において、前記中継部は、(a)前記複数のスレーブからリードリクエストに応じて返信されてきた前記第1の情報を有する返信データを中継する際に、当該返信データを前記バッファに格納し、(b)同じマスタに返信する返信データであって対応するリードリクエストの順番が先である返信データを中継していれば、前記(a)の返信データを中継し、(c)前記順番が先である返信データを中継していなければ、前記(a)の返信データを前記バッファで保持し、前記順番が先である返信データの中継をした後、前記バッファに保持されている前記(a)の返信データを中継する処理を、前記送信中継情報を基にして前記複数のスレーブから返信されてきた返信データの順に実行する。
According to this configuration, the transfer of the read request and the reply data can be speeded up.
An information processing apparatus according to another aspect of the present invention includes a plurality of masters, a plurality of slaves, and a buffer, and performs transmission relay and reply relay when the plurality of masters access the plurality of slaves And a plurality of chips, each of the plurality of masters has a different number of chips through which access to the plurality of slaves, the plurality of chips include the plurality of masters and the plurality of chips A chip that includes a relay unit but does not include the plurality of slaves is included.In the transmission relay, the relay unit relays a read request transmitted from the plurality of masters. First information for specifying the read request, second information for specifying the master that transmitted the read request, and the read request transmitted by the master The process of storing the transmission relay information associated with the third information specifying the order in which the read requests are transmitted is executed in the order of the read requests transmitted from the plurality of masters. The relay unit stores (a) the reply data in the buffer when relaying the reply data having the first information returned in response to the read request from the plurality of slaves. If the reply data that is returned to the same master and the corresponding read request is in the first order is relayed, the reply data in (a) is relayed, and (c) the order is first. If the reply data is not relayed, the reply data of (a) is held in the buffer, the reply data having the first order is relayed, and the reply data held in the buffer ( The process of relaying the reply data of a) is executed in the order of reply data returned from the plurality of slaves based on the transmission relay information.

本発明によれば、リードリクエストに応じて複数のスレーブから返信されてきた返信データの順番を並び替えるためのバッファを各マスタに設ける必要がなくなる。   According to the present invention, it is not necessary to provide each master with a buffer for rearranging the order of reply data returned from a plurality of slaves in response to a read request.

本実施形態に係る情報処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the information processing apparatus which concerns on this embodiment. リードリクエスト及びコンプリーションデータが流れる経路を示す図である。It is a figure which shows the path | route through which a read request and completion data flow. リードリクエストの送信中継を説明する図である。It is a figure explaining the transmission relay of a read request. 送信中継情報を表で示した図である。It is the figure which showed transmission relay information in the table | surface. コンプリーションデータの返信中継を説明する図である。It is a figure explaining the reply relay of completion data. 返信中継でのバッファと送信中継情報との関係を示す図である。It is a figure which shows the relationship between the buffer and transmission relay information in a reply relay.

以下、図面に基づいて本発明の実施形態について図を用いて詳細に説明する。図1は本実施形態に係る情報処理装置1の構成を示すブロック図である。情報処理装置1は例えば画像形成装置に適用でき、3つのチップ11,13,15と2つのメモリX,Yとを備えている。複数のマスタA,Bは複数のチップ11,13,15を経由して複数のメモリ(スレーブの一例)X,Yにアクセスする。   Embodiments of the present invention will be described below in detail with reference to the drawings. FIG. 1 is a block diagram showing the configuration of the information processing apparatus 1 according to this embodiment. The information processing apparatus 1 can be applied to, for example, an image forming apparatus, and includes three chips 11, 13, and 15 and two memories X and Y. A plurality of masters A and B access a plurality of memories (an example of slaves) X and Y via a plurality of chips 11, 13 and 15.

チップ11はCPU21、メモリコントローラ23、ルートコンプレックス25,27及びこれらを接続する内部バス29を備える。CPU21は情報処理装置1の全体を統括制御する。メモリコントローラ23はメモリYをコントロールする。ルートコンプレックス25,27はPCIエキスプレスにおける階層の最上層であり、ホストとして機能する。   The chip 11 includes a CPU 21, a memory controller 23, route complexes 25 and 27, and an internal bus 29 for connecting them. The CPU 21 performs overall control of the entire information processing apparatus 1. The memory controller 23 controls the memory Y. The root complexes 25 and 27 are the highest layers in the hierarchy in PCI Express and function as a host.

チップ13はエンドポイント31、2つのマスタA,B、中継部33及び内部バス35を備える。エンドポイント31はPCIエキスプレスに準拠しないデバイスのために、トランザクションのリクエスタ(要求を出す側)又はコンプリータ(完了させる側)となるデバイスである。エンドポイント31とルートコンプレックス25との間、言い換えればチップ11,13間のインターフェース37はPCIエキスプレスである。   The chip 13 includes an end point 31, two masters A and B, a relay unit 33, and an internal bus 35. The endpoint 31 is a device that is a transaction requester (requesting side) or a completer (completion side) for a device that does not comply with PCI Express. An interface 37 between the end point 31 and the root complex 25, in other words, between the chips 11 and 13, is a PCI express.

マスタA,BはDMAコントローラであり、内部バス35と接続されている。   Masters A and B are DMA controllers and are connected to the internal bus 35.

中継部33はエンドポイント31と内部バス35とを接続する。マスタA,BがそれぞれメモリX,Yにアクセスする際に送信中継と返信中継を実行する。これらの中継については後で説明する。   The relay unit 33 connects the end point 31 and the internal bus 35. When the masters A and B access the memories X and Y, respectively, transmission relay and reply relay are executed. These relays will be described later.

チップ15はエンドポイント41、メモリコントローラ43及びこれらを接続する内部バス45を備える。エンドポイント41はエンドポイント31と同様の機能を有する。エンドポイント41とルートコンプレックス27との間、言い換えればチップ11,15間のインターフェース47はPCIエキスプレスである。メモリコントローラ43はメモリXをコントロールする。   The chip 15 includes an end point 41, a memory controller 43, and an internal bus 45 connecting them. The end point 41 has the same function as the end point 31. The interface 47 between the end point 41 and the root complex 27, in other words, the chip 11 and 15 is a PCI express. The memory controller 43 controls the memory X.

本実施形態に係る情報処理装置1によるリードリクエストの送信について説明する。図2はリードリクエスト及びコンプリーションデータが流れる経路を示す図である。図3はリードリクエストの送信中継を説明する図である。コンプリーションデータはリードリクエストに応じて返信されてきた返信データの一例である。   Transmission of a read request by the information processing apparatus 1 according to the present embodiment will be described. FIG. 2 is a diagram illustrating a path through which a read request and completion data flow. FIG. 3 is a diagram for explaining read request transmission relay. Completion data is an example of reply data returned in response to a read request.

3つのリードリクエストR−A1,R−A2,R−B1を例に説明する。リードリクエストR−A1はマスタAがメモリXに対して発行したリードリクエストである。リードリクエストR−A2はマスタAがメモリYに対して発行したリードリクエストである。リードリクエストR−B1はマスタBがメモリYに対して発行したリードリクエストである。   Three read requests R-A1, R-A2, and R-B1 will be described as an example. The read request R-A1 is a read request issued from the master A to the memory X. The read request R-A2 is a read request issued from the master A to the memory Y. The read request R-B1 is a read request issued from the master B to the memory Y.

リードリクエストR−A1,R−A2,R−B1の順番で中継部33に到達したとする。中継部33は、マスタA,Bから送信されてきたリードリクエストR−A1,R−A2,R−B1を中継する場合に、そのリードリクエストを特定する第1の情報、そのリードリクエストを送信したマスタを特定する第2の情報及びそのマスタが送信したリードリクエストの中でそのリードリクエストが送信されてきた順番を特定する第3の情報を対応付けた送信中継情報を記憶する処理をマスタA,Bから送信されてきたリードリクエストR−A1,R−A2,R−B1の順に実行する。   It is assumed that the relay unit 33 is reached in the order of read requests R-A1, R-A2, and R-B1. When the relay unit 33 relays the read requests R-A1, R-A2, and R-B1 transmitted from the masters A and B, the relay unit 33 transmits the first request for identifying the read request and the read request. A process of storing transmission relay information in association with second information for specifying the master and third information for specifying the order in which the read requests are transmitted among the read requests transmitted by the master, The read requests R-A1, R-A2, and R-B1 transmitted from B are executed in this order.

これを具体的に説明する。図4は送信中継情報を表で示した図である。送信中継情報は中継部33に備えられる記憶部51に記憶される。タグはリードリクエストを特定する第1の情報である。タグは「1」から始まる連続番号が予め用意されている。   This will be specifically described. FIG. 4 is a table showing transmission relay information. The transmission relay information is stored in the storage unit 51 provided in the relay unit 33. The tag is first information that identifies a read request. The tag has a serial number starting from “1” in advance.

中継部33は、最初に到達したリードリクエストR−A1について、タグ「1」を割り当て、送信したマスタを特定する第2の情報として「A」を記憶し、マスタAが送信したリードリクエストR−A1,R−A2の中でそのリードリクエストR−A1が送信されてきた順番を特定する第3の情報として「1」を記憶する。そして、図3に示すように、中継部33はリードリクエストR−A1にタグ「1」を付加して中継する。タグは例えばトランザクション層のパケットのヘッダに設けられたリザーブ領域に付加する。   The relay unit 33 assigns the tag “1” to the read request R-A1 that arrives first, stores “A” as the second information for specifying the transmitted master, and reads the read request R- “1” is stored as the third information specifying the order in which the read request R-A1 is transmitted in A1 and R-A2. As shown in FIG. 3, the relay unit 33 adds the tag “1” to the read request R-A1 and relays it. The tag is added to a reserved area provided in the header of the transaction layer packet, for example.

中継部33は、次に到達したリードリクエストR−A2について、タグ「2」を割り当て、送信したマスタを特定する第2の情報として「A」を記憶し、マスタAが送信したリードリクエストR−A1,R−A2の中でそのリードリクエストR−A2が送信されてきた順番を特定する第3の情報として「2」を記憶する。そして、中継部33はリードリクエストR−A2にタグ「2」を付加して中継する。   The relay unit 33 assigns the tag “2” to the read request R-A2 that has arrived next, stores “A” as the second information for specifying the transmitted master, and the read request R− transmitted by the master A. “2” is stored as the third information specifying the order in which the read request R-A2 is transmitted in A1 and R-A2. Then, the relay unit 33 adds the tag “2” to the read request R-A2 and relays it.

中継部33は、三番目に到達したリードリクエストR−B1について、タグ「3」を割り当て、送信したマスタを特定する第2の情報として「B」を記憶し、マスタBが送信したリードリクエストR−B1の中でそのリードリクエストR−B1が送信されてきた順番を特定する第3の情報として「1」を記憶する。そして、中継部33はリードリクエストR−B1にタグ「3」を付加して中継する。   The relay unit 33 assigns the tag “3” to the read request R-B1 that arrives third, stores “B” as the second information for specifying the transmitted master, and the read request R transmitted by the master B. -Stores "1" as the third information specifying the order in which the read request R-B1 is transmitted in B1. Then, the relay unit 33 relays by adding the tag “3” to the read request R-B1.

次に、本実施形態に係る情報処理装置1によるコンプリーションデータ(返信データの一例)の返信について図2、図5及び図6を用いて説明する。図5はコンプリーションデータの返信中継を説明する図である。図6は返信中継でのバッファと送信中継情報との関係を示す図である。   Next, reply of completion data (an example of reply data) by the information processing apparatus 1 according to the present embodiment will be described with reference to FIGS. 2, 5, and 6. FIG. 5 is a diagram illustrating reply relay of completion data. FIG. 6 is a diagram showing the relationship between a buffer for reply relay and transmission relay information.

図5に示すように、コンプリーションデータC−A1はリードリクエストR−A1に対する応答であり、メモリXからマスタAに返信される。コンプリーションデータC−A2はリードリクエストR−A2に対する応答であり、メモリYからマスタAに返信される。コンプリーションデータC−B1はリードリクエストR−B1に対する応答であり、メモリYからマスタBに返信される。   As shown in FIG. 5, the completion data C-A1 is a response to the read request R-A1, and is returned from the memory X to the master A. The completion data C-A2 is a response to the read request R-A2, and is returned from the memory Y to the master A. The completion data C-B1 is a response to the read request R-B1, and is returned from the memory Y to the master B.

コンプリーションデータC−A2,C−B1,C−A1の順にルートコンプレックス25に到達し、この順番で中継部33に到達したとする。中継部33はコンプリーションデータを記憶するバッファ53を備える。   It is assumed that the completion data C-A2, C-B1, and C-A1 arrive at the route complex 25 in this order, and reach the relay unit 33 in this order. The relay unit 33 includes a buffer 53 that stores completion data.

中継部33は、複数のメモリX,Yから返信されてきたコンプリーションデータC−A2,C−B1,C−A1を中継する際に、同じマスタに返信するコンプリーションデータであって対応するリードリクエストの順番が先であるコンプリーションデータを中継していれば、返信されてきたコンプリーションデータを中継し、順番が先であるコンプリーションデータを中継していなければ、順番が先であるコンプリーションデータを中継するまで返信されてきたコンプリーションデータを保持する処理を、送信中継情報を基にして複数のメモリX,Yから返信されてきたコンプリーションデータC−A2,C−B1,C−A1の順に実行する。これを具体的に説明する。   When the relay unit 33 relays the completion data C-A2, C-B1, and C-A1 returned from the plurality of memories X and Y, the relay unit 33 reads the corresponding read data corresponding to the same master. If the completion data with the first request is relayed, the returned completion data is relayed. If the completion data with the first order is not relayed, the completion with the first order is completed. Completion data C-A2, C-B1, and C-A1 returned from a plurality of memories X and Y based on the transmission relay information is used to hold the completion data returned until data is relayed. Execute in this order. This will be specifically described.

中継部33は、最初に到達したコンプリーションデータC−A2をバッファ53に格納する。図6(A)に示すように、中継部33は記憶部51に記憶されている送信中継情報を参照して、コンプリーションデータC−A2に付加されているタグ「2」と同じ番号のタグの欄において、順番が「1」であるか判断する。タグ「2」では順番が「2」である。これは、「1」に対応するコンプリーションデータC−A1がマスタAにまだ返信されていないこと示す。コンプリーションデータC−A2はリードリクエストR−A2に対する応答である。マスタAに先に返信すべきデータはリードリクエストR−A1に対する応答であるコンプリーションデータC−A1である。従って、中継部33はコンプリーションデータC−A2をバッファ53で保持する。   The relay unit 33 stores the completion data C-A2 that has arrived first in the buffer 53. As illustrated in FIG. 6A, the relay unit 33 refers to the transmission relay information stored in the storage unit 51, and has the same number as the tag “2” added to the completion data C-A2. In the column, it is determined whether the order is “1”. In the tag “2”, the order is “2”. This indicates that the completion data C-A1 corresponding to “1” has not yet been returned to the master A. The completion data C-A2 is a response to the read request R-A2. The data to be returned to the master A first is completion data C-A1, which is a response to the read request R-A1. Therefore, the relay unit 33 holds the completion data C-A2 in the buffer 53.

中継部33は、次に到達したコンプリーションデータC−B1をバッファ53に格納する。図6(B)に示すように、中継部33は送信中継情報を参照して、コンプリーションデータC−B1に付加されているタグ「3」と同じ番号のタグの欄において、順番が「1」であるか判断する。タグ「3」では順番が「1」である。これはマスタBにとってバッファ53で保持せずに中継すべきデータであることを示している。従って、中継部33はコンプリーションデータからタグ「3」を削除して、マスタBへ返信する中継を実行する。   The relay unit 33 stores the completion data C-B1 that has arrived next in the buffer 53. As shown in FIG. 6B, the relay unit 33 refers to the transmission relay information, and in the tag column having the same number as the tag “3” added to the completion data C-B1, the order is “1”. Is determined. In the tag “3”, the order is “1”. This indicates that the data to be relayed without being held in the buffer 53 for the master B. Therefore, the relay unit 33 deletes the tag “3” from the completion data, and executes a relay for returning to the master B.

中継部33は、3番目に到達したコンプリーションデータC−A1をバッファ53に格納する。図6(C)に示すように、中継部33は送信中継情報を参照して、コンプリーションデータC−A1に付加されているタグ「1」と同じ番号のタグの欄において、順番が「1」であるか判断する。タグ「1」では順番が「1」である。これはマスタAにとってバッファ53で保持せずに中継すべきデータであることを示している。従って、中継部33はコンプリーションデータC−A1からタグ「1」を削除して、マスタAへ返信する中継を実行する。また、中継部33は送信中継情報において、マスタAについての順番を繰り上げる処理をする。ここでは、タグ「2」の欄において、順番を「2」から「1」に繰り上げる。   The relay unit 33 stores the completion data C-A1 that has reached the third position in the buffer 53. As shown in FIG. 6C, the relay unit 33 refers to the transmission relay information, and in the tag column having the same number as the tag “1” added to the completion data C-A1, the order is “1”. Is determined. In the tag “1”, the order is “1”. This indicates that the data to be relayed without being held in the buffer 53 for the master A. Therefore, the relay unit 33 deletes the tag “1” from the completion data C-A1 and executes a relay for returning to the master A. In addition, the relay unit 33 performs processing for moving up the order of the master A in the transmission relay information. Here, in the column of the tag “2”, the order is increased from “2” to “1”.

中継部33は、コンプリーションデータC−A1の中継後、バッファ53で保持されているコンプリーションデータC−A2について、図6(D)に示すように送信中継情報を参照して、コンプリーションデータC−A2に付加されているタグ「2」と同じ番号のタグの欄において、順番が「1」であるか判断する。タグ「2」では順番が「1」である。これはバッファ53に保持せずにマスタAに返信すべきデータであることを示している。従って、図5に示すように中継部33はコンプリーションデータC−A2からタグ「2」を削除して、マスタAへ返信する中継を実行する。   After the completion data C-A1 is relayed, the relay unit 33 refers to the transmission relay information for the completion data C-A2 held in the buffer 53 as shown in FIG. In the tag column with the same number as the tag “2” added to C-A2, it is determined whether the order is “1”. In the tag “2”, the order is “1”. This indicates that the data should be returned to the master A without being held in the buffer 53. Therefore, as shown in FIG. 5, the relay unit 33 deletes the tag “2” from the completion data C-A2 and executes a relay for returning to the master A.

本実施形態の主な効果を説明する。本実施形態によれば、中継部33は、マスタA,Bから送信されてきたリードリクエストR−A1,R−A2,R−B1を送信中継する際に、送信中継情報を作成して記憶すると共にリードリクエストR−A1,R−A2,R−B1にタグ「1」、「2」、「3」を付加して中継する。中継部33は、メモリX,Yから返信されてきたコンプリーションデータC−A1,C−A2,C−B1を返信中継する際に、送信中継情報とタグを用いて、以下の処理をする。同じマスタに返信するコンプリーションデータであって対応するリードリクエストの順番が先であるコンプリーションデータを中継していれば、返信されてきたコンプリーションデータを中継し、順番が先であるコンプリーションデータを中継していなければ、順番が先であるコンプリーションデータを中継するまで返信されてきたコンプリーションデータをバッファ53で保持する。   The main effects of this embodiment will be described. According to the present embodiment, the relay unit 33 creates and stores transmission relay information when relaying the read requests R-A1, R-A2, and R-B1 transmitted from the masters A and B. At the same time, the tags "1", "2", and "3" are added to the read requests R-A1, R-A2, and R-B1 and relayed. When relaying the completion data C-A1, C-A2, and C-B1 returned from the memories X and Y, the relay unit 33 performs the following processing using the transmission relay information and the tag. Completion data that is returned to the same master and that corresponds to the corresponding read request is relayed first. If the completion data that is returned is relayed, the completion data that is returned is relayed. If it is not relayed, the completion data returned until the completion data of the first order is relayed is held in the buffer 53.

従って、中継部33は、同じマスタに返信するコンプリーションデータの順番がリードリクエストの順番と異なっていれば、コンプリーションデータの順番をリードリクエストの順番に合うように順番を変更して中継する。よって、コンプリーションデータの順番がリードリクエストの順番と異なる場合に、コンプリーションデータを正しい順番に変更するためのバッファをマスタA,Bのそれぞれに設ける必要がなくなる。   Therefore, if the order of the completion data returned to the same master is different from the order of the read request, the relay unit 33 changes the order of the completion data so as to match the order of the read request and relays. Therefore, when the order of the completion data is different from the order of the read request, it is not necessary to provide a buffer for changing the completion data in the correct order in each of the masters A and B.

以上より、本実施形態によれば、複数のマスタA,Bが複数のメモリX,Yに対してアクセスする場合に、コンプリーションデータの順番を並び替えるためのバッファを各マスタA,Bに設ける必要がなくなる。   As described above, according to the present embodiment, when a plurality of masters A and B access a plurality of memories X and Y, a buffer for rearranging the order of completion data is provided in each master A and B. There is no need.

また、本実施形態によれば、リードレイテンシを小さくすることができる。詳細に説明すると、中継装置33のバッファ53に複数のメモリX,Yから返信されてきたコンプリーションデータの全部を記憶させ、コンプリーションデータの順番を正しく並び替えて、各メモリX,Yに返信する態様が考えられる。しかし、この態様ではコンプリーションデータの全部をバッファ53に一度記憶させる結果、全てのリードリクエストに対応するコンプリーションデータが返信された後でなければ、各マスタA,Bがコンプリーションデータを受信できないので、リードレイテンシが大きくなる可能性がある。   Further, according to the present embodiment, the read latency can be reduced. More specifically, all the completion data returned from the plurality of memories X and Y is stored in the buffer 53 of the relay device 33, the order of the completion data is correctly rearranged, and returned to the memories X and Y. An embodiment is conceivable. However, in this aspect, as a result of storing all the completion data in the buffer 53 once, the masters A and B cannot receive the completion data unless the completion data corresponding to all the read requests are returned. As a result, read latency may increase.

これに対して、本実施形態では、中継部33が返信中継において返信されてきたコンプリーションデータを保持する処理を同じマスタに返信するコンプリーションデータに対して実行するので、異なるマスタA,Bに返信するコンプリーションデータについては、返信されてきたコンプリーションデータの順番に中継される。よって、マスタBにとってはリードレイテンシを小さくできる。   On the other hand, in the present embodiment, the relay unit 33 executes the process of holding the completion data returned in the reply relay for the completion data returned to the same master. Completion data to be returned is relayed in the order of the returned completion data. Therefore, the read latency can be reduced for the master B.

さらに、本実施形態によれば、複数のマスタA,Bが複数のチップ11,13,15を経由して複数のメモリX,Yにアクセスする情報処理装置1に中継部33を備えている。そして、複数のマスタA,Bの少なくとも1つ(マスタA)は、複数のメモリX,Yに対してアクセスする際に経由するチップ数が異なる。マスタがメモリにアクセスする際に経由するチップ数が異なれば、コンプリーションデータの順番がリードリクエストの順番と異なることが発生しやすいので、本実施形態は特に有効となる。   Further, according to the present embodiment, the information processing apparatus 1 in which the plurality of masters A and B access the plurality of memories X and Y via the plurality of chips 11, 13 and 15 includes the relay unit 33. At least one of the plurality of masters A and B (master A) has a different number of chips through which the plurality of memories X and Y are accessed. This embodiment is particularly effective because the order of completion data is likely to differ from the order of read requests if the number of chips through which the master accesses the memory is different.

本実施形態によれば、図1に示すように中継部33をチップ13に設けている。チップ13は複数のチップ11,13,15のうち、複数のメモリX,Yから返信されてきたコンプリーションデータが複数のマスタA,Bへ分流する箇所(内部バス35)を有するチップである。中継部33をチップ13に設けることにより、中継部33が複数のマスタA,Bの近くに配置されるので、中継部33で正しい順番に変更されたコンプリーションデータについて再び順番が変更されてしまう可能性を低くすることができる。なお、中継部33は複数のメモリX,Yから返信されてきたコンプリーションデータが合流する箇所(内部バス29)から、複数のマスタA,Bへ分流する箇所(内部バス35)までの間に設けることができる。   According to the present embodiment, the relay unit 33 is provided on the chip 13 as shown in FIG. The chip 13 is a chip having a portion (internal bus 35) where the completion data returned from the plurality of memories X and Y is divided into the plurality of masters A and B among the plurality of chips 11, 13, and 15. By providing the relay unit 33 on the chip 13, the relay unit 33 is arranged near the plurality of masters A and B, so that the order of the completion data changed in the correct order by the relay unit 33 is changed again. The possibility can be reduced. Note that the relay unit 33 is between the location where the completion data returned from the plurality of memories X and Y merges (internal bus 29) and the location where the completion data is branched to the plurality of masters A and B (internal bus 35). Can be provided.

本実施形態によれば、複数のチップ11,13,15間のインターフェース37,47はPCIエキスプレスである。従って、リードリクエスト及びコンプリーションデータの転送を高速化できる。   According to this embodiment, the interfaces 37 and 47 between the plurality of chips 11, 13 and 15 are PCI express. Therefore, the transfer of the read request and the completion data can be speeded up.

なお、本実施形態では複数のマスタが複数のスレーブに対してアクセスする態様として、マスタAがメモリX,Yにアクセスし、マスタBがメモリYにアクセスする態様で説明した。これ以外に、マスタAがメモリX,Yにアクセスし、マスタBがメモリX,Yにアクセスする態様でもよい。   In the present embodiment, a mode in which a master A accesses the memories X and Y and a master B accesses the memory Y has been described as a mode in which a plurality of masters access a plurality of slaves. In addition to this, the master A may access the memories X and Y, and the master B may access the memories X and Y.

本実施形態ではリードリクエストを特定する第1の情報としてタグを用いており、リードリクエストに第1の情報を付加して中継しているが、トランザクションのパケットのID等を第1の情報としてリードリクエストを特定してもよい。これによれば、第1の情報をリードリクエストに付加する処理が不要となる。   In this embodiment, a tag is used as the first information for specifying the read request, and the first information is added to the read request for relaying. However, the transaction packet ID or the like is read as the first information. The request may be specified. This eliminates the need to add the first information to the read request.

複数のチップで説明したが複数のチップセットでも本実施形態を適用できる。   Although described with a plurality of chips, the present embodiment can be applied to a plurality of chipsets.

1 情報処理装置
11,13,15 チップ
33 中継部
51 記憶部
53 バッファ
1 Information processing device 11, 13, 15 Chip 33 Relay unit 51 Storage unit 53 Buffer

Claims (5)

複数のマスタと、
複数のスレーブと、
バッファを含み、前記複数のマスタが前記複数のスレーブにアクセスする場合に送信中継と返信中継を実行する中継部と、
複数のチップと、を備え、
前記複数のマスタのそれぞれは、前記複数のスレーブに対してアクセスする際に経由するチップ数が異なり、
前記複数のチップには、前記複数のマスタ及び前記中継部を備えているが、前記複数のスレーブを備えていないチップが含まれており
前記送信中継において、前記中継部は、
前記複数のマスタから送信されてきたリードリクエストを中継する際に、当該リードリクエストを特定する第1の情報、当該リードリクエストを送信したマスタを特定する第2の情報、当該マスタが送信したリードリクエストの中で当該リードリクエストが送信されてきた順番を特定する第3の情報を対応付けた送信中継情報を記憶する処理を、前記複数のマスタから送信されてきたリードリクエストの順に実行し、
前記返信中継において、前記中継部は、
(a)前記複数のスレーブからリードリクエストに応じて返信されてきた前記第1の情報を有する返信データを中継する際に、当該返信データを前記バッファに格納し、(b)同じマスタに返信する返信データであって対応するリードリクエストの順番が先である返信データを中継していれば、前記(a)の返信データを中継し、(c)前記順番が先である返信データを中継していなければ、前記(a)の返信データを前記バッファで保持し、前記順番が先である返信データの中継をした後、前記バッファに保持されている前記(a)の返信データを中継する処理を、前記送信中継情報を基にして前記複数のスレーブから返信されてきた返信データの順に実行する情報処理装置。
Multiple masters,
With multiple slaves,
A relay unit that includes a buffer, and executes transmission relay and reply relay when the plurality of masters access the plurality of slaves;
A plurality of chips, and
Each of the plurality of masters is different in the number of chips that are passed when accessing the plurality of slaves,
The plurality of chips include a chip that includes the plurality of masters and the relay unit, but does not include the plurality of slaves .
In the transmission relay, the relay unit includes:
When relaying a read request transmitted from the plurality of masters, first information for identifying the read request, second information for identifying a master that has transmitted the read request, and a read request transmitted by the master The process of storing the transmission relay information associated with the third information specifying the order in which the read requests are transmitted in the order of the read requests transmitted from the plurality of masters,
In the reply relay, the relay unit
(a) When relaying reply data having the first information returned from the plurality of slaves in response to a read request, the reply data is stored in the buffer, and (b) replying to the same master If the reply data is the reply data that is in the order of the corresponding read request, the reply data in (a) is relayed, and (c) the reply data in the order is forward. If there is not, the process of holding the reply data of (a) in the buffer, relaying the reply data in the first order, and then relaying the reply data of (a) held in the buffer. An information processing apparatus that executes in order of reply data returned from the plurality of slaves based on the transmission relay information.
前記中継部は、前記複数のチップのうち、前記複数のスレーブから返信されてきた返信データが前記複数のマスタへ分流する箇所を有するチップに設けられている請求項1に記載の情報処理装置。   2. The information processing apparatus according to claim 1, wherein the relay unit is provided in a chip having a location where reply data returned from the plurality of slaves is diverted to the plurality of masters among the plurality of chips. 前記複数のチップ間のインターフェースはPCIエキスプレスである請求項1又は2に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein an interface between the plurality of chips is a PCI express. 前記PCIエキスプレスのトランザクションのパケットのIDを、前記第1の情報とする請求項3に記載の情報処理装置。   The information processing apparatus according to claim 3, wherein an ID of a packet of the PCI Express transaction is the first information. 前記送信中継において、前記中継部は、
前記送信されてきたリードリクエストに前記第1の情報を付加して中継し、
前記返信中継において、前記中継部は、
前記返信されてきた返信データに付加されている前記第1の情報と前記送信中継情報とを用いて、前記返信されてきた返信データを保持するか又は中継するかを選択する請求項1〜3のいずれか一項に記載の情報処理装置。
In the transmission relay, the relay unit includes:
Add the first information to the read request sent and relay it,
In the reply relay, the relay unit
The first information added to the returned reply data and the transmission relay information are used to select whether to hold or relay the returned reply data. The information processing apparatus according to any one of the above.
JP2010220787A 2010-09-30 2010-09-30 Information processing device Expired - Fee Related JP5613517B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010220787A JP5613517B2 (en) 2010-09-30 2010-09-30 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010220787A JP5613517B2 (en) 2010-09-30 2010-09-30 Information processing device

Publications (2)

Publication Number Publication Date
JP2012078895A JP2012078895A (en) 2012-04-19
JP5613517B2 true JP5613517B2 (en) 2014-10-22

Family

ID=46239119

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010220787A Expired - Fee Related JP5613517B2 (en) 2010-09-30 2010-09-30 Information processing device

Country Status (1)

Country Link
JP (1) JP5613517B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104137083B (en) * 2012-12-28 2018-08-28 松下知识产权经营株式会社 Interface arrangement and memory bus system
CN106713183B (en) 2015-10-30 2020-03-17 新华三技术有限公司 Interface board of network equipment, network equipment and message forwarding method

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS539433A (en) * 1976-07-13 1978-01-27 Fujitsu Ltd Buffer memory control system
JPH04190435A (en) * 1990-11-26 1992-07-08 Hitachi Ltd Memory access order guarantee method for multiprocessor system
US6453370B1 (en) * 1998-11-16 2002-09-17 Infineion Technologies Ag Using of bank tag registers to avoid a background operation collision in memory systems
US6889295B2 (en) * 2002-03-05 2005-05-03 Hewlett-Packard Development Company, L.P. Re-ordering requests for shared resources
JP2004355271A (en) * 2003-05-28 2004-12-16 Toshiba Corp Data transfer system
US7408945B2 (en) * 2003-10-14 2008-08-05 International Business Machines Corporation Use of hardware to manage dependencies between groups of network data packets
US8407433B2 (en) * 2007-06-25 2013-03-26 Sonics, Inc. Interconnect implementing internal controls
US9021482B2 (en) * 2007-05-04 2015-04-28 International Business Machines Corporation Reordering data responses using ordered indicia in a linked list

Also Published As

Publication number Publication date
JP2012078895A (en) 2012-04-19

Similar Documents

Publication Publication Date Title
US10515030B2 (en) Method and device for improved advanced microcontroller bus architecture (AMBA) and advanced extensible interface (AXI) operations
CN100472494C (en) System and method for implementing memory mediation of supporting multi-bus multi-type memory device
TWI321727B (en) Memory hub, memory module, and processor system having a data bypass for preventing data collision on a bi-directional data bus, and the related method
US6119196A (en) System having multiple arbitrating levels for arbitrating access to a shared memory by network ports operating at different data rates
US20040024943A1 (en) Generic bridge core
JP2014508361A (en) Memory interface
US20140359195A1 (en) Crossbar switch, information processing apparatus, and information processing apparatus control method
US8359419B2 (en) System LSI having plural buses
JP5613517B2 (en) Information processing device
US7913013B2 (en) Semiconductor integrated circuit
US7689746B2 (en) Bus system employing an arbiter
JP2005293596A5 (en)
US8117626B2 (en) Asynchronous remote procedure calling method and computer product in shared-memory multiprocessor
US7203781B2 (en) Bus architecture with primary bus and secondary or slave bus wherein transfer via DMA is in single transfer phase engagement of primary bus
JP4856413B2 (en) Arithmetic processing apparatus, information processing apparatus, and control method for arithmetic processing apparatus
US20170192720A1 (en) Prioritization of order ids in dram scheduling
JP5383159B2 (en) Bus relay apparatus and control method
CN109271333A (en) A kind of SRAM control method and controller, control system
JP2011113163A (en) Inter-end point communication control device and method in io access communication system
JP2007506174A (en) Integrated circuit having a plurality of communication digital signal processors
EP1990725B1 (en) Central processing unit, central processing unit control method, and information processing system
JP2003085125A (en) Memory controller and memory control method
CN101021833A (en) Stream damper based on double-damping structure
KR20220132333A (en) Peripheral component interconnect express interface device and operating method thereof
JP2002278922A (en) Computer bus system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120821

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131008

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140409

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140812

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140908

R150 Certificate of patent or registration of utility model

Ref document number: 5613517

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees