Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5557313B2 - Cache memory control system, control method thereof, and control program - Google Patents
[go: Go Back, main page]

JP5557313B2 - Cache memory control system, control method thereof, and control program - Google Patents

Cache memory control system, control method thereof, and control program Download PDF

Info

Publication number
JP5557313B2
JP5557313B2 JP2010049310A JP2010049310A JP5557313B2 JP 5557313 B2 JP5557313 B2 JP 5557313B2 JP 2010049310 A JP2010049310 A JP 2010049310A JP 2010049310 A JP2010049310 A JP 2010049310A JP 5557313 B2 JP5557313 B2 JP 5557313B2
Authority
JP
Japan
Prior art keywords
level
cache memory
information
priority
control system
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
JP2010049310A
Other languages
Japanese (ja)
Other versions
JP2011186617A (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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP2010049310A priority Critical patent/JP5557313B2/en
Publication of JP2011186617A publication Critical patent/JP2011186617A/en
Application granted granted Critical
Publication of JP5557313B2 publication Critical patent/JP5557313B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、複数のプロセッサから出力される所定情報をキャッシュメモリに夫々記憶させる制御を行うキャッシュメモリ制御システム、その制御方法及び制御プログラムに関するものである。   The present invention relates to a cache memory control system that performs control to store predetermined information output from a plurality of processors in a cache memory, a control method thereof, and a control program.

近年、ハードウェアの進歩と共にソフトウェアも複雑化しており、複数のプロセスを同時に処理する必要が生じている。このように、複数のプロセスを同時に処理する場合、全プロセスの完了を待って別のプロセスが開始するようなケースが生じ、この同時処理の過程で、一方のプロセスが他のプロセスを処理するために、例えば、キャッシュメモリのスワップ処理などが行われている。これにより、処理時間の遅延が生じ、システム全体の性能低下が懸念されている。このような問題を解決すべく様々のマルチプロセッサシステムが開発されている。   In recent years, software has become more complex as hardware advances, and it has become necessary to process a plurality of processes simultaneously. In this way, when processing multiple processes at the same time, there may be cases where another process starts after the completion of all processes, and one process handles the other process during this simultaneous processing. For example, a cache memory swap process is performed. As a result, processing time is delayed, and there is a concern that the performance of the entire system is degraded. Various multiprocessor systems have been developed to solve such problems.

上記スワップ処理において、マルチプロセッサシステムは、例えば、キャッシュやディレクトリ方式のディレクトリ、スヌープ方式のタグで新規の所定情報をキャッシュメモリのレベルに登録する場合、各エントリのレベルがフル状態のときには、何れかのレベルの情報を吐き出してその空いたレベルに新規情報を登録することとなる。   In the above swap processing, the multiprocessor system, for example, registers new predetermined information at the cache memory level with a cache, directory type directory, or snoop type tag, and when each entry level is full, either The new level information is registered and new information is registered in the empty level.

ここで、従来のスワップ処理におけるレベル選択の方法は、ラウンドロビンやLRU(古い情報から選択)、ランダムなどによる選択、優先度の高いプロセッサが使用するレベルを残す方式、又はそれぞれを組み合わせた方式が採用されている(例えば、特許文献1参照)。   Here, level selection methods in conventional swap processing include round robin, LRU (selected from old information), random selection, a method of leaving a level used by a high priority processor, or a combination of the above. (For example, refer to Patent Document 1).

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

しかしながら、マルチプロセッサシステムに対して、従来のレベル選択方法を用いた場合、キャッシュメモリの各レベルに登録されている情報に関して、夫々どのソース(例えばプロセッサなど)からの情報なのか全体として管理されていない。このため、処理中のプロセスが登録した情報をスワップ処理してしまったり、又は、ある特定のプロセスが登録する情報のみが常にスワップ処理されてしまったりすることがある。   However, when the conventional level selection method is used for a multiprocessor system, the information registered in each level of the cache memory is managed as a whole from which source (eg, processor). Absent. For this reason, information registered by the process being processed may be swapped, or only information registered by a specific process may be always swapped.

ここで、あるプロセスが別のプロセスの完了を待ち合わせている場合、待ち合わせ対象のプロセスのスワップ処理が頻発しその完了までの時間が遅延したとき、次プロセスの開始ができずに待ち時間が発生するため、システム全体の処理性能が低下してしまうという問題が生じている。   Here, when a process is waiting for the completion of another process, if the swap process of the process to be waited frequently occurs and the time until completion is delayed, the next process cannot be started and a waiting time occurs. Therefore, there is a problem that the processing performance of the entire system is deteriorated.

本発明は、このような問題点を解決するためになされたものであり、処理性能を向上させることができるキャッシュメモリ制御システム、その制御方法及び制御プログラムを提供することを主たる目的とする。   The present invention has been made to solve such problems, and a main object of the present invention is to provide a cache memory control system, a control method thereof, and a control program capable of improving the processing performance.

上記目的を達成するための本発明の一態様は、複数のプロセッサから出力される所定情報を、キャッシュメモリの各レベルに夫々記憶させる制御を行うと共に、前記所定情報は、前記出力先のプロセッサを示すソース情報を含む、キャッシュメモリ制御システムであって、前記ソース情報毎に、前記キャッシュメモリの各レベルに記憶されている前記ソース情報の数をカウントしカウント値として算出するカウント手段と、前記カウント手段により算出された前記ソース情報毎のカウント値に基づいて、前記キャッシュメモリの各レベルのうちスワップ処理の対象となるレベルの優先順位を決定する優先順位決定手段と、 前記優先順位決定手段により決定された前記優先順位に基づいて、前記キャッシュメモリの各レベルうち、スワップ処理を行う前記レベルを決定するレベル決定手段と、を備える、ことを特徴とするキャッシュメモリ制御システムである。   To achieve the above object, according to one aspect of the present invention, control is performed to store predetermined information output from a plurality of processors in each level of a cache memory, and the predetermined information is stored in the output destination processor. A cache memory control system including source information indicating, for each source information, counting means for counting the number of the source information stored in each level of the cache memory and calculating as a count value; Priority level determining means for determining a priority level of a level to be swapped among the levels of the cache memory based on the count value for each source information calculated by the means; and determined by the priority level determining means Of the cache memory levels, swap processing is performed based on the prioritized priority. And a level determining means for determining the level of performing a cache memory control system, characterized in that.

また、上記目的を達成するための本発明の一態様は、複数のプロセッサから出力される所定情報を、キャッシュメモリの各レベルに夫々記憶させる制御を行うと共に、前記所定情報は、前記出力先のプロセッサを示すソース情報を含む、キャッシュメモリ制御システムの制御方法であって、前記ソース情報毎に、前記キャッシュメモリの各レベルに記憶されている前記ソース情報の数をカウントしカウント値として算出し、前記算出されたソース情報毎のカウント値に基づいて、前記キャッシュメモリの各レベルのうちスワップ処理の対象となるレベルの優先順位を決定し、前記決定された優先順位に基づいて、前記キャッシュメモリの各レベルうち、スワップ処理を行う前記レベルを決定する、ことを特徴とするキャッシュメモリ制御システムの制御方法であってもよい。   In addition, according to one aspect of the present invention for achieving the above object, control is performed to store predetermined information output from a plurality of processors in each level of a cache memory, and the predetermined information is stored in the output destination. A control method of a cache memory control system including source information indicating a processor, wherein for each source information, the number of the source information stored in each level of the cache memory is counted and calculated as a count value, Based on the calculated count value for each source information, a priority order of levels to be swapped among the respective levels of the cache memory is determined, and based on the determined priority order, the cache memory The cache memory control system is characterized in that, among the levels, the level for performing the swap processing is determined. It may be a method of controlling the beam.

さらに、上記目的を達成するための本発明の一態様は、複数のプロセッサから出力される所定情報を、キャッシュメモリの各レベルに夫々記憶させる制御を行うと共に、前記所定情報は、前記出力先のプロセッサを示すソース情報を含む、キャッシュメモリ制御システムの制御プログラムであって、前記ソース情報毎に、前記キャッシュメモリの各レベルに記憶されている前記ソース情報の数をカウントしカウント値として算出する処理と、
前記算出されたソース情報毎のカウント値に基づいて、前記キャッシュメモリの各レベルのうちスワップ処理の対象となるレベルの優先順位を決定する処理と、前記決定された優先順位に基づいて、前記キャッシュメモリの各レベルうち、スワップ処理を行う前記レベルを決定する処理と、をコンピュータに実行させることを特徴とするキャッシュメモリ制御システムの制御プログラムであってもよい。
Furthermore, according to one aspect of the present invention for achieving the above object, control is performed such that predetermined information output from a plurality of processors is stored in each level of a cache memory, and the predetermined information is stored in the output destination. A control program for a cache memory control system, including source information indicating a processor, wherein for each source information, the number of the source information stored in each level of the cache memory is counted and calculated as a count value When,
Based on the calculated count value for each source information, processing for determining a priority level of a level to be swapped among the levels of the cache memory, and based on the determined priority level, the cache A control program for a cache memory control system that causes a computer to execute a process for determining the level for performing a swap process among the levels of the memory may be used.

本発明によれば、処理性能を向上させることができるキャッシュメモリ制御システム、その制御方法及び制御プログラムを提供することができる。   ADVANTAGE OF THE INVENTION According to this invention, the cache memory control system which can improve processing performance, its control method, and a control program can be provided.

本発明の一実施形態に係るキャッシュメモリ制御システムの機能ブロック図である。It is a functional block diagram of a cache memory control system according to an embodiment of the present invention. 本発明の一実施形態に係るキャッシュメモリ制御システムの概略的な構成を示すブロック図である。1 is a block diagram showing a schematic configuration of a cache memory control system according to an embodiment of the present invention. 本発明の一実施形態に係るキャッシュメモリ制御システムの制御処理フローの一例を示すフローチャートである。It is a flowchart which shows an example of the control processing flow of the cache memory control system which concerns on one Embodiment of this invention.

以下、図面を参照して本発明の実施形態について説明する。図1は、本発明の一実施形態に係るキャッシュメモリ制御システムの機能ブロック図である。本実施形態に係るキャッシュメモリ制御システム1は、複数のプロセッサ11から出力される所定情報を、キャッシュメモリ12の各レベルに夫々記憶させる制御を行うものである。ここで、所定情報は、出力先のプロセッサ11を示すソース情報を含んでいる。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a functional block diagram of a cache memory control system according to an embodiment of the present invention. The cache memory control system 1 according to the present embodiment performs control to store predetermined information output from a plurality of processors 11 at each level of the cache memory 12. Here, the predetermined information includes source information indicating the output destination processor 11.

また、キャッシュメモリ制御システム1は、ソース情報毎に、キャッシュメモリ12の各レベルに記憶されているソース情報の数を、カウント値として算出するカウント手段2と、カウント手段2により算出されたソース情報毎のカウント値に基づいて、キャッシュメモリ12の各レベルのうちスワップ処理の対象となるレベルの優先順位を決定する優先順位決定手段3と、優先順位決定手段3により決定された優先順位に基づいて、キャッシュメモリ12の各レベルうち、スワップ処理を行うレベルを決定するレベル決定手段4と、を備えている。   The cache memory control system 1 also counts the number of source information stored in each level of the cache memory 12 for each source information as a count value, and the source information calculated by the count means 2 Based on the count value for each level, priority level determining means 3 for determining the priority level of the level to be swapped among the levels of the cache memory 12, and based on the priority level determined by the priority level determining means 3 The level determining means 4 for determining the level for performing the swap processing among the levels of the cache memory 12 is provided.

これにより、ソース情報毎にキャッシュメモリ12の使用率を均等化することができ、極端に性能低下するソースを排除することで、当該システム1全体の処理性能を向上させることができる。   As a result, the usage rate of the cache memory 12 can be equalized for each source information, and the processing performance of the entire system 1 can be improved by eliminating sources whose performance is extremely reduced.

図2は、本発明の一実施形態に係るキャッシュメモリ制御システムの概略的な構成を示すブロック図である。本実施形態に係るキャッシュメモリ制御システム1は、複数のプロセッサ11から出力される所定情報を、キャッシュメモリ12に夫々記憶させる制御を行う。   FIG. 2 is a block diagram showing a schematic configuration of a cache memory control system according to an embodiment of the present invention. The cache memory control system 1 according to this embodiment performs control to store predetermined information output from the plurality of processors 11 in the cache memory 12.

ここで、所定情報は、例えば、各プロセッサ11の処理内容を示し、キャッシュメモリ12に登録されるトランザクション情報100などの情報であり、出力先のプロセッサ11を示すソース情報を含んでいる。また、各ソース情報は、単一のプロセッサ11を示すものであってよく、任意に組み合わせた複数のプロセッサ11を示すものであってもよい。   Here, the predetermined information indicates, for example, processing contents of each processor 11, is information such as transaction information 100 registered in the cache memory 12, and includes source information indicating the output destination processor 11. Each source information may indicate a single processor 11 or may indicate a plurality of processors 11 arbitrarily combined.

本実施形態に係るキャッシュメモリ制御システム1は、キャッシュメモリ12と、索引回路13と、第1レジスタ回路14と、カウント回路15と、優先順位決定回路16と、割合算出回路17と、レベル決定回路18と、レベル選択回路19と、第2レジスタ回路20と、マージ回路21と、を備えている。   The cache memory control system 1 according to the present embodiment includes a cache memory 12, an index circuit 13, a first register circuit 14, a count circuit 15, a priority determination circuit 16, a ratio calculation circuit 17, and a level determination circuit. 18, a level selection circuit 19, a second register circuit 20, and a merge circuit 21.

キャッシュメモリ12は、例えば、複数のプロセッサ(マルチプロセッサ)11から夫々出力されるトランザクション情報100と、そのトランザクション情報100に含まれるソース情報とを、レベル毎にセットアソシアティブ方式などを用いて記憶する。   The cache memory 12 stores, for example, transaction information 100 output from each of a plurality of processors (multiprocessors) 11 and source information included in the transaction information 100 using a set associative method for each level.

索引回路13は、索引手段の一具体例であり、キャッシュメモリ12に登録されるトランザクション情報100を受信すると、キャッシュメモリ12に記憶されている各レベルの情報の索引を実行する。そして、索引回路13は、その索引結果であるキャッシュメモリ12の各レベルの情報を、キャッシュメモリ12を介して第1レジスタ回路14に出力する。さらに、第1レジスタ回路14は、索引回路13から出力されたキャッシュメモリ12の各レベルの情報を格納する。   The index circuit 13 is a specific example of index means. When the transaction information 100 registered in the cache memory 12 is received, the index circuit 13 indexes information of each level stored in the cache memory 12. Then, the index circuit 13 outputs information on each level of the cache memory 12 that is the index result to the first register circuit 14 via the cache memory 12. Further, the first register circuit 14 stores information on each level of the cache memory 12 output from the index circuit 13.

カウント回路15は、カウント手段2の一具体例であり、例えば、アップ/ダウンカウンタとして構成されている。また、カウント回路15は、トランザクション情報100のソース情報をカウントし、ソース情報毎に、キャッシュメモリ12の各レベルに記憶されているソース情報の数をカウントし、カウント値として算出する。   The count circuit 15 is a specific example of the counting means 2 and is configured as an up / down counter, for example. The count circuit 15 counts the source information of the transaction information 100, counts the number of source information stored in each level of the cache memory 12 for each source information, and calculates the count value.

具体的には、カウント回路15は、ソース情報(ソース情報X1、ソース情報X2、ソース情報X3、・・・、ソース情報Xn)毎に対応する個別カウンタ(個別カウンタY1、個別カウンタY2、個別カウンタY3・・・、個別カウンタYn)を有している。   Specifically, the count circuit 15 includes individual counters (individual counter Y1, individual counter Y2, individual counter corresponding to each source information (source information X1, source information X2, source information X3,..., Source information Xn). Y3..., Individual counter Yn).

また、各個別カウンタYnは、対応するソース情報Xnのトランザクション情報がキャッシュメモリ12に新たに記憶されるとカウントアップ(+1)を行い、一方、対応するソース情報Xnのトランザクション情報100がスワップ処理(リプレース処理)されるとカウントダウン(−1)を行う。このように、カウント回路15の各個別カウンタY1〜Ynは、上記アップ/ダウンカウントしソース情報毎に集計したカウント値Z1〜Znを夫々、優先順位決定回路16及び割合算出回路17に出力する。   Each individual counter Yn counts up (+1) when the transaction information of the corresponding source information Xn is newly stored in the cache memory 12, while the transaction information 100 of the corresponding source information Xn is swapped ( When the replacement process is performed, a countdown (-1) is performed. In this way, the individual counters Y1 to Yn of the count circuit 15 output the count values Z1 to Zn counted up / down and totaled for each source information to the priority determination circuit 16 and the ratio calculation circuit 17, respectively.

優先順位決定回路16は、優先順位決定手段3の一具体例であり、カウント回路15により算出されたソース情報毎のカウント値Znに基づいて、キャッシュメモリ12の各レベルのうち、スワップ処理の対象となるレベルの優先順位を決定する。   The priority order determination circuit 16 is a specific example of the priority order determination means 3 and is subject to swap processing among the levels of the cache memory 12 based on the count value Zn for each source information calculated by the count circuit 15. Determine the priority of the level to be.

優先順位決定回路16は、例えば、カウント回路15により算出されたソース情報毎のカウント値Znが増加するに従って、そのソース情報Xnのトランザクション情報100に対するスワップ処理の優先順位を高く設定し、逆に、ソース情報毎のカウント値Znが減少するに従って、そのソース情報Xnのトランザクション情報100に対するスワップ処理の優先順位を低く設定する。優先順位決定回路16は、決定したスワップ処理の優先順位をレベル決定回路18に対して出力する。   For example, as the count value Zn for each source information calculated by the count circuit 15 increases, the priority determination circuit 16 sets the priority of swap processing for the transaction information 100 of the source information Xn, and conversely, As the count value Zn for each source information decreases, the priority of swap processing for the transaction information 100 of the source information Xn is set lower. The priority determination circuit 16 outputs the determined priority of swap processing to the level determination circuit 18.

割合算出回路17は、割合算出手段の一具体例であり、カウント回路15により算出されたソース情報毎のカウント値Z1〜Znの総合計値(ΣZn)を算出し、キャッシュメモリ12の全容量数に対する総合計値の割合を算出する。   The ratio calculation circuit 17 is a specific example of the ratio calculation means, calculates the total value (ΣZn) of the count values Z1 to Zn for each source information calculated by the count circuit 15, and calculates the total capacity number of the cache memory 12. The ratio of the grand total value to is calculated.

具体的には、割合算出回路17は、カウンタ回路15の各個別カウンタY1〜Ynから出力される各カウント値Z1〜Znの総合計値を算出し、算出した総合計値をキャッシュメモリ12の全容量数(キャッシュメモリ12に記憶可能なトランザクション情報100の数)で除算することで、上記総合計値の割合を算出する。割合算出回路17は、算出した総合計値の割合を、レベル決定回路18に対して出力する。   Specifically, the ratio calculation circuit 17 calculates the total value of the count values Z1 to Zn output from the individual counters Y1 to Yn of the counter circuit 15, and uses the calculated total value in the cache memory 12 as a whole. By dividing by the number of capacities (the number of transaction information 100 that can be stored in the cache memory 12), the ratio of the total value is calculated. The ratio calculation circuit 17 outputs the calculated ratio of the total value to the level determination circuit 18.

レベル決定回路18は、レベル決定手段の一具体例であり、第1レジスタ回路14に格納されたキャッシュメモリ12の各レベルの情報とトランザクション情報100のキーアドレス101との比較結果、優先順位決定回路16により決定された優先順位、および、割合算出回路17により算出された総合計値の割合、に基づいて、スワップ処理を行うレベルを決定する。また、レベル決定回路18は、ヒットレベル決定部181と、ミスレベル決定部182と、スワップレベル決定部183と、レベル決定部184と、を有している。   The level determination circuit 18 is a specific example of level determination means. The level determination circuit 18 compares the information of each level of the cache memory 12 stored in the first register circuit 14 with the key address 101 of the transaction information 100, and the priority determination circuit. The level for performing the swap process is determined based on the priority order determined by 16 and the ratio of the total value calculated by the ratio calculation circuit 17. The level determination circuit 18 includes a hit level determination unit 181, a miss level determination unit 182, a swap level determination unit 183, and a level determination unit 184.

ヒットレベル決定部181は、第1レジスタ回路14に格納されたキャッシュメモリ12の各レベルの情報のうち、キーアドレス101と一致したレベル(ヒットレベル)を抽出し、レベル決定部184に対して出力する。また、ミスレベル決定部182は、第1レジスタ回路14に格納されたキャッシュメモリ12の各レベルの情報のうち、キーアドレス101と一致するレベルがないとき、キャッシュメモリ12内で空いているレベル(ミスレベル)を抽出し、レベル決定部184に対して出力する。   The hit level determination unit 181 extracts the level (hit level) that matches the key address 101 from the information of each level of the cache memory 12 stored in the first register circuit 14 and outputs it to the level determination unit 184. To do. Further, the miss level determination unit 182 has a level that is free in the cache memory 12 when there is no level that matches the key address 101 among the information of each level of the cache memory 12 stored in the first register circuit 14 ( Miss level) is extracted and output to the level determination unit 184.

さらに、スワップレベル決定部183は、キーアドレス101と一致したレベルがなく、かつキャッシュメモリ12内で空いているレベルがないときに、すなわち、上記キャッシュメモリ12のヒット及びミスに関係なく、優先順位決定回路16により決定された優先順位と、割合算出回路17により算出された総合計値の割合と、に基づいて、スワップ処理を行うレベル(スワップレベル)を決定し、レベル決定部184に対して出力する。   Further, the swap level determination unit 183 determines the priority level when there is no level that matches the key address 101 and there is no level that is free in the cache memory 12, that is, regardless of the hit and miss of the cache memory 12. Based on the priority order determined by the determination circuit 16 and the ratio of the total value calculated by the ratio calculation circuit 17, a level (swap level) for performing the swap processing is determined, and the level determination unit 184 is determined. Output.

例えば、スワップレベル決定部183は、優先順位決定回路16により決定された優先順位が最も高いレベルを、スワップ処理を行うレベルとして決定してもよい。また、スワップレベル決定部183は、割合算出回路17により算出された総合計値の割合が低い場合、ラウンドロビンやLRUなどの周知の方法でスワップ処理を行うレベルを決定し、総合計値の割合が所定割合以上となると、上述のように優先順位決定回路16により決定された優先順位に従って、スワップ処理を行うレベルを決定するのが好ましい。   For example, the swap level determination unit 183 may determine the level with the highest priority determined by the priority determination circuit 16 as the level for performing the swap process. In addition, when the ratio of the total value calculated by the ratio calculation circuit 17 is low, the swap level determination unit 183 determines the level for performing the swap process by a known method such as round robin or LRU, and the ratio of the total value When the value becomes equal to or greater than the predetermined ratio, it is preferable to determine the level for performing the swap processing according to the priority order determined by the priority order determination circuit 16 as described above.

また、レベル決定部184は、スワップレベル決定部183から出力されるレベルを、スワップ処理を行うレベルとして決定する。   Further, the level determination unit 184 determines the level output from the swap level determination unit 183 as the level for performing the swap process.

さらに、レベル決定部184は、キーアドレス101と一致した場合、ヒットレベル決定部181からのヒットレベルをレベル選択回路19に出力し、キーアドレス101と一致せず空きレベルがある場合、ミスレベル決定部182からのミスレベルをレベル選択回路19に出力し、キーアドレス101と一致せずかつ空きレベルもない場合、スワップレベル決定部183からのスワップレベルをレベル選択回路19に出力する。   Further, the level determination unit 184 outputs the hit level from the hit level determination unit 181 to the level selection circuit 19 when it matches the key address 101, and determines the miss level when there is an empty level that does not match the key address 101. The miss level from the unit 182 is output to the level selection circuit 19, and if it does not match the key address 101 and there is no empty level, the swap level from the swap level determination unit 183 is output to the level selection circuit 19.

レベル選択回路19は、レベル選択手段の一具体例であり、第1レジスタ回路14に格納されたキャッシュメモリ12の各レベルの情報のうち、レベル決定部184から出力されたレベルの情報を選択し、選択したレベルの情報を第2レジスタ回路20に格納する。   The level selection circuit 19 is a specific example of level selection means, and selects the level information output from the level determination unit 184 from the information of each level of the cache memory 12 stored in the first register circuit 14. The information of the selected level is stored in the second register circuit 20.

第2レジスタ回路20に格納されたレベルの情報は、以降の処理に使用されるため、第2レジスタ回路20から出力され、また、キャッシュメモリ12の更新のためマージ回路21に入力される。そして、マージ回路21は、マージ処理したマージ情報をキャッシュメモリ12及びカウント回路15の各個別カウンタYnに出力する。   The level information stored in the second register circuit 20 is output from the second register circuit 20 to be used for subsequent processing, and is input to the merge circuit 21 for updating the cache memory 12. Then, the merge circuit 21 outputs the merged merge information to the cache memory 12 and the individual counters Yn of the count circuit 15.

ここで、キャッシュメモリ12には、上記マージ情報が新規のトランザクション情報100として入力される。また、上述のようにキャッシュメモリ12の全レベルが記憶済みであるためスワップ処理が実行された場合、スワップ処理されるトランザクション情報100のソース情報Xnに応じて、対応する個別カウンタYnは、カウント値Znをカウントダウンする。   Here, the merge information is input as new transaction information 100 to the cache memory 12. Further, since all levels of the cache memory 12 have been stored as described above, when the swap process is executed, the corresponding individual counter Yn has a count value corresponding to the source information Xn of the transaction information 100 to be swapped. Count down Zn.

これにより、ソース情報毎に、キャッシュメモリ12に記憶されているソース情報Xnの数を管理することができ、各個別カウンタYnのカウント値Znの総合計が、キャッシュメモリ12に記憶されているトランザクション情報(ソース情報)の総合計と一致することになる。   As a result, the number of source information Xn stored in the cache memory 12 can be managed for each source information, and the total sum of the count values Zn of the individual counters Yn is stored in the transaction stored in the cache memory 12. This is consistent with the grand total of information (source information).

なお、このトランザクション情報100の総合計が小さい(総合計値の割合が低い)場合は、上述のように、キャッシュメモリ12の容量にまだ余裕があるため、プロセス毎に管理する必要もなく従来の方法によりスワップレベルの決定を行えばよい。スワップレベルを各ソース情報Xnの数が均等になるように決定する本発明の方法と、従来の方法とを切り替えるのは、総合計値の割合で判断しているが、初期設定時に切替え点を設定できるようになっているため、システム全体の性能を見極めて設定値を変更することで、最適な性能を引き出すことができる。   When the total sum of the transaction information 100 is small (the ratio of the total sum value is low), the capacity of the cache memory 12 is still sufficient as described above, so there is no need to manage each process and the conventional information The swap level may be determined by a method. Switching between the method of the present invention for determining the swap level so that the number of each source information Xn is equal to the conventional method is determined by the ratio of the total value, but the switching point is set at the initial setting. Since it can be set, the optimum performance can be derived by checking the performance of the entire system and changing the setting value.

次に、本実施の形態に係るキャッシュメモリ制御システム1の制御方法について、詳細に説明する。図3は、本実施形態に係るキャッシュメモリ制御システムの制御処理フローの一例を示すフローチャートである。   Next, the control method of the cache memory control system 1 according to the present embodiment will be described in detail. FIG. 3 is a flowchart showing an example of a control processing flow of the cache memory control system according to the present embodiment.

各プロセッサ11からキャッシュメモリ12に登録されるトランザクション情報100が出力され(ステップS101)、カウント回路15及び索引回路13に夫々入力される。   Transaction information 100 registered in the cache memory 12 is output from each processor 11 (step S101) and input to the count circuit 15 and the index circuit 13, respectively.

カウント回路15の対応する個別カウンタYnは、トランザクション情報100のソース情報Xnに基づいて、カウント値Znをカウントアップし(ステップS102)、優先順位決定回路16は、カウント回路15の各個別カウンタYnによりカウントされたソース情報毎のカウント値Znに基づいて、キャッシュメモリ12の各レベルのうち、スワップ処理の対象となるレベルの優先順位を決定する(ステップS103)。   The corresponding individual counter Yn of the count circuit 15 counts up the count value Zn based on the source information Xn of the transaction information 100 (step S102), and the priority order determination circuit 16 uses each individual counter Yn of the count circuit 15 to count up. Based on the counted value Zn for each source information, the priority level of the level to be swapped among the levels of the cache memory 12 is determined (step S103).

また、割合算出回路17は、カウント回路15により算出されたソース情報毎のカウント値Z1〜Znの総合計値を算出し、キャッシュメモリ12の全容量数に対する算出した総合計値の割合を算出する(ステップS104)。   In addition, the ratio calculation circuit 17 calculates the total value of the count values Z1 to Zn for each source information calculated by the count circuit 15, and calculates the ratio of the calculated total value to the total capacity number of the cache memory 12. (Step S104).

一方、索引回路13は、キャッシュメモリ12に記憶されている各レベルの情報の索引を実行する(ステップS105)。   On the other hand, the index circuit 13 performs indexing of information at each level stored in the cache memory 12 (step S105).

次に、レベル決定回路18のヒットレベル決定部181は、第1レジスタ回路14に格納されたキャッシュメモリ12の各レベルの情報のうち、キーアドレスと一致したヒットレベルを抽出したとき(ステップS106のYES)、抽出したヒットレベルをレベル決定部184に対して出力し、必要に応じてヒットレベルの更新が行われ(ステップS107)、本処理を終了する。   Next, when the hit level determination unit 181 of the level determination circuit 18 extracts the hit level that matches the key address from the information of each level of the cache memory 12 stored in the first register circuit 14 (in step S106). (YES), the extracted hit level is output to the level determining unit 184, the hit level is updated as necessary (step S107), and this process ends.

また、ミスレベル決定部182は、第1レジスタ回路14に格納されたキャッシュメモリ12の各レベルの情報のうち、キーアドレスと一致するレベルがなく(ステップS106のNO)、キャッシュメモリ12内で空いているミスレベルを抽出したとき(ステップS108のYES)、抽出したミスレベルをレベル決定部184に対して出力し、ミスレベルへのトランザクション情報の登録が行われ(ステップS109)、本処理を終了する。   Further, the miss level determination unit 182 has no level that matches the key address among the information of each level of the cache memory 12 stored in the first register circuit 14 (NO in step S106), and is empty in the cache memory 12. When the current miss level is extracted (YES in step S108), the extracted miss level is output to the level determining unit 184, transaction information is registered in the miss level (step S109), and this process is terminated. To do.

さらに、スワップレベル決定部184が、キーアドレスと一致したレベルがなく、かつキャッシュメモリ12内で空いているレベルがないとき(ステップS108のNO)、スワップレベル決定部183は、割合算出回路17により算出された総合計値の割合が所定割合以上であるか否かを判断する(ステップS110)。   Furthermore, when the swap level determination unit 184 has no level that matches the key address and there is no level free in the cache memory 12 (NO in step S108), the swap level determination unit 183 causes the ratio calculation circuit 17 to It is determined whether or not the ratio of the calculated total value is equal to or greater than a predetermined ratio (step S110).

スワップレベル決定部183は、割合算出回路17により算出された総合計値の割合が所定割合以上であると判断すると(ステップS110のYES)、優先順位決定回路16により決定された優先順位に従って、スワップ処理を行うレベルを決定し(ステップS111)、その決定されたレベルに対してスワップ処理が行われると共に、新規のトランザクション情報が登録される。   When the swap level determination unit 183 determines that the ratio of the total value calculated by the ratio calculation circuit 17 is equal to or greater than a predetermined ratio (YES in step S110), the swap level determination unit 183 swaps according to the priority determined by the priority determination circuit 16 A level to be processed is determined (step S111), swap processing is performed for the determined level, and new transaction information is registered.

一方、スワップレベル決定部183は、割合算出回路17により算出された総合計値の割合が所定割合以上でないと判断すると(ステップS110のNO)、従来の方法でスワップ処理を行うレベルを決定し(ステップ112)、その決定されたレベルに対してスワップ処理が行われると共に、新規のトランザクション情報が登録される。   On the other hand, if the swap level determination unit 183 determines that the ratio of the total value calculated by the ratio calculation circuit 17 is not equal to or greater than the predetermined ratio (NO in step S110), the swap level determination unit 183 determines a level for performing the swap process by the conventional method ( Step 112), swap processing is performed for the determined level, and new transaction information is registered.

以上、本実施形態に係るキャッシュメモリ制御システム1によれば、ソース情報毎にキャッシュメモリ12の使用率を均等化することができ、極端に性能低下するソース(プロセッサ11)を排除することで、当該システム1全体の処理性能を向上させることができる。なお、簡易な構成で、しかもスワップ処理時のレベル選択制御を僅かに変更するだけで、上記処理性能を向上させることができるためコスト低減に繋がる。また、初期設定を変更するだけで、当該システム1の最適な性能を引き出すことができるため、システムの柔軟性も確保できる。   As described above, according to the cache memory control system 1 according to the present embodiment, the usage rate of the cache memory 12 can be equalized for each source information, and by eliminating the source (processor 11) whose performance is extremely reduced, The processing performance of the entire system 1 can be improved. Note that the processing performance can be improved with a simple configuration and a slight change in the level selection control at the time of swap processing, leading to cost reduction. In addition, since the optimum performance of the system 1 can be extracted only by changing the initial setting, the flexibility of the system can be ensured.

なお、本発明は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。   In addition, this invention is not limited to the said embodiment, It is possible to change suitably in the range which does not deviate from the meaning.

例えば、上記一実施形態において、キャッシュメモリ12の一貫性を保つためのキャッシュコヒーレンシを管理するスヌープ方式やディレクトリ方式を適用することも可能である。この場合、キャッシュメモリ制御システム1は、スヌープ方式ではタグを、ディレクトリ方式ではディレクトリを有し、キャッシュメモリ12に登録している情報を予め決められたアルゴリズムで管理する。タグ及びディレクトリにおいて、キャッシュメモリ12の基本的な構造は同一で、スワップ処理が必要であるため、上記実施形態と同様の効果が期待できる。   For example, in the above-described embodiment, a snoop method or a directory method for managing cache coherency for maintaining the consistency of the cache memory 12 can be applied. In this case, the cache memory control system 1 has a tag in the snoop method and a directory in the directory method, and manages information registered in the cache memory 12 using a predetermined algorithm. In the tag and the directory, the basic structure of the cache memory 12 is the same, and swap processing is required. Therefore, the same effect as in the above embodiment can be expected.

また、本発明は、任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、記録媒体に記録して提供することも可能であり、また、インターネットその他の通信媒体を介して伝送することにより提供することも可能である。また、記憶媒体には、例えば、フレキシブルディスク、ハードディスク、磁気ディスク、光磁気ディスク、CD−ROM、DVD、ROMカートリッジ、バッテリバックアップ付きRAMメモリカートリッジ、フラッシュメモリカートリッジ、不揮発性RAMカートリッジ等が含まれる。また、通信媒体には、電話回線等の有線通信媒体、マイクロ波回線等の無線通信媒体等が含まれる。   The present invention can also realize arbitrary processing by causing a CPU (Central Processing Unit) to execute a computer program. In this case, the computer program can be provided by being recorded on a recording medium, or can be provided by being transmitted via the Internet or another communication medium. The storage medium includes, for example, a flexible disk, hard disk, magnetic disk, magneto-optical disk, CD-ROM, DVD, ROM cartridge, RAM memory cartridge with battery backup, flash memory cartridge, and nonvolatile RAM cartridge. The communication medium includes a wired communication medium such as a telephone line, a wireless communication medium such as a microwave line, and the like.

1 キャッシュメモリ制御システム
2 カウント手段
3 優先順位決定手段
4 レベル決定手段
11 プロセッサ
12 キャッシュメモリ
13 索引回路
14 第1レジスタ回路
15 カウント回路
16 優先順位決定回路
17 割合算出回路
18 レベル決定回路
19 レベル選択回路
20 第2レジスタ回路
21 マージ回路
181 ヒットレベル決定部
182 ミスレベル決定部
183 スワップレベル決定部
184 レベル決定部
DESCRIPTION OF SYMBOLS 1 Cache memory control system 2 Count means 3 Priority order determination means 4 Level determination means 11 Processor 12 Cache memory 13 Index circuit 14 First register circuit 15 Count circuit 16 Priority order determination circuit 17 Ratio calculation circuit 18 Level determination circuit 19 Level selection circuit 19 Level selection circuit 20 Second register circuit 21 Merge circuit 181 Hit level determination unit 182 Miss level determination unit 183 Swap level determination unit 184 Level determination unit

Claims (7)

複数のプロセッサから出力される所定情報を、キャッシュメモリの各レベルに夫々記憶させる制御を行うと共に、
前記所定情報は、前記出力先のプロセッサを示すソース情報を含む、キャッシュメモリ制御システムであって、
前記ソース情報毎に、前記キャッシュメモリの各レベルに記憶されている前記ソース情報の数をカウントしカウント値として算出するカウント手段と、
前記カウント手段により算出された前記ソース情報毎のカウント値が増加するに従がって、前記キャッシュメモリの各レベルのうち、スワップ処理の対象となるレベルの優先順位を高く決定する優先順位決定手段と、
前記優先順位決定手段により決定された前記優先順位に基づいて、前記キャッシュメモリの各レベルうち、スワップ処理を行う前記レベルを決定するレベル決定手段と、
を備える、ことを特徴とするキャッシュメモリ制御システム。
Control is performed to store predetermined information output from a plurality of processors in each level of the cache memory, and
The predetermined information is a cache memory control system including source information indicating the output destination processor,
Counting means for counting the number of the source information stored in each level of the cache memory for each source information and calculating as a count value;
Slave is I the count value of each of the source information calculated by said counting means increases, among the level of the cache memory, priority determining means for increasing determining the level of priority to be swap process When,
Level determining means for determining the level to be swapped out of the levels of the cache memory based on the priority determined by the priority determining means;
A cache memory control system comprising:
請求項記載のキャッシュメモリ制御システムであって、
前記カウント手段により算出された前記ソース情報毎のカウント値の総合計値を算出し、前記キャッシュメモリの全容量数に対する前記算出した総合計値の割合を算出する割合算出手段を更に備え、
前記レベル決定手段は、前記割合算出手段により算出された前記割合が所定割合以上となるとき、前記優先順位決定手段により決定された前記優先順位に従って、前記スワップ処理を行うレベルを決定する、ことを特徴とするキャッシュメモリ制御システム。
The cache memory control system according to claim 1 ,
Calculating a total sum of count values for each of the source information calculated by the counting means, further comprising a ratio calculating means for calculating a ratio of the calculated total total value to the total capacity number of the cache memory;
The level determining means determines a level for performing the swap process according to the priority determined by the priority determining means when the ratio calculated by the ratio calculating means is equal to or greater than a predetermined ratio; A featured cache memory control system.
請求項1又は2記載のキャッシュメモリ制御システムであって、
前記キャッシュメモリに記憶されている各レベルの情報の索引を行う索引手段と、
前記索引手段により索引された索引結果である前記キャッシュメモリの各レベルの情報を格納する第1レジスタ手段と、を更に備え、
前記レベル決定手段は、前記第1レジスタ手段に格納された前記キャッシュメモリの各レベルの情報と前記所定情報のキーアドレスとの比較結果、および、前記優先順位決定手段により決定された前記優先順位に基づいて、前記スワップ処理を行うレベルを決定する、ことを特徴とするキャッシュメモリ制御システム。
The cache memory control system according to claim 1 or 2 ,
Index means for indexing each level of information stored in the cache memory;
First register means for storing information of each level of the cache memory that is an index result indexed by the index means;
The level determining means includes a result of comparing the information of each level of the cache memory stored in the first register means and the key address of the predetermined information, and the priority determined by the priority determining means. A cache memory control system, wherein a level for performing the swap process is determined based on the level.
請求項記載のキャッシュメモリ制御システムであって、
前記レベル決定手段は、
前記各レベルの情報のうち、前記キーアドレスと一致した前記レベルを抽出し、出力するヒットレベル決定部と、
前記各レベルの情報のうち、前記キーアドレスと一致する前記レベルがないとき、前記キャッシュメモリ内で空いているレベルを抽出し、出力するミスレベル決定部と、
前記キーアドレスと一致するレベルがなく、かつ前記キャッシュメモリ内で空いているレベルがないときに、前記優先順位決定手段により決定された前記優先順位に基づいて、前記スワップ処理を行うレベルを決定するスワップレベル決定部と、
前記ヒットレベル決定部、前記ミスレベル決定部、又は前記スワップレベル決定部から出力される前記レベルを決定するレベル決定部と、
を有する、ことを特徴とするキャッシュメモリ制御システム。
The cache memory control system according to claim 3 ,
The level determining means includes
A hit level determination unit that extracts and outputs the level that matches the key address from the information of each level;
When there is no level that matches the key address among the information of each level, a miss level determination unit that extracts and outputs a level that is free in the cache memory;
When there is no level that matches the key address and there is no free level in the cache memory, the level for performing the swap processing is determined based on the priority determined by the priority determination means. A swap level determination unit;
A level determination unit that determines the level output from the hit level determination unit, the miss level determination unit, or the swap level determination unit;
A cache memory control system.
請求項3又は4記載のキャッシュメモリ制御システムであって、
前記第1レジスタ手段に格納された前記キャッシュメモリの各レベルの情報のうち、前記レベル決定手段により決定された前記レベルの情報を選択するレベル選択手段と、
前記レベル選択手段により選択された前記レベルの情報を格納する第2レジスタ手段と、を更に備える、ことを特徴とするキャッシュメモリ制御システム。
The cache memory control system according to claim 3 or 4 ,
Level selection means for selecting the level information determined by the level determination means among the information on each level of the cache memory stored in the first register means;
And a second register means for storing information of the level selected by the level selection means.
複数のプロセッサから出力される所定情報を、キャッシュメモリの各レベルに夫々記憶させる制御を行うと共に、前記所定情報は、前記出力先のプロセッサを示すソース情報を含む、キャッシュメモリ制御システムの制御方法であって、
前記ソース情報毎に、前記キャッシュメモリの各レベルに記憶されている前記ソース情報の数をカウントしカウント値として算出し、
前記算出されたソース情報毎のカウント値が増加するに従がって、前記キャッシュメモリの各レベルのうち、スワップ処理の対象となるレベルの優先順位を高く決定し、
前記決定された優先順位に基づいて、前記キャッシュメモリの各レベルうち、スワップ処理を行う前記レベルを決定する、
ことを特徴とするキャッシュメモリ制御システムの制御方法。
Control of storing predetermined information output from a plurality of processors at each level of the cache memory, and the predetermined information includes source information indicating the output destination processor. There,
For each source information, the number of the source information stored in each level of the cache memory is counted and calculated as a count value,
As the calculated count value for each source information increases , among the levels of the cache memory, the priority level of the level to be swapped is determined high ,
Based on the determined priority order, the level for performing the swap process is determined among the levels of the cache memory.
And a control method of a cache memory control system.
複数のプロセッサから出力される所定情報を、キャッシュメモリの各レベルに夫々記憶させる制御を行うと共に、前記所定情報は、前記出力先のプロセッサを示すソース情報を含む、キャッシュメモリ制御システムの制御プログラムであって、
前記ソース情報毎に、前記キャッシュメモリの各レベルに記憶されている前記ソース情報の数をカウントしカウント値として算出する処理と、
前記算出されたソース情報毎のカウント値が増加するに従がって、前記キャッシュメモリの各レベルのうち、スワップ処理の対象となるレベルの優先順位を高く決定する処理と、
前記決定された優先順位に基づいて、前記キャッシュメモリの各レベルうち、スワップ処理を行う前記レベルを決定する処理と、
をコンピュータに実行させることを特徴とするキャッシュメモリ制御システムの制御プログラム。
Control for storing predetermined information output from a plurality of processors at each level of the cache memory, and the predetermined information is a control program for a cache memory control system including source information indicating the output destination processor. There,
For each source information, a process of counting the number of the source information stored in each level of the cache memory and calculating as a count value;
Follow the I count value for each source information the calculated increases, among the level of the cache memory, a process of increasing determining the level of priority to be swap process,
Based on the determined priority order, a process for determining the level to be swapped out of each level of the cache memory;
A control program for a cache memory control system, which causes a computer to execute
JP2010049310A 2010-03-05 2010-03-05 Cache memory control system, control method thereof, and control program Expired - Fee Related JP5557313B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010049310A JP5557313B2 (en) 2010-03-05 2010-03-05 Cache memory control system, control method thereof, and control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010049310A JP5557313B2 (en) 2010-03-05 2010-03-05 Cache memory control system, control method thereof, and control program

Publications (2)

Publication Number Publication Date
JP2011186617A JP2011186617A (en) 2011-09-22
JP5557313B2 true JP5557313B2 (en) 2014-07-23

Family

ID=44792827

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010049310A Expired - Fee Related JP5557313B2 (en) 2010-03-05 2010-03-05 Cache memory control system, control method thereof, and control program

Country Status (1)

Country Link
JP (1) JP5557313B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62203251A (en) * 1986-03-03 1987-09-07 Nec Corp Replacement control system for shared cache memory
JPH05216765A (en) * 1992-02-06 1993-08-27 Hitachi Ltd Hierarchical buffer storage device
JPH09101916A (en) * 1995-10-06 1997-04-15 Fujitsu Ltd Multi-process processor
JP5217432B2 (en) * 2007-12-28 2013-06-19 富士通株式会社 Cache memory with sector function

Also Published As

Publication number Publication date
JP2011186617A (en) 2011-09-22

Similar Documents

Publication Publication Date Title
JP5487306B2 (en) Cache prefill in thread transport
US10353819B2 (en) Next line prefetchers employing initial high prefetch prediction confidence states for throttling next line prefetches in a processor-based system
JP7366122B2 (en) Processor filtered branch prediction structure
CN101937331B (en) Method, device and system for adaptively handling remote atomic execution
US10303479B2 (en) Efficient random number generation for update events in multi-bank conditional branch predictor
US20130007373A1 (en) Region based cache replacement policy utilizing usage information
CN109308191B (en) Branch prediction method and device
JP6166616B2 (en) Information processing method, information processing apparatus, and program
JP2009543223A5 (en)
JP2016503205A5 (en)
CN114600091B (en) Reuse distance based cache management
CN106569960A (en) Last stage cache management method for mixed main store
US20140281246A1 (en) Instruction boundary prediction for variable length instruction set
US10599577B2 (en) Admission control for memory access requests
JP5557313B2 (en) Cache memory control system, control method thereof, and control program
CN116991855B (en) Hash table processing method, device, equipment, medium, controller and solid state disk
CN109544329B (en) Matching method, device and system
US9110811B2 (en) Prefetching method and apparatus
WO2016043271A1 (en) Processor and processor system
US11182293B2 (en) Operating different processor cache levels
CN120670336B (en) Variable cache system
CN118939319B (en) CPU instruction processing method and related device
CN119539106B (en) Task execution method, device, electronic device and storage medium
JP2007293814A (en) Processor device and processing method therefor
KR20250048797A (en) That latency cache

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130207

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140228

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: 20140507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140530

R150 Certificate of patent or registration of utility model

Ref document number: 5557313

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees