New! View global litigation for patent families

JP6273678B2 - Storage devices - Google Patents

Storage devices

Info

Publication number
JP6273678B2
JP6273678B2 JP2013041216A JP2013041216A JP6273678B2 JP 6273678 B2 JP6273678 B2 JP 6273678B2 JP 2013041216 A JP2013041216 A JP 2013041216A JP 2013041216 A JP2013041216 A JP 2013041216A JP 6273678 B2 JP6273678 B2 JP 6273678B2
Authority
JP
Grant status
Grant
Patent type
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.)
Active
Application number
JP2013041216A
Other languages
Japanese (ja)
Other versions
JP2014170325A (en )
Inventor
周吾 小川
周吾 小川
Original Assignee
日本電気株式会社
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
Grant date

Links

Description

本発明はストレージ装置に関する。 The present invention relates to a storage device.

情報通信技術の進化とその適用分野の拡大に伴い、情報処理システムが扱うデータ量が日々増加している。 With the expansion of the evolution and application fields of information and communication technologies, the amount of data handled by the information processing system is increasing day by day. 情報処理システムの種類、数の増加に伴い、それらのデータを格納するために大容量かつ高性能なストレージに対する要求が増加している。 Type of information processing system, with increasing number of requests for large capacity and high-performance storage for storing these data is increasing. ストレージ管理を効率化するために、複数のシステムのデータの単一ストレージへの集約が行われている。 For more efficient storage management, aggregation into a single storage data of a plurality of systems is performed. 単一のストレージに複数のシステムのデータを格納する場合、ストレージに対して大量のデータを格納可能な記憶容量(大容量化)と、複数システムからの大量のアクセスを処理する高性能化が求められる。 When storing data of a plurality of systems into a single storage, storable storage capacity large amounts of data to the storage and (large capacity), required performance to process a large number of access from multiple systems It is.

HDD(Hard Disk Drive)の大容量化に伴い、記憶媒体としてHDDを用いることで記憶容量の大容量化への対応が可能である。 As the capacity of the HDD (Hard Disk Drive), corresponding it is possible to the memory capacity by using an HDD as a storage medium. さらにストレージを構成する記憶媒体数の増減により、記憶容量への要求に柔軟に対応が可能である。 The further decrease of the storage medium number constituting the storage is flexibly correspond to the requirements of the storage capacity.

ストレージの高性能化の要求に対してキャッシュ(キャッシュメモリ)が用いられる。 Cache (cache memory) is used for the storage of high performance requirements. ストレージのキャッシュは、例えばDRAM(Dynamic Random Access Memory)等で構成され、記憶媒体に格納されたデータの複製又は更新を格納する。 Storage cache for example, a DRAM (Dynamic Random Access Memory), etc., and stores a copy or update the data stored in the storage medium. キャッシュにアクセス頻度の高いデータを格納することで、DRAM等と比べてアクセス性能が低いHDD等の記憶媒体へのアクセスを削減し、性能向上を図る。 By storing frequently accessed data in cache, reducing the access to the storage medium such as HDD access performance is lower than a DRAM or the like, improving performance.

ストレージにおいて、アクセス時間(アクセス速度)の異なるキャッシュを階層化し、アクセス時間の短い上位キャッシュから順番にアクセス頻度の高いデータを格納する階層キャッシュが用いられつつある。 In storage, a hierarchy of different cache accessed time (access speed), while hierarchical cache is used to store frequently accessed data in order from the shorter high-level cache access time is. 記憶媒体として一般的なHDDより高性能な記憶媒体として、例えばSSD(Solid State Drive)がストレージにおいて使用されている。 As a high-performance storage medium more general HDD as a storage medium, for example, SSD (Solid State Drive) is used in the storage. SSDの多くは、一般的にNAND型フラッシュメモリによって構成され、DRAMより性能は低いものの、HDDよりも高いアクセス性能を持つ。 Many SSD is generally constituted by a NAND flash memory, although more performance lower DRAM, having a higher access performance than HDD. またHDDと比べて容量は小さいものの、DRAMと比べて容量が大きく、安価である、という利点を持つ。 Also although in comparison with HDD capacity is small, larger capacity than the DRAM, is inexpensive, it has the advantage that.

一般的に、下位のキャッシュには、SSDに代表される高速な記憶媒体を使用し、DRAM等で構成される上位キャッシュに格納しきれないデータを格納する。 In general, the lower the cache, using a high-speed storage medium represented by SSD, stores data that can not be stored in the high-level cache comprised of DRAM. 上位キャッシュに格納しきれなくなったデータに対して再度アクセスを行う場合、下位キャッシュに、該上位キャッシュに格納しきれなくなったデータを格納することで、HDD等の記憶媒体に対するアクセスの発生を防ぐことが可能となり、その結果、アクセス性能を向上させる。 When performing again access to data that is no longer sufficient to store the high-level cache, a low-level cache, by storing the data that is no longer sufficient to store in said upper cache, to prevent the occurrence of access to the storage medium such as an HDD It becomes possible, as a result, improving the access performance.

下位キャッシュでヒットしたデータは、再度、上位キャッシュに格納され、上位キャッシュにデータを格納しきれなくなった場合、データ格納領域を確保するため、その時点で上位キャッシュに格納されているデータを上位キャッシュから追い出し、追い出したデータを下位キャッシュに格納する、という動作を繰り返す。 The data hit in the low-level cache, again, are stored in the high-level cache, when it is no longer sufficient to store the data in the high-level cache, in order to secure a data storage area, the high-level cache data stored in the high-level cache at that time flush from stores eviction data to the low-level cache, operation is repeated. この一連の動作により、上位キャッシュには、最もアクセス頻度の高いデータが格納され、下位キャッシュには、上位キャッシュに次いでアクセス頻度の高いデータが格納され、各キャッシュ階層が効率的に利用される。 By this series of operations, the high-level cache, stored high data most frequently accessed, the low-level cache, frequently accessed data is stored next to the high-level cache, each cache hierarchy is efficiently utilized.

また一部のストレージでは、キャッシュにおいて複数種類のデータを格納する場合に、各データ間でキャッシュの競合を防ぐ目的で、特許文献1や非特許文献1で示されるようなパーティショニングが用いられる。 In some storage, in case of storing a plurality of types of data in the cache, in order to prevent cache conflicts among data, partitioning as shown in Patent Document 1 and Non-Patent Document 1 is used. パーティショニングとは、共有キャッシュをプロセス(スレッド)毎の占有領域であるパーティションに分割(区分)し、容量を制限することで、プロセス(又はスレッド)間での競合を防ぐものである。 The partitioning divides (divided) to partition a region occupied by each process (thread) a shared cache, limiting the capacity, but prevent conflicts between processes (or threads). ストレージのキャッシュのパーティショニングは、多くの場合、ボリューム(記憶領域の管理単位をなす一定のデータセットであり、「論理ボリューム」ともいう)などを単位として、キャッシュ(共有キャッシュ)を、ボリュームの占有領域であるパーティションに分割(区分)することをいう。 Partitioning of the storage cache often volume (a constant set of data constituting a management unit of a storage area, also referred to as "logical volume") as a unit and the cache (shared cache), occupied volume It refers to the division (division) to partition a region.

パーティショニングを用いない場合、あるボリュームへのアクセスに対してキャッシュミスにより、当該アクセスに対応するデータのキャッシュへの登録にあたり、キャッシュに格納されている他のボリュームのデータを追い出しキャッシュの競合を発生させることになる。 Without the partitioning by a cache miss with respect to access to a volume, when the registration of the data corresponding to the access cache, generating conflicts cache eviction of data of other volumes stored in the cache It will be. 一方、キャッシュをパーティショニングした場合、あるボリュームへのアクセスに対して当該ボリュームに対応するパーティションでミスした時、該パーティション内でデータ(ページ)の置換えが行われ、別のボリュームの占有領域に対応する別のパーティションのデータを追い出すことは無い。 On the other hand, when the cache was partitioning, when a miss in the partition corresponding to the access to a certain volume in the volume, the replacement of data (pages) in the partition is performed, corresponding to the area occupied by the different volumes it is not to expel the data of another partition that you want to. このため、キャッシュの競合が回避される。 For this reason, the cache of the conflict can be avoided.

なお、特許文献1には、キャッシュメモリを複数のパーティションに論理的に分割し、それぞれのパーティションは複数の論理ボリュームに対して割り当てられ、複数のパーティションはセグメントサイズが独立して調整可能なように構成され、パーティションのセグメントサイズを調整することで、キャッシュメモリの性能チューニングを行うようにしたストレージシステムが開示されている。 In Patent Document 1, logically divides the cache memory into a plurality of partitions, each partition assigned to a plurality of logical volumes, as the plurality of partitions adjustable segment size independently is configured, by adjusting the segment size of the partition, the storage system is disclosed in which to perform the performance tuning of the cache memory.

特許第4819369号公報 Patent No. 4819369 Publication

以下に関連技術の分析を与える。 The following is an analysis of the related art.

記憶部の制御及び管理の為の管理情報を参照して記憶部のアクセス対象の領域へのアクセスが行われ、アクセス速度が互いに異なる複数の記憶部からなる階層キャッシュ構成の記憶装置に関して、相対的に低速な記憶部へのアクセスに時間を要し、階層キャッシュの性能が低下する、という課題がある。 Control and access management to see and access target area of ​​the storage unit management information for the storage unit is performed, with respect to storage hierarchies cache configuration access speed is a plurality of different storage unit, the relative to take time to access the low-speed storage unit, performance decreases hierarchical cache, there is a problem that.

これは、相対的に低速な記憶部の管理情報が、相対的に低速な記憶部に格納されており、相対的に低速な記憶部へのデータアクセスにあたり、まず、該相対的に低速な記憶部を参照して管理情報を取得することが必要とされ、該取得した管理情報に基づき、該相対的に低速な記憶部のデータへアクセスが行われるためである。 This relatively management information of the low-speed storage unit is relatively slow are stored in the storage unit, when data access to relatively slow storage unit, first, the relatively slow storage it is required to acquire the management information by referring to section, based on the acquired management information, in order to access the data of the relatively slow storage unit is performed.

一方、後述する比較例で説明するように、相対的に低速な記憶部の管理情報を、全て高速な記憶部に記憶する構成とした場合、相対的に低速な記憶部の記憶容量の増大に伴い、 On the other hand, as described in comparative example described later, the management information relatively slow storage unit, in the case of the configuration for storing all fast memory unit, the increase of the storage capacity of the relatively slow storage unit Along with,
高速な記憶部で必要とされる記憶容量が増大する、あるいは、高速な記憶部においてデータ格納領域が削減するか無くなり階層キャッシュの性能が著しく低下する、という課題もある。 Storage capacity increases required in high-speed storage unit, or the performance of either eliminated hierarchical cache data storage area is reduced significantly decreases in a high-speed storage unit, there is another problem that.

本発明は、前記課題に鑑みて創案されたものであって、その目的は、アクセス速度の異なる複数の記憶部を具備したストレージにおいて、相対的に低速な記憶部へのアクセス時間の短縮を図り、性能を向上させる装置を提供することにある。 The present invention, which has been made in view of the above problems, and an object in a storage provided with the plurality of storage units having different access speeds, aims to shorten the access time to a relatively low-speed memory unit is to provide an apparatus for improving the performance. その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。 The other problems and novel features will become apparent from the description of this specification and the accompanying drawings.

本発明によれば、情報の書き込み及び読み出しが可能な第1の記憶部を含む第1の記憶装置と、 According to the present invention, a first storage device including a first storage unit writing and reading a possible information,
情報データの書き込み及び読み出しが可能な第2の記憶部を含む第2の記憶装置と、 A second storage device writing and reading information data including a second storage unit capable,
を含み、 It includes,
前記第1の記憶部は、前記第2の記憶部よりも高速であるか同等とされ、 The first storage unit is equal or a second faster than the storage unit,
前記第1の記憶部及び前記第2の記憶装置は、それぞれ、前記第2の記憶部の制御と管理に必要な管理情報の少なくとも一部を記憶する、所定の容量の記憶領域を有し、 The first storage unit and the second storage device, respectively, for storing at least a portion of the management information required for management and control of the second storage unit has a storage area of ​​predetermined capacity,
アクセス要求に対して、前記第2の記憶部にアクセスするにあたり、該当する前記第2の記憶部の管理情報が前記第1の記憶部に記憶されている場合、前記第1の記憶部に記憶されている該当する前記第2の記憶部の管理情報を参照して前記第2の記憶部にアクセスするアクセス制御部を含む、ストレージ装置が提供される。 The access request, when accessing the second storage section, when the management information of said second storage unit the corresponding is stored in the first storage unit, stored in the first storage unit includes an access controller for accessing said second storage unit with reference to the management information of said second storage unit the corresponding is, the storage device is provided.

別の形態によれば、情報の書き込み及び読み出しが可能な第1の記憶部を含む第1の記憶装置と、 According to another aspect, a first storage device including a first storage unit writing and reading a possible information,
情報の書き込み及び読み出しが可能な第2の記憶部を含む第2の記憶装置と、 A second memory device including a second storage unit writing and reading a possible information,
を含み、 It includes,
前記第1の記憶部が、前記第2の記憶部よりも高速であるか同等とされるストレージの制御の方法であって、 The first storage unit, a method of controlling the second storage that is equal to or faster than the storage unit,
前記第1の記憶部及び前記第2の記憶装置に、それぞれ、前記第2の記憶部の制御と管理に必要な管理情報の少なくとも一部を記憶する、所定の容量の記憶領域を設け、 In the first storage unit and the second storage device, respectively, for storing at least a portion of the management information required for management and control of the second storage unit, it provided a storage area of ​​predetermined capacity,
アクセス要求に対して、前記第2の記憶部にアクセスするにあたり、該当する前記第2の記憶部の管理情報が前記第1の記憶部に記憶されている場合、前記第1の記憶部に記憶されている該当する前記第2の記憶部の管理情報を参照して前記第2の記憶部にアクセスする、方法が提供される。 The access request, when accessing the second storage section, when the management information of said second storage unit the corresponding is stored in the first storage unit, stored in the first storage unit by accessing said second storage unit with reference to the management information of said second storage unit applicable is, a method is provided.

さらに別の形態によれば、情報の書き込み及び読み出しが可能な第1の記憶部を含む第1の記憶装置と、 According to yet another aspect, a first storage device including a first storage unit writing and reading a possible information,
情報の書き込み及び読み出しが可能な第2の記憶部を含む第2の記憶装置と、 A second memory device including a second storage unit writing and reading a possible information,
を含み、 It includes,
前記第1の記憶部が、前記第2の記憶部よりも高速であるか同等とされ、 The first storage section, is equal or a second faster than the storage unit,
前記第1の記憶部及び前記第2の記憶装置が、それぞれ、前記第2の記憶部の制御と管理に必要な管理情報の少なくとも一部を記憶する、所定の容量の記憶領域を有し、 The first storage unit and the second storage device, respectively, for storing at least a portion of the management information required for management and control of the second storage unit has a storage area of ​​predetermined capacity,
前記第1の記憶部が、前記第2の記憶部の制御と管理に必要な管理情報の少なくとも一部を記憶する、所定の容量の記憶領域を有するストレージを構成するコンピュータに、 The computer the first storage unit stores at least part of the management information required for management and control of the second storage unit, constituting a storage having a storage area of ​​predetermined capacity,
アクセス要求に対して、前記第2の記憶部にアクセスするにあたり、該当する前記第2の記憶部の管理情報が前記第1の記憶部に記憶されている場合、前記第1の記憶部に記憶されている該当する前記第2の記憶部の管理情報を参照して前記第2の記憶部にアクセスする処理を実行させるプログラムが提供される。 The access request, when accessing the second storage section, when the management information of said second storage unit the corresponding is stored in the first storage unit, stored in the first storage unit program for executing a process to access the second storage unit with reference to the management information of said second storage unit the corresponding being is provided. さらに別の形態によれば、前記プログラムを記録し、コンピュータで読み出し可能なメモリ媒体(半導体メモリデバイス)、磁気/光記録ディスク(記録デバイス)が提供される。 According to yet another embodiment, the program is recorded, readable memory medium in the computer (semiconductor memory devices), magnetic / optical recording disc (recording device) is provided.

本発明によれば、アクセス速度の異なる複数の記憶部を具備したストレージにおいて、相対的に低速な記憶部へのアクセス時間の短縮を図り、性能を向上させることができる。 According to the present invention, in a storage provided with the plurality of storage units having different access speeds, it aims to shorten the access time to a relatively low-speed storage unit, it is possible to improve the performance.

本発明の一実施形態における全体のシステム構成を例示する図である。 Is a diagram illustrating an overall system configuration in an embodiment of the present invention. 本発明の実施形態のストレージの構成を例示する図である。 Is a diagram illustrating the configuration of an embodiment of a storage of the present invention. 本発明の一実施形態におけるストレージ内の1次高速記憶、2次高速記憶の詳細な構成を例示する図である。 Primary fast memory in the storage in an embodiment of the present invention, is a diagram illustrating a detailed configuration of the secondary fast memory. 実施形態における上位キャッシュのディレクトリ情報を例示する図である。 It is a diagram illustrating a directory information of the high-level cache in the embodiment. 実施形態における下位キャッシュのディレクトリ情報を例示する図である。 It is a diagram illustrating a directory information of the low-level cache in the embodiment. 本発明の一実施形態におけるRead又はWrite処理手順を示すフローチャートである。 It is a flowchart showing a Read or Write processing procedure in an embodiment of the present invention. 本発明の一実施形態における上位キャッシュ新規データ格納ページ確保の手順を示すフローチャートである。 It is a flowchart illustrating a procedure of the high-level cache new data stored pages secured in an embodiment of the present invention. 本発明の一実施形態における下位キャッシュ新規データ格納ページ確保の手順を示すフローチャートである。 It is a flowchart showing the procedure of the low-level cache new data stored pages secured in an embodiment of the present invention. 本発明の一実施形態における下位キャッシュディレクトリ情報Read手順を示すフローチャートである。 It is a flowchart illustrating a low-level cache directory information Read procedure according to an embodiment of the present invention. 本発明の一実施形態における下位キャッシュディレクトリ情報Write手順を示すフローチャートである。 It is a flowchart illustrating a low-level cache directory information Write procedure according to an embodiment of the present invention. 本発明の一実施形態におけるD−Partition 新規データ格納ページ確保の手順を示すフローチャートである。 It is a flowchart showing the procedure of D-Partition new data stored pages secured in an embodiment of the present invention. 本発明の第1の実施例における本発明の有無、及び下位キャッシュの容量とディレクトリ情報の格納に必要なメモリ容量の関係を例示する図である。 It is a diagram illustrating the relationship of the memory capacity required presence of the present invention in the first embodiment, and the storage capacity and the directory information of the low-level cache of the present invention. 本発明の第2の実施例におけるキャッシュ容量毎のヒット数分布の変化を例示する図である。 It is a diagram illustrating a change in the number of hits distribution for each cache capacity in the second embodiment of the present invention. 本発明の一形態の構成を説明する図である。 It is a diagram illustrating one embodiment of a configuration of the present invention. 本発明の実施形態を説明する図である。 Is a diagram illustrating an embodiment of the present invention.

本発明のいくつかの好ましい形態の一つによれば、ストレージ装置は、図14を参照すると、情報の書き込み及び読み出しが行われる第1及び第2の記憶部(221、231)をそれぞれ備えた第1及び第2の記憶装置(22、23)を備え、前記第1の記憶部(221)は、前記第2の記憶部(231)よりもアクセスが高速であるか同等とされる。 According to one of several preferred embodiments of the present invention, the storage device 14, the first and second storage unit for writing and reading of data is performed (221, 231) with respectively comprising first and second storage devices (22,23), the first storage unit (221), said second storage unit (231) access than is equal or fast. 前記第1の記憶部(221)と第2の記憶装置(23)は、それぞれ、前記第2の記憶部(231)の制御と管理に必要な管理情報(第2の記憶部管理情報)の少なくとも一部を記憶する記憶領域(223、232)を有する。 The first storage section (221) the second storage device (23), respectively, the second management information required for the control and management of the storage unit (231) of the (second storage unit management information) having a storage area for storing at least a portion (223,232). アクセス制御部(29)は、アクセス要求に対して、前記第2の記憶部(231)へアクセスするにあたり、前記第1の記憶部(221)に、該当する第2の記憶部管理情報が記憶されている場合(第1の記憶部でヒットした場合)、前記第1の記憶部(221)に記憶されている前記第2の記憶部管理情報(223)を参照して前記第2の記憶部(231)へのアクセスを行う。 Access control unit (29), the access request, the second storage unit Upon accessing (231), in the first storage unit (221), corresponding second storage unit management information storage is (if hit in the first storage section) if one is, the first storage unit (221) in reference to the second storing said stored second storage unit management information (223) making access to the part (231).

本発明のいくつかの好ましい形態の一つによれば、前記第1の記憶部(221)に記憶されている第2の記憶部管理情報(223)を参照して、前記第2の記憶部(231)へのアクセスを行う構成としたことで、アクセスに対応する第2の記憶部管理情報が前記第1の記憶部(221)でヒットした場合には、低速なアクセス速度の記憶部をアクセスして第2の記憶部管理情報を取得する場合と比べて、アクセス時間を短縮し、アクセス性能を向上させることができる。 According to one of several preferred embodiments of the present invention, the first reference to the second storage unit management information stored in the storage unit (221) (223), the second storage unit by having a configuration for accessing the (231), when the second storage unit management information corresponding to the access is a hit in the first storage unit (221), the storage unit of the slow access speed as compared with the case of obtaining the second storage unit management information by accessing to shorten the access time, thereby improving the access performance. また、第2の記憶装置(23)で第2の記憶部管理情報を記憶することで、第2の記憶部(231)の記憶容量の増大に対して、第1の記憶部(221)の記憶容量の増大、あるいは、第1の記憶部(221)においてデータ格納領域が削減するか無くなり階層キャッシュの性能が著しく低下する、という課題を解消することができる。 Further, by storing the second storage unit management information in a second storage device (23) for increasing the storage capacity of the second storage unit (231), a first storage unit (221) increased storage capacity, or may be either eliminated hierarchical cache performance of the data storage area in the first storage unit (221) is reduced significantly reduced, to solve the problem.

図15を参照すると、本発明の好ましい形態の1つにおいて、ストレージ装置(2)で記憶保持される情報を記憶する記憶媒体(21)を備え、前記第1及び第2の記憶部(221、231)は、前記記憶媒体(21)よりも高速とされ、前記記憶媒体(21)に記憶される情報の一部の写し又は更新内容を記憶する。 Referring to FIG. 15, in one preferred form of the present invention, includes a storage medium (21) for storing information that is stored and held in the storage device (2), said first and second storage unit (221, 231), the is a storage medium faster than (21), stores a portion of the copy or update the content of the information stored in the storage medium (21).

前記第1の記憶装置(22)は、前記第1の記憶部(221)の制御と管理に必要な管理情報を記憶する記憶領域(223)を、前記第1の記憶部(221)とは、別に備えている。 Said first storage device (22), said first memory area for storing management information necessary to control and manage the storage unit (221) to (223), the first storage section (221) , it is separately provided. 前記第2の記憶装置(23)は、前記第2の記憶部(231)の制御と管理に必要な管理情報を記憶する記憶領域(232)を、前記第2の記憶部(231)とは、別に備えている。 The second storage device (23), said second memory area for storing management information necessary to control and manage the storage unit (231) to (232), said second storage section (231) is , it is separately provided.

また、前記第1の記憶部(221)において、前記第2の記憶部の管理情報(223)を記憶する記憶容領域の容量値を設定する容量設定部(27)を備えている。 Further, in the first storage unit (221), and a capacitance setting unit for setting a capacitance value of the storage capacity area for storing the management information of the second storage unit (223) (27).

前記第2の記憶部の管理情報(223)を記憶する記憶容量の値を、システムコンフィギュレーション、使用環境等、システム管理者の判断等で設定可能とすることで、システム性能のチューニングの最適化等に寄与する。 The value of the storage capacity to store the management information in the second storage unit (223), the system configuration, use environment or the like, by a configurable system administrator determines such, optimization of system performance tuning contribute to equal.

前記第2の記憶部(231)の制御と管理に必要な管理情報(第2の記憶部管理情報232)は、 It said second control and management information necessary for management of the storage unit (231) (the second storage unit management information 232)
・第1の記憶部(221)と第2の記憶装置(23)、又は、 - first storage section (221) the second storage device (23), or,
・第1の記憶部(221)と第2の記憶装置(23)と記憶媒体(21) - first storage unit (221) and a second storage device (23) and the storage medium (21)
に備えた構成としてもよい。 It may be equipped to.

本発明の好ましい形態の1つにおいて、アクセス制御部(29)は、アクセス要求に応じて、前記第2の記憶部(231)にアクセスするにあたり、前記第1の記憶部(221)の記憶領域(223)に、該当する前記第2の記憶部管理情報が記憶されている場合には、前記第1の記憶部(221)に記憶されている前記第2の記憶部管理情報を参照して、前記第2の記憶部(231)へのアクセスを行い、一方、前記第1の記憶部(221)の記憶領域(223)に、該当する前記第2の記憶部管理情報が記憶されていない場合には、前記第2の記憶装置(23)又は前記記憶媒体(21)に記憶されている前記第2の記憶部管理情報(232)を参照して前記第2の記憶部(23)へのアクセスを行うように制御する。 In one preferred form of the present invention, the access control unit (29) in response to the access request, when accessing the second storage unit (231), the storage area of ​​the first storage unit (221) to (223), when the second storage unit management information corresponding is stored, referring to the second storage unit management information stored in said first storage unit (221) the second demonstrates access storage section (231), whereas, in the storage area of ​​the first storage unit (221) (223), the second storage unit management information corresponding is not stored in this case, the second storage device (23) or the reference to the stored in the storage medium (21) a second storage unit management information (232) said second storage portion (23) It controls to perform the access.

アクセス制御部(29)は、前記第1の記憶部(221)に新たなデータを格納するにあたり、前記第1の記憶部(221)に、前記新たなデータの格納用の空き領域がない場合、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記容量設定部(27)で指定された容量値未満である場合には、前記第1の記憶部(221)に設けられた前記第2の記憶部の管理情報の記憶用の記憶領域のうち、前記第2の記憶部の管理情報の記憶に使用されていない記憶領域の一部を、データ格納用の空き領域として確保し、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記容量設定部で指定された容量値未満でない場合 Access control unit (29), when storing new data in the first storage unit (221), in the first storage unit (221), if there is no free space for storing the new data , in the first storage unit (221), the capacity of the second storage area used to store the management information in the storage unit is less than the capacitance value specified by the volume setting unit (27) If, among the storage areas for the storage of said first of said second management information storage unit provided in the storage unit (221), it is used to store management information of said second storage unit some of the free storage area, reserved as free space for storing data in said first storage unit (221), the capacity of the second storage area used to store management information of the storage unit when the not less than the specified capacitance value by the capacitance setting unit は、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域(223)の一部を選択してデータ格納用の空き領域として確保し、前記データ格納用の空き領域にデータを格納する。 , In the first storage unit (221), secured as the second select part free area for data storage in the storage area used for storing management information of the storage unit (223) , and stores the data in the free area for the data storage.

前記アクセス制御部(29)は、前記第2の記憶装置(23)又は前記記憶媒体(21)に記憶されている前記第2の記憶部の管理情報を、前記第1の記憶部(221)に格納するにあたり、 Said access control unit (29), said second storage device (23) or the management information of the stored in the storage medium (21) a second storage unit, the first storage unit (221) Upon stored in,
前記第1の記憶部(221)に、前記第2の記憶部の管理情報格納用の空き領域がある場合、前記空き領域の任意の領域を、前記第2の記憶部の管理情報の格納用とし、前記第1の記憶部(221)に、前記第2の記憶部の管理情報格納用の空き領域がない場合、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域(223)の容量が、前記容量設定部(27)で指定された容量値未満である場合には、前記第1の記憶部において、データ記憶用に確保されている記憶領域の一部を選択し、選択した前記記憶領域の一部を、前記第2の記憶部の管理情報の格納領域として確保し、 In the first storage unit (221), if there is the second free space for the management information storage in the storage unit, any region of the free space for storing management information of the second storage unit and then, in the first storage unit (221), if there is no second free space for the management information storage in the storage unit, the first storage unit in (221), the management of the second storage unit capacity of that storage area is used to store (223) information, if the less than the given capacitance value by the capacitance setting unit (27), in the first storage section, reserved for data storage by selecting a part of that storage area, a part of the storage area selected, reserved as a storage area of ​​the management information of said second storage section,
前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域(223)の容量が、前記容量設定部(27)で指定された容量値未満でない(容量値以上である)場合には、前記第1の記憶部(21)に設けられた、前記第2の記憶部の管理情報の記憶用の記憶領域(223)の一部を選択し、選択した前記記憶領域の一部を、前記第2の記憶部の管理情報の格納領域として確保し、前記確保した格納領域に前記第2の記憶部の管理情報を格納する。 In the first storage unit (221), the capacity of the second storage area used to store the management information in the storage unit (223) is, the capacity setting section less than the capacity value specified in (27) If not (at least capacitance value), the provided first storage unit (21), to select the part of the storage area for storing management information of said second storage unit (223) , a part of the selected said storage area, reserved as a storage area of ​​the management information of said second storage unit, for storing management information of the second storage unit in the storage area described above secured.

前記アクセス制御部(29)は、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域(223)の容量が、前記容量設定部(27)で指定された容量値以上であり、 It said access control unit (29), in the first storage unit (221), the capacity of the second storage area used to store the management information in the storage unit (223) is, the capacity setting section ( 27) and a designated capacitance value or more,
前記第1の記憶部(221)において、前記第2の記憶部の管理情報を記憶する記憶領域(223)に含まれずデータを記憶する記憶領域、又は、前記第2の記憶部の管理情報を記憶する記憶領域(223)の一部を選択し、選択した前記記憶領域の一部を、新たなデータ、又は前記第2の記憶部の管理情報の格納領域に置き換えるにあたり、 In the first storage unit (221), a storage area for storing data not included in the storage area (223) for storing management information of the second storage unit, or, the management information of said second storage unit selecting a part of memory storage area (223), when replacing a portion of the storage area selected, new data, or in a storage area of ​​the management information of said second storage section,
前記第1の記憶部(221)において前記選択した記憶領域の一部に記憶されている、前記データ又は前記第2の記憶部の管理情報が更新され、且つ、前記更新内容が前記第2の記憶装置(23)又は前記記憶媒体(21)に反映されていない場合には、前記選択した記憶領域の一部に記憶されている前記データ又は前記第2の記憶部の管理情報の更新内容を、前記第2の記憶装置(23)又は前記記憶媒体(21)に反映した上で、前記選択した記憶領域の一部に、新たなデータ又は前記第2の記憶部の管理情報を格納する。 It said first stored in a portion of said selected storage area in the storage unit (221), the data or the management information of the second storage unit is updated, and the update content is the second when the storage device (23) or the not reflected in the storage medium (21), the updates of the data or the management information of said second storage unit is stored in a part of said selected storage area , after reflecting on the second storage device (23) or the storage medium (21), a portion of said selected storage area, for storing management information of the new data or the second storage unit.

前記アクセス制御部(29)は、アクセス対象のデータが前記第1の記憶部(221)に記憶されていない場合(例えば図6のS102のNo分岐に対応)、前記第2の記憶部(231)に記憶されているか否か判定し(例えば図6のS104に対応)、前記第1の記憶部(221)にアクセス対象のデータを格納するための領域を確保し(例えば図6のS105に対応)、アクセス対象のデータが前記第2の記憶部(231)に記憶されている場合、前記第2の記憶部(231)の該当するデータを前記第1の記憶部(221)に格納し(例えば図6のS109に対応)、 It said access control unit (29), when the access target data is not stored in the first storage unit (221) (e.g., corresponding to No in S102 of FIG. 6), the second storage unit (231 ) whether stored determined (for example corresponding to S104 in FIG. 6), secures an area for storing the access target data in the first storage unit (221) (e.g., in S105 of FIG. 6 corresponding), when the access target data is stored in the second storage unit (231), and stores the corresponding data in the second storage unit (231) in the first storage unit (221) (e.g. corresponding to S109 in FIG. 6),
アクセス対象のデータが前記第2の記憶部(231)に記憶されていない場合、前記記憶媒体(21)の該当するデータを前記第1の記憶部に格納し(例えば図6のS110に対応)、前記第1の記憶部の管理情報を更新する(例えば図6のS111に対応)。 If the access target data is not stored in the second storage unit (231), and stores the corresponding data in the storage medium (21) in the first storage unit (for example, corresponding to S110 of FIG. 6) updates the management information of said first memory unit (e.g., corresponding to S111 of FIG. 6).

前記アクセス制御部(29)は、前記第1の記憶部(221)にアクセス対象のデータを格納するための領域を確保するにあたり(例えば図6のS105に対応)、前記第1の記憶部(221)に空き領域がある場合(例えば図7の202に対応)、前記空き領域を、前記アクセス対象のデータを格納するための領域として確保し(例えば図7のS203に対応)、前記第1の記憶部(221)に空き領域がない場合、前記第1の記憶部(221)において前記第2の記憶部の管理情報の記憶に使用されている記憶領域(223)の容量が、前記容量設定部(27)で指定された容量値以下である場合には(例えば図7のS205に対応)、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶のために使用されていな It said access control unit (29), when securing the area for storing the access target data in the first storage unit (221) (e.g., corresponding to S105 of FIG. 6), the first storage unit ( If there is a free space 221) (e.g., corresponding to 202 of FIG. 7), the free space reserved as an area for storing data of the access target (e.g. corresponding to S203 in FIG. 7), the first If there is no free space in the storage unit (221), the capacitance of the first and the second storage area used to store the management information in the storage unit storage unit in (221) (223) is, the capacitor if the specified or less capacitance value setting unit (27) in the (e.g. corresponding to S205 in FIG. 7), the first storage unit (221), the memory management information of the second storage unit It does not have been used for 領域を、前記アクセス対象のデータを格納するための領域として確保する(例えば図7のS206に対応)。 The area is provided as an area for storing data of the access target (e.g. corresponding to S206 in FIG. 7). 前記アクセス制御部(29)は、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域(223)の容量が、前記容量設定部(27)で指定された容量値を超えている場合には、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の格納に使用されている記憶領域(223)の一部を、前記アクセス対象のデータ(新規データ)を格納するための領域として確保し(例えば図7のS207に対応)、前記確保した領域について、前記第2の記憶部の管理情報の更新が、前記第2の記憶装置(23)に反映されていない場合には、前記更新を、前記第2の記憶装置(23)に反映した上で(例えば図7のS209に対応)、前記領域を、前記第2の記憶部の管理情報格納用の記 It said access control unit (29), in the first storage unit (221), the capacity of the second storage area used to store the management information in the storage unit (223) is, the capacity setting section ( If it exceeds the specified capacitance value is 27), the first storage unit in (221), one second of which storage area is used to store management information of the storage unit (223) the section, the access target data is provided as an area for storing the (new data) (e.g., corresponding to S207 of FIG. 7), for the secured area, the update of the management information of said second storage section, wherein if the second is not reflected in the storage device (23), the update, after reflected on the second storage device (23) (e.g. corresponding to S209 in FIG. 7), the region, serial for storing management information of the second storage unit 領域(223)から削除し(例えば図7のS210に対応)、前記アクセス対象のデータを格納するための領域とする。 Remove from the area (223) (e.g., corresponding to S210 of FIG. 7), the area for storing the data of the access target.

前記アクセス制御部(29)は、前記第1の記憶部(221)において、前記第2の記憶部の管理情報を記憶する記憶領域(223)に含まれない記憶領域の一部(前記第2の記憶部の管理情報の記憶のために使用されていない領域の一部)を、前記アクセス対象のデータを格納するための領域として確保する場合(例えば図7のS206に対応)、前記第1の記憶部(221)の前記領域のデータをコピーするために、前記第2の記憶部(231)に領域を確保し(例えば図8のS304に対応)、前記第1の記憶部(221)の前記領域のデータを、前記第2の記憶部(231)に確保した前記領域にコピーし(例えば図8のS309に対応)、前記第2の記憶部の管理情報を更新し(図8のS310に対応)、前記第1の記憶部(22 Said access control unit (29), in the first storage unit (221), the second part of the storage area that is not included in the storage area (223) for storing management information of the storage unit (the second If the part of the region) which is not used for storing management information of the storage unit, to ensure the area for storing the data of the access target (e.g. corresponding to S206 in FIG. 7), the first in order to copy the data of the area of ​​the storage unit (221), secures an area in the second storage unit (231) (e.g., corresponding to S304 of FIG. 8), the first storage unit (221) the data of the area, and copy the area allocated to the second storage unit (231) (e.g., corresponding to S309 of FIG. 8), and updates the management information of said second storage unit (in FIG. 8 corresponding to S310), the first storage unit (22 )の前記領域を、前記アクセス対象のデータを格納するための領域とする。 The area of) the area for storing the data of the access target.

前記アクセス制御部(29)は、アクセス対象のデータが前記第1の記憶部(221)に記憶されていない場合に、前記第1の記憶部(221)に記憶されている前記第2の記憶部の管理情報を参照して、前記アクセス対象のデータが前記第2の記憶部(231)に記憶されているか否か判定するにあたり、前記第1の記憶部(221)に記憶されている前記第2の記憶部の管理情報でヒットした場合(例えば図9のS42に対応)、該当する管理情報を取得し(例えば図9のS43に対応)、前記第1の記憶部(221)に記憶されている前記第2の記憶部の管理情報でヒットしない場合、前記第2の記憶装置(23)に記憶されている対応する前記第2の記憶部の管理情報を格納するための領域を、前記第1の記憶部(221)に確保し Said access control unit (29), when the access target data is not stored in the first storage unit (221), said first storage unit (221) stored in said second memory by referring to the management information of the parts, when the access target data is determined whether it is stored in the second storage unit (231), said stored in said first storage unit (221) If there is a hit in the management information of the second storage unit (for example, corresponding to S42 in FIG. 9), (corresponding to S43 in example 9) obtains management information corresponding, stored in the first storage unit (221) If no hit in the second management information in the storage unit that is, an area for storing management information of the second storage unit the corresponding stored in the second storage device (23), the first storage unit is secured in (221) 例えば図9のS44に対応)、前記第1の記憶部(221)に確保した前記領域に、対応する前記第2の記憶部の管理情報を格納し(図9のS45)、該当する前記管理情報を取得し(例えば図9のS43、S45に対応)、前記第2の記憶部の管理情報を更新する(例えば図9のS46に対応)。 For example corresponds to S44 in FIG. 9), the said area reserved in the first storage unit (221), and stores the management information of the corresponding second memory section (S45 in FIG. 9), the corresponding said management It obtains information (e.g., corresponding to S43, S45 in FIG. 9), (corresponding to S46 in example FIG. 9) to update the management information of said second storage unit.

前記アクセス制御部(29)は、前記第2の記憶部の管理情報の更新にあたり(例えば図6のS111、図8のS310に対応)、前記第1の記憶部(221)に該当する前記第2の記憶部の管理情報が記憶されている場合(例えば図10のS52に対応)、前記管理情報を更新し(例えば図10のS53に対応)、前記第1の記憶部(221)に、該当する前記第2の記憶部の管理情報が記憶されていない場合、前記管理情報を格納するための領域を前記第1の記憶部(221)に確保して格納し(例えば図10のS54、S55に対応)、前記管理情報を更新する(例えば図10のS56に対応)。 Said access control unit (29), said second update Upon management information storage unit (S111 in FIG. 6, for example, corresponds to S310 in FIG. 8), the first corresponding to the first storage unit (221) If management information of the second storage unit is stored (e.g., corresponding to S52 in FIG. 10), to update the management information (e.g., corresponding to S53 in FIG. 10), the first storage unit (221), If the management information of said second storage unit the corresponding is not stored, and stores it secures an area for storing the management information in the first storage unit (221) (e.g., S54 of FIG. 10, corresponding to S55), and updates the management information (e.g., corresponding to S56 in FIG. 10).

前記アクセス制御部(29)は、前記第1の記憶部(221)に記憶されている前記第2の記憶部の管理情報でヒットしない場合(例えば図9のS42のNo分岐に対応)、前記第1の記憶部(221)に空き領域が存在するか確認し、前記第1の記憶部(221)に空き領域が存在する場合、前記空き領域を、前記第2の記憶部の管理情報格納用の領域として確保し(図11のS603に対応)、前記第1の記憶部(221)に空き領域が存在しない場合、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域(223)の容量が、前記容量設定部(27)で指定された容量値未満である場合には(例えば図11のS605のYes分岐に対応)、前記第1の記憶部(221)において、前記第 Said access control unit (29), if not hit in the first storage unit (221) wherein stored in the second management information storage unit (e.g., corresponding to No in S42 in FIG. 9), the or free space exists to confirm the first storage unit (221), if the free space exists in the first storage unit (221), the free area, management information storage of the second storage unit reserved as an area for use (corresponding to S603 in FIG. 11), when the first free space in the storage unit (221) is not present, the first storage unit in (221), the second storage unit storage area used for storing management information capacity (223) is, (corresponding to S605 of Yes in example 11) the volume setting unit, if less than the specified capacitance value in (27), the first storage unit in (221), said first の記憶部の管理情報用の記憶用に含まれない領域を、前記第1の記憶部(221)における前記第2の記憶部の管理情報を格納するための領域として確保し(例えば図11のS606に対応)、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域(223)の容量が、前記容量設定部で設定された容量値未満でない(容量値以上である)場合には(例えば図11のS605のNo分岐に対応)、前記第1の記憶部(221)において、前記第2の記憶部の管理情報の格納用に既に使用されている一部の領域を、前記第1の記憶部(221)における前記第2の記憶部の管理情報を新たに格納するための格納領域として確保し(例えば図11のS607に対応)、前記確保した領域について Of an area not included in the storage for management information of the storage unit, the first reserved as an area for storing management information of the second storage unit in the storage unit (221) (e.g., FIG. 11 corresponding to S606), the first storage unit in (221), the capacity of the second storage area used to store the management information in the storage unit (223) is set by the capacity setting unit volume in not less than the value (capacitance value higher than that) if (for example corresponding to no in S605 of FIG. 11), the first storage unit (221), for storing management information of the second storage unit a part of the area already used, corresponding to S607 of the first storage unit management information of said second storage unit in the (221) secured as a storage area for newly storing (for example, FIG. 11 ), for the secured area 前記第2の記憶部の管理情報の更新情報が、前記第2の記憶装置(23)に反映されていない場合には、前記更新情報を前記第2の記憶装置(23)に反映した上で(例えば図11のS609に対応)、前記領域を空とし、前記空とした領域を、前記第2の記憶部の管理情報を新たに格納するための格納領域とする(例えば図11のS610に対応)。 On update information of the management information of said second storage unit, if not reflected in the second storage device (23), reflecting the updated information in the second storage device (23) (e.g. corresponding to S609 of FIG. 11), the area is empty, the empty area that was, and the second storage area for newly storing the management information of the storage unit (for example, in S610 of FIG. 11 Correspondence).

第1及び第2の記憶部(221、231)は階層化されたキャッシュを構成する。 First and second storage units (221, 231) constitutes a hierarchical cache. 実施形態の理解のための、まず、その前提と原理に関する考察を記載する。 For understanding the embodiment, first, it describes a study on a premise and principles.

階層化されたキャッシュを持つストレージでは、例えば、各階層のデータの格納先として、上位のキャッシュから順番に高速な記憶媒体を使用する。 The storage having a hierarchical cache, for example, as a storage destination of data in each layer, using a high-speed storage medium in order from the upper cache. 例えば上位キャッシュ、下位キャッシュの2階層が存在するストレージでは、 High-level cache, the storage that exists two levels of low-level cache for example,
・上位キャッシュのデータ格納先としてDRAM等を用いる。 - Top used such as a DRAM cache as the data storage destination.
・下位キャッシュのデータ格納先に、上位キャッシュよりも低速なSSD等を用いる。 - the low-level cache data storage destination, using the low-speed SSD and the like than the high-level cache.

キャッシュは、格納するデータ本体以外に、キャッシュ自身を管理、制御するために必要な情報を持つ。 Cache, in addition to data body to store, manage the cache itself, with the information required to control. 例えばキャッシュは、データ格納先の領域を一定のサイズの連続した記憶領域を単位として管理するために必要な情報(キャッシュの記憶領域の管理単位を「ページ」という)のほか、例えば、 For example cache (a management unit of a storage area of ​​the cache as "pages") information needed to manage a continuous storage area of ​​the area of ​​the data storage destination certain size as the unit of addition, for example,
・ヒット判定に用いる情報、 And information used in the hit determination,
・新規データの格納対象となるページの優先順位情報、 Page priority information that will be stored subject of new data,
等のキャッシュの制御と管理に必要な情報である。 Is the information necessary for the management and control of the cache and the like. キャッシュの制御と管理に必要な情報を総称して「ディレクトリ情報」という。 Collectively the necessary information to management and control of the cache as "directory information".

ディレクトリ情報は、例えばキャッシュヒットの判定時に参照、更新される。 Directory information is for example referred to when determining a cache hit is updated. キャッシュのディレクトリ情報は、キャッシュに格納されたデータ(キャッシュに対するReadアクセスやWriteアクセス時のReadデータ/Writeデータ)よりも、頻繁にアクセスされる。 Directory information of the cache, rather than data stored in the cache (Read Data / Write data during Read Access and Write access to the cache), are frequently accessed.

よって、アクセス頻度の高いキャッシュにおいてキャッシュ性能の維持又は向上を図るには、キャッシュに格納されたデータだけでなく、ディレクトリ情報についても、例えばDRAM等のような、高速な記憶媒体に格納する必要がある。 Therefore, the attempt to maintain or improve the cache performance in frequently accessed cache, not only data stored in the cache, for the directory information, such as a DRAM or the like, need to be stored in the high-speed storage medium is there.

階層化されたキャッシュを持つストレージでは、上位キャッシュでミスが発生した場合に、下位キャッシュに対してヒットの判定が行われる。 The storage having a hierarchical cache, when a miss in the high-level cache occurs, the determination of the hit to the low-level cache is performed. キャッシュにおいて、ヒット判定の処理性能は、アクセスへの応答時間に影響する。 In the cache, performance of the hit determination affects the response time for access.

このため、ストレージ全体の性能の向上を図るには、例えば、下位キャッシュのディレクトリ情報を、上位キャッシュと同一のDRAM等の高速な記憶媒体に格納する必要がある。 Therefore, the improved performance of the overall storage, for example, the directory information of the low-level cache, should be stored in a high speed storage medium such as the same DRAM and the high-level cache.

この場合、上位キャッシュに格納されたデータと、上位キャッシュのディレクトリ情報と、下位キャッシュのディレクトリ情報を、DRAM等の同一の記憶媒体上に格納する必要がある。 In this case, the data stored in the high-level cache, the directory information of the high-level cache, the directory information of the low-level cache, it is necessary to store in the same storage medium such as a DRAM.

しかし、下位キャッシュのディレクトリ情報を上位キャッシュに格納する場合、上位キャッシュの記憶媒体の記憶容量が問題となる。 However, when storing directory information of the low-level cache to the higher cache, the storage capacity of the storage medium of the high-level cache is a problem.

キャッシュのディレクトリ情報において、該キャッシュを構成する各ページの管理に必要な情報が、必要な記憶容量の大部分を占める。 In the directory information of the cache, the information required to manage each page constituting the cache, the majority of the required storage capacity. ページの総数は、キャッシュの容量に比例する。 The total number of pages is proportional to the capacity of the cache. このため、キャッシュの記憶容量の増加に比例して、ディレクトリ情報の容量が増加する。 Therefore, in proportion to the increase of the storage capacity of the cache, the capacity of the directory information is increased.

一般に、階層化されたキャッシュにおいて、高速な上位キャッシュに比べて、低速な下位キャッシュは、大きな記憶容量を持つ。 Generally, in the hierarchical cache, compared to the high-speed high-level cache, slow low-level cache has a large storage capacity.

下位キャッシュでは、一般に、データ本体が格納される記憶媒体は、ディレクトリ情報が格納される記憶媒体とは別に独立して設けられる。 The low-level cache, in general, a storage medium on which data body is stored, provided separately independently of the storage medium in which directory information is stored.

下位キャッシュにおいて、キャッシュされるデータ本体が格納される記憶媒体が大容量である場合、下位キャッシュのディレクトリ情報の格納に必要な記憶容量も大容量となる。 In the low-level cache, so when the storage medium on which data body to be cached are stored is large, the storage capacity large space required to store directory information of a lower cache.

下位キャッシュのディレクトリ情報を、上位キャッシュの記憶媒体に格納する構成において、下位キャッシュのディレクトリ情報の格納に必要な記憶容量が、上位キャッシュで利用可能な容量を上回り、容量不足が発生する場合がある(この場合、上位キャッシュにデータを格納することができなくなる)。 The directory information of a lower cache, the configuration to be stored in a storage medium the high-level cache, the storage capacity required to store the directory information of a lower cache, exceeds the available capacity at the high-level cache, there is a case where the capacity shortage may occur (in this case, it is impossible to store data in the high-level cache).

つまり、複数階層のキャッシュを持つストレージにおいて、上位キャッシュ及び下位キャッシュのディレクトリ情報が格納される記憶媒体の総容量を超えない範囲で、各階層のキャッシュ容量を決定する必要がある。 That is, in the storage with a cache of a plurality of layers, to the extent that the directory information of the high-level cache and low-level cache does not exceed the total capacity of the storage medium to be stored, it is necessary to determine the cache capacity of each layer.

このとき、ストレージに対するワークロード(Work Load:資源の利用状況)が一定であれば、各キャッシュの階層に対して、高速な記憶媒体の総容量を超えない範囲で、例えばアクセス性能を最大化するように各容量を最適化することができる。 At this time, the workload for the storage: if (Work Load availability of resources) is constant for the hierarchy of each cache, within a range that does not exceed the total capacity of the high-speed storage medium, to maximize the example access performance it is possible to optimize each capacitor so. しかし、ストレージに対するワークロードは、時間の経過、ストレージにアクセスするホストで動作するプログラムの種類等によって変化する。 However, the workload for storage, over time, changes depending on the type of program running on a host accessing the storage.

さらに、ホストで動作する複数のプログラム(プロセス、スレッド)が、ストレージに対して並列にアクセスを行う場合、並列動作するプログラムの組み合わせによって、ワークロードが変化する。 Further, a plurality of programs (processes, threads) operating at the host, when accessing in parallel to the storage, by a combination of programs operating in parallel, the workload changes. つまり、アクセス性能を最適化するように、各キャッシュ階層の容量を決定するためには、ストレージに対するワークロードを例えば定期的に調べ、各キャッシュ階層の容量を変更する必要がある。 In other words, to optimize access performance, in order to determine the capacity of each cache hierarchy, a workload for example periodically checks for the storage, it is necessary to change the capacity of each cache hierarchy.

キャッシュ容量の変更を実現するためには、各キャッシュ階層のディレクトリ情報において、容量の増減を行うためのデータ構造が必要である。 To achieve a change in the cache capacity in the directory information of each cache hierarchy is required data structure for performing the increase and decrease of the capacity.

しかしながら、キャッシュのディレクトリ情報に、キャッシュ容量の増減に対応したデータ構造を用いた場合、キャッシュ性能の低下を引き起こす場合がある。 However, the directory information of the cache, when a data structure corresponding to the increase or decrease of the cache capacity, which may cause a decrease in cache performance. 例えばキャッシュの容量が一定であれば、キャッシュ内のページ数は一定である。 For example, if the capacity of the cache is constant, the number of pages in the cache constant. キャッシュの特定のページのディレクトリ情報にアクセスするためには、一定サイズのページ毎のディレクトリ情報が並べられた配列に対して、配列のインデックス(配列要素を指すインデックス)を用いることで、直ちに(余分な処理を伴わずに)、当該情報(インデックスの配列要素に格納されたページのディレクトリ情報)へのアクセスが可能である。 To access the directory information of a particular page of the cache, to the sequences directory information is arranged in each page of a certain size, by using the index of the array (index to an array element) immediately (excess Do process without), it is possible to access to the information (directory information of stored pages array element at index).

一方、キャッシュ容量が増減する場合、キャッシュ内のページ数は一定ではなく容量に応じて変わるため、上記した配列(ページ毎のディレクトリ情報が並べられた配列)のインデックスで、対応するページのディレクトリ情報をアクセスすることはできない。 On the other hand, if the cache capacity is increased or decreased, because the number of pages in the cache will vary according to the capacity not constant, the index of the sequence described above (SEQ directory information is arranged for each page), the directory information of the corresponding page it is not possible to access the. 現在のキャッシュ容量がnページであり、mページ分に増加/減少させる場合、mページ分のディレクトリ情報を動的に追加/削除可能なデータ構造(例えば動的バッファ管理等に用いられるキュー構造)とする必要がある。 A current cache capacity n pages, when increasing / decreasing the m pages dynamically add directory information of m pages / deletable data structure (e.g., queue structure for use in a dynamic buffer management, etc.) there needs to be. このように、ディレクトリ情報のデータ構造が複雑化する結果、該ディレクトリ情報において、目的とする情報にアクセスするために、配列のような簡単なデータ構造のディレクトリ情報と比べて、余分な処理時間を伴う。 Thus, as a result of the data structure of the directory information is complicated, in the directory information, to access information of interest, as compared to the directory information of simple data structures such as arrays, the extra processing time Accompany.

また、キャッシュ容量の増減を可能にするには、キャッシュ容量が一定の場合とは異なり、余分なディレクトリ情報(キュー構造の場合、次の要素へのポインタ情報)が必要になる。 Further, to enable an increase or decrease in cache capacity, unlike the cache capacity is fixed, (for a queue structure, the pointer information to the next element) extra directory information is needed. その結果、ディレクトリ情報の容量が増大する。 As a result, the capacity of the directory information is increased. さらに、ディレクトリ情報が、上位キャッシュの記憶媒体の容量を圧迫する。 Further, the directory information is to compress the capacity of the storage medium of the high-level cache.

ストレージのアクセス性能等を最大化するために、キャッシュの容量を直接変更するのではなく、階層キャッシュの上位、下位のキャッシュが使用するDRAM等の高速な記憶媒体の容量のみを可変させる方法が挙げられる。 To maximize the storage access performance such as, instead of changing the capacity of the cache directly, and a method for only the variable capacity high-speed storage medium such as a DRAM hierarchical caching upper, lower cache use It is. 具体的には、下位キャッシュの制御と管理に用いられるディレクトリ情報のうち、アクセス頻度の高い一部を、上位キャッシュの記憶媒体に一時的に格納し、その他のディレクトリ情報は、同等又はより低速な記憶媒体に格納する。 Specifically, among the directory information used for management and control of the low-level cache, a portion frequently accessed, stored temporarily in a storage medium the high-level cache, and other directory information, a slower than equivalent or stored in the storage medium.

上位キャッシュのDRAM等の高速な記憶媒体において、ディレクトリ情報の格納に使用する容量のみを変更することで、ディレクトリ情報のデータ構造を変更することは付与不要とされる。 In high-speed storage medium such as a DRAM of the high-level cache, by changing only the capacity used for storing directory information, changing the data structure of the directory information are imparted unnecessary. この手法では、上位キャッシュのDRAM等の高速な記憶媒体に格納されていない下位キャッシュのディレクトリ情報へのアクセスが必要になった場合には、低速な記憶媒体への参照が行われるため、アクセス性能の低下が発生する。 Because this technique, when access to the directory information of the low-level cache that is not stored in a high speed storage medium such as a DRAM of the high-level cache is needed, a reference to the low-speed storage medium is performed, the access performance decrease of occurs. しかしながら、上位キャッシュのDRAM等の高速な記憶媒体に格納されていない下位キャッシュのディレクトリ情報は、アクセス頻度が低いものである。 However, the directory information of the low-level cache that is not stored in a high speed storage medium such as a DRAM of the high-level cache are those access frequency is low. このため、上位キャッシュのDRAM等の高速な記憶媒体に格納されていないディレクトリ情報へのアクセスが必要となった場合でも、ストレージ全体の性能への影響は小さく抑えられる。 Therefore, even if access to directory information that is not stored in the high speed storage medium such as a DRAM of the high-level cache is needed, the influence of the performance of the overall storage is suppressed.

しかし、ディレクトリ情報のうち、アクセス頻度の高い一部の情報のみを格納するには、ディレクトリ情報におけるアクセス頻度を監視し、定期的に、高速な記憶媒体に格納するアクセス頻度の高いディレクトリ情報の入れ替えを行う要がある。 However, among the directory information, to store only the high part of the information access frequency monitors access frequency in the directory information, replacement of regular, high directory information access frequency to be stored in a high-speed storage medium there is a necessity to carry out.

キャッシュ内に、データのキャッシュ制御のみでなく、ディレクトリ情報のキャッシュ機能を持つ必要がある。 In the cache, not only the cache control data, it is necessary to have a caching directory information.

よって、上位キャッシュにおいて、高速な記憶媒体に対して、データキャッシュ機能と、ディレクトリ情報キャッシュ機能の複数の実装が並存することになる。 Therefore, the high-level cache for fast storage medium, and data caching, multiple implementations of directory information caching will coexist. この結果、制御ソフトウェアの処理、複雑性が増加する。 As a result, process control software, complexity is increased. また、保守性の減少につながる。 In addition, it leads to a reduction in maintenance.

さらに、複数の階層のキャッシュを持つストレージでは、多くの場合、各キャッシュが別々に制御されており、各階層間で、例えば上位キャッシュの高速な記憶媒体で使用していない容量を、直接、他の階層の記憶媒体に割り当てることは、困難である。 Further, in the storage with a cache of a plurality of hierarchies, often each cache are separately controlled, between each layer, the capacity that is not used in high-speed storage medium high-level cache for example, directly, other assigning the hierarchical storage medium, it is difficult.

上記のとおり、複数キャッシュ階層を持つストレージにおいて、各階層のキャッシュによる、高速な記憶媒体の容量の効率的な配分、利用が困難である。 As described above, in the storage with multiple cache hierarchy, by the cache in each layer, efficient allocation of capacity of the high-speed storage medium, it is difficult to use.

実施形態によれば、前記した図14の第1の記憶部(221)を、上位キャッシュとし、前記第2の記憶部(231)を下位キャッシュとする。 According to an embodiment, the first storage section (221) of FIG. 14 described above, the high-level cache, said second storage unit (231) and low-level cache. また、第2の記憶装置(23)又は記憶媒体21)に格納された前記第2の記憶部(231)の管理情報が、前記下位キャッシュのディレクトリ情報である。 The management information stored in said second storage device (23) or the storage medium 21) a second storage unit (231) is the directory information of the low-level cache. 前記上位キャッシュに、前記下位キャッシュのディレクトリ情報の一部の複製又は更新情報が格納され、第1の記憶装置(22)は、第1の記憶部(221)である前記上位キャッシュのディレクトリ情報を格納する記憶部(222)を、前記上位キャッシュとは別に備えた構成とされる。 The high-level cache, said stored part of replication or updating information in the directory information of a lower cache, the first storage device (22), the directory information of the high-level cache is a first storage unit (221) storage unit for storing (222), and the high-level cache is configured to include separately.

すなわち、少なくとも上位キャッシュ(221)、下位のキャッシュ(231)の階層キャッシュ構成のストレージにおいて、上位キャッシュのデータ本体と、ディレクトリ情報が格納される記憶媒体に、下位キャッシュのディレクトリ情報を格納する場合に、上位キャッシュ、及び、下位キャッシュのディレクトリ情報が使用する前記記憶媒体の容量を、まとめて効率的に管理し、前記記憶媒体において、ある階層が使用しない容量を、他の階層に直接割り当てるための機能を備えている。 That is, at least the high-level cache (221), in the storage hierarchy cache configuration of the lower of the cache (231), and data body of the high-level cache, the storage medium directory information is stored, in the case of storing the directory information of the low-level cache , the high-level cache, and the capacity of the storage medium in which directory information of the low-level cache is used collectively efficiently managed in the storage medium, for allocating capacity in the hierarchy is not used, directly to the other layers It has a function.

具体的には、上位キャッシュに、下位キャッシュのディレクトリ情報の一部又は全てを格納し、上位キャッシュ内において、下位キャッシュのディレクトリ情報の格納に使用される容量を、可変に調整することで、上位キャッシュと下位キャッシュが使用する記憶媒体の容量を、直接的かつ効率的に管理する。 Specifically, the high-level cache, stores some or all of the directory information of the low-level cache, in the high-level cache, the space used to store directory information of a lower cache, by adjusting variably the upper the capacity of the storage medium cache and low-level cache is used, directly and efficiently managed.

下位キャッシュのディレクトリ情報の一部を、上位キャッシュに格納するためには、下位キャッシュの全ディレクトリ情報を格納することが可能な記憶領域を、上位キャッシュの格納先とは異なる記憶媒体に用意する必要がある。 A part of the directory information of the low-level cache in order to store the high-level cache is a storage area capable of storing all the directory information of the low-level cache, needs to be prepared in different storage medium is a storage destination of the high-level cache there is.

例えば、ストレージで記憶領域の単位として用いられるボリュームを、物理的又は仮想的に定義し、前記ボリュームを、下位キャッシュのディレクトリ情報を格納するための専用の記憶領域として使用する。 For example, the volume to be used as a unit of storage area in the storage, physically or virtually defined, the volume is used as a dedicated storage area for storing directory information of a lower cache. 本明細書では、下位キャッシュのディレクトリ情報を格納するためのボリュームをディレクトリボリューム、「D−Vol」(Directory Volume)という。 In the present specification, the volume of the directory volume for storing the directory information of the low-level cache, "D-Vol" that (Directory Volume).

D−Vol(図3の232)は、下位キャッシュのディレクトリ情報の全てを格納するために十分な容量を有する。 D-Vol (232 in FIG. 3) has sufficient capacity to store all of the directory information of the low-level cache. D−Volに格納された下位キャッシュのディレクトリ情報のうち、アクセス頻度の高い一部の情報を優先的に、上位キャッシュに格納する。 Among the directory information stored low-level cache to D-Vol, the high part of the information access frequency preferentially stored in the high-level cache. ただし、上位キャッシュにおいて、下位キャッシュのディレクトリ情報の格納に利用可能な容量を上回らない範囲とする。 However, in the high-level cache, and a range that does not exceed the capacity available to store directory information of the low-level cache.

ストレージにおいて、キャッシュのパーティショニングをD−Volに対して適用することで、上位キャッシュに、D−Vol専用のパーティション(「D−Partition」という、図3のD−Partition223参照)を定義する。 In storage, by applying the cache partitioning against D-Vol, the high-level cache, (referred to as "D-Partition", see D-Partition223 in FIG 3) D-Vol dedicated partition defining the. 上位キャッシュ上の当該D−Partition内に下位キャッシュのディレクトリ情報が格納される。 Directory information of the low-level cache are stored in the D-Partition on the high-level cache. 上位キャッシュにパーティション(D−Partition)を設け、当該パーティションを下位キャッシュのディレクトリ情報格納用に所定の容量を確保可能としている。 Partition (D-Partition) provided in the high-level cache, thereby enabling secure a predetermined space for storing directory information of the partition low-level cache.

また上位キャッシュのキャッシュ置換制御により、下位キャッシュのディレクトリ情報の中からアクセス頻度の高いディレクトリ情報が、優先的に、上位キャッシュのD−Partition内に格納される。 Also by the cache replacement control of the high-level cache, high directory information access frequency from the directory information of a lower cache, preferentially, is stored in the D-Partition of the high-level cache.

なお、上位キャッシュのD−Partition内に格納される、下位キャッシュのディレクトリ情報のページの置換は、キャッシュデータのページ置換と同様に、例えばLRU(Least Recently Used)等任意の公知の置換アルゴリズムが用いられる。 Incidentally, are stored in the D-Partition of the high-level cache, substitution of pages of the directory information of a lower cache, as well as the page replacement of cache data, for example, LRU (Least Recently Used), etc. Any known replacement algorithm used It is. また、キャッシュされるデータと同様、上位キャッシュのD−Partition内から置換されるページ(下位キャッシュのディレクトリ情報を含むページ)は、更新が反映されていない場合には、下位キャッシュのディレクトリボリュームD−Volに反映した上で置換される。 Further, similarly to the data to be cached, the page to be replaced from the D-Partition of the high-level cache (pages containing directory information of the low-level cache), when the update is not reflected, the low-level cache directory volume D- is replaced on that reflects in Vol. また、下位キャッシュのディレクトリボリュームD−Volに記憶されるディレクトリ情報は、基本的に、上位キャッシュのD−Partition内に格納される下位キャッシュのディレクトリ情報を含む構成とされるが(D−Partitionのディレクトリ情報は、下位キャッシュのディレクトリボリュームD−Volのディレクトリ情報の写し、又は更新情報)、上位キャッシュのD−Partition内に格納される下位キャッシュのディレクトリ情報が、下位キャッシュのディレクトリボリュームD−Volに含まれないか、含まれない場合を許容する構成であってもよいことは勿論である。 Further, the directory information stored in the directory volume D-Vol in the low-level cache is basically it is configured to include a directory information of the low-level cache to be stored in the D-Partition higher cache (D-Partition directory information is a copy of the directory volume D-Vol directory information of a lower cache, or update information), the directory information of the low-level cache to be stored in the D-Partition upper cache, the directory volume D-Vol in the low-level cache or not included, it may be configured to permit not contain as a matter of course.

さらに、一般的なストレージにおけるパーティショニング機能が持つ各パーティションの容量を変更する機能を用いることで、D−Partitionの記憶容量は、可変自在とされる。 Further, partitioning capabilities in a typical storage by using a function of changing the capacity of each partition having the storage capacity of the D-Partition is freely varies. つまり、上位キャッシュにおいて、下位キャッシュのディレクトリ情報の格納に使用する容量の値の変更が可能である。 That is, in the high-level cache, it is possible to change the value of the capacitance used to store directory information of a lower cache.

上記した機能を複数階層のキャッシュを持つストレージで実現するために、 To realize the function described above in storage with caching multiple hierarchies,
・ストレージに保持されるデータを記憶保持する記憶媒体と、 A storage medium for the storing and holding data held-in storage,
・記憶媒体上のデータをキャッシュする、高速な上位キャッシュ及び低速な下位キャッシュと、 · Cache data on the storage medium, and the high-level cache and a slow low-level cache fast,
・上位キャッシュと下位キャッシュの情報の格納に用いる1次高速記憶及び2次高速記憶と、 A primary high speed memory and secondary fast memory used to store the & high-level cache and low-level cache information,
・下位キャッシュのディレクトリ情報を格納するための記憶領域であるD−Volと、 · And D-Vol is a storage area for storing directory information of the low-level cache,
・上位キャッシュ上に、D−Volに対して定義されたパーティションであるD−Partitionと、 - higher on the cache, the D-Partition is a partition defined for D-Vol,
・下位キャッシュのディレクトリ情報へのアクセスを、D−Volに対するアクセスに変換する機能と、 A-low-level cache access to directory information, and the ability to convert to access to the D-Vol,
・D−Partitionの記憶容量を指定する機能と、 And the ability to specify the storage capacity of · D-Partition,
を備える。 Equipped with a.

具体的には、ストレージの全データを格納する記憶媒体として、例えばHDD又はSSDが用いられる。 Specifically, as the storage medium to store all data for storage, for example, HDD or SSD is used. 記憶媒体は、単体又は複数のユニットから構成される。 Storage medium is composed of a single or multiple units.

上位キャッシュ、及び、下位キャッシュは、前記記憶媒体に格納されたデータのうち、アクセス頻度の高いデータの複製又は更新を格納する。 High-level cache, and low-level cache, among the data stored in the storage medium, stores a copy or update of frequently accessed data. また、下位キャッシュに対して、上位キャッシュは、よりアクセス頻度の高いデータに対する複製又は更新を格納する。 Further, with respect to low-level cache, the high-level cache stores a copy or update to higher-frequently accessed data.

1次高速記憶(図3の22)は、前記上位キャッシュ(図3の221)に格納されるデータ、及び、ディレクトリ情報を実際に格納する記憶媒体である。 Primary Fast memory (22 in FIG. 3), the data stored in the high-level cache (221 in FIG. 3), and a storage medium for storing the directory information in practice.

1次高速記憶(図3の22)は、前記下位キャッシュ(図3の231)のディレクトリ情報を格納する。 Primary Fast memory (22 in FIG. 3) stores the directory information of the low-level cache (231 in FIG. 3). 一方、2次高速記憶(図3の23)は、前記下位キャッシュ(231)に格納されるデータを実際に格納する記憶媒体である。 Meanwhile, the secondary high-speed memory (23 in FIG. 3) is a storage medium that actually stores the data stored in the low-level cache (231). 1次高速記憶、2次高速記憶共に前記記憶媒体に比べて高速なアクセスが可能であり、1次高速記憶(図3の22)は2次高速記憶(図3の23)に比べてより高速なアクセスが可能である。 Primary fast memory, high-speed access compared to the storage medium in the secondary fast memory both are possible, faster than the primary fast memory (22 in FIG. 3) is the secondary high-speed memory (23 in FIG. 3) such access is possible.

D−Vol(図3の232)は、2次高速記憶(23)等、ストレージ内に存在する1次高速記憶以外の記憶媒体上に定義され、下位キャッシュ(231)のディレクトリ情報を格納する。 D-Vol (232 in FIG. 3) is the secondary high-speed memory (23) or the like, are defined in a storage medium other than the primary fast memory that exists in the storage, stores directory information of the low-level cache (231). D−Vol(図3の232)に格納された下位キャッシュのディレクトリ情報は、ストレージ外部から参照されないように、ストレージ全体の記憶領域には割り当てられず、独立して存在する。 D-Vol directory information stored lower cache (232 in FIG. 3), as not to be referred from the storage outside, not allocated to the storage area of ​​the entire storage, it exists independently.

D−Partition(図3の223)は、前記上位キャッシュの領域上に定義され、上位キャッシュにおいて、前記D−Vol(図3の232)に格納された下位キャッシュのディレクトリ情報を格納するために設けられたパーティションである。 D-Partition (223 in FIG. 3) is defined on a region of the high-level cache, in the high-level cache, provided for storing directory information of the D-Vol stored subordinate cache (232 in FIG. 3) It was a partition. 上位キャッシュ(221)上に定義されたパーティションであるため、D−Partition(図3の223)に格納された下位キャッシュのディレクトリ情報は、1次高速記憶(22)上に格納される。 Since a partition defined on the high-level cache (221), D-Partition directory information stored lower cache (223 in FIG. 3) it is stored on the primary fast memory (22). D−Partition(図3の223)は、D−Vol(図3の232)に対する専用のキャッシュとして動作する。 D-Partition (223 in FIG. 3) operates as a dedicated cache for D-Vol (232 in FIG. 3). 下位キャッシュ(231)のディレクトリ情報は、D−Partition(223)以外の上位キャッシュ(221)の領域には格納されない。 Directory information of the low-level cache (231) is not stored in the region of the D-Partition (223) other than the high-level cache of (221).

下位キャッシュ(図3の231)のディレクトリ情報へのアクセスを、D−Vol(232)に対するアクセスに変換する機能(以下、「D−Volアクセス変換機能」という)は、下位キャッシュ(231)の制御において、ディレクトリ情報の読み書き処理を、D−Vol(図3の232)の対応するアドレスへのRead又はWrite要求に変換する。 Access to directory information of a lower cache (231 in FIG. 3), that can convert the access to D-Vol (232) (hereinafter referred to as "D-Vol access conversion function"), the control of the low-level cache (231) in the write processing of directory information, and converts the Read or Write request into a corresponding address of the D-Vol (232 in FIG. 3).

変換後のRead、Write要求は、他の記憶領域に対するアクセスと同様にして、処理が行われ、D−Partition(223)、又は、D−Vol(232)に格納されたディレクトリ情報へのアクセスが行われる。 Read after conversion, Write request, in the same way as access to other storage areas, processing is performed, D-Partition (223), or, access to directory information stored in the D-Vol (232) It takes place.

D−Partition(223)の容量を指定する機能(例えば図2のパーティション容量設定部27に対応)は、ストレージの外部又は内部から入力された容量の指定を入力として、D−Partition(223)の容量を設定する。 The ability to specify the amount of D-Partition (223) (e.g., corresponding to the partition capacity setting unit 27 in FIG. 2) is input with the specified volume inputted from the external or internal storage, D-Partition of (223) to set the capacity.

D−Partition(223)の容量が変更された場合、上位キャッシュ(221)は、前記容量の変更を満たすように格納されたデータの置換を行う。 If the amount of D-Partition (223) is changed, the high-level cache (221), the replacement of the stored data so as to satisfy the change of the capacitance.

本実施形態によれば、上位キャッシュ(221)に、下位キャッシュ(231)のディレクトリ情報の一部をキャッシュすることで、上位キャッシュ(221)の容量、及び、前記下位キャッシュ(231)のディレクトリ情報が使用する前記記憶媒体の容量について、各階層が使用しないDRAM等に代表される高速な記憶媒体の容量を、他の階層に、効率的かつ即時の割り当てを実現する。 According to this embodiment, the high-level cache (221), by caching some directory information of the low-level cache (231), the capacity of the high-level cache (221), and directory information of the low-level cache (231) There the capacity of the storage medium used, the capacity of the high-speed storage medium each hierarchy typified by DRAM not used, the other hierarchy, to realize the assignment of efficient and immediate.

また、上位キャッシュ(221)のD−Partition(223)に格納された、下位キャッシュ(231)のディレクトリ情報に対して、上位キャッシュ(221)がデータの置換を行うことで、アクセス頻度の高いディレクトリ情報が優先的に高速な記憶媒体に格納される。 Further, it stored in the D-Partition the high-level cache (221) (223), the directory information of the low-level cache (231), the high-level cache (221) by performing a substitution data, frequently accessed directory information is stored in the priority fast storage medium.

上位キャッシュ(221)において、下位キャッシュ(231)のディレクトリ情報が使用する容量は、D−Partition(223)の容量で制限される。 In the high-level cache (221), the directory information of the low-level cache (231) the capacity to use is limited by the capacity of the D-Partition (223).

そのため、高速な記憶媒体に格納されていないディレクトリ情報へのアクセスに伴う性能低下を最小限に防ぎつつ、下位キャッシュのディレクトリ情報を高速な記憶媒体に格納していた場合に比べて高速な記憶媒体の容量を圧迫することなく、下位キャッシュの容量増加を可能にする。 Therefore, while preventing performance degradation due to the access to the directory information that is not stored in a high-speed storage medium to a minimum, high-speed storage medium as compared with the case where not store directory information for the low-level cache to a faster storage medium without having to compress the capacity, to enable the capacity increase of the low-level cache.

<実施形態1> <Embodiment 1>
例示的な実施形態のシステム構成について図面を参照して説明する。 Will be described with reference to the drawings the system configuration of the exemplary embodiment. 図1は、例示的な実施形態の構成例を例示する図である。 Figure 1 is a diagram illustrating a configuration example of an exemplary embodiment. 図1を参照すると、システムは、データにアクセスする1台以上のホスト1、単体又は複数の記憶媒体から構成されるストレージ2、及び、ホスト1、ストレージ2を接続するネットワーク3を含む。 Referring to FIG. 1, the system includes a network 3 that connects the host 1 over one to access the data, the storage 2 consists of a single or a plurality of storage media, and the host 1, the storage 2.

ネットワーク3は、ストレージ2に対して複数のホスト1が接続可能な形態のみならず、ホスト1とストレージ2が直接接続される形態であってもよい。 The network 3, a plurality of hosts 1 not only possible connection mode to the storage 2 may be in the form of host 1 and the storage 2 is connected directly. またストレージ2は、ネットワーク3によって接続された複数の装置、あるいは、システムによって構成されてもよい。 The storage 2 includes a plurality of devices connected by a network 3, or may be configured by the system.

次に、ストレージ2の構成について図2、図3を参照して説明する。 Next, FIG. 2, will be described with reference to FIG. 3 the configuration of the storage 2. 図2は、実施形態1におけるストレージ2の構成を例示した図である。 Figure 2 is a diagram illustrating the configuration of the storage 2 in the first embodiment. 図2を参照すると、ストレージ2は、ストレージ2に格納される情報を格納する記憶媒体21と、1次高速記憶22と、2次高速記憶23と、アクセス要求処理部24と、ディレクトリ情報アクセス変換部25と、データアクセス部26と、パーティション容量設定部27と、アクセステーブル28と、を備えている。 Referring to FIG. 2, the storage 2 includes a storage medium 21 for storing the information stored in the storage 2, the primary fast memory 22, a secondary high-speed memory 23, an access request processing unit 24, directory information access conversion and parts 25, the data access unit 26, and a partition capacity setting unit 27, an access table 28, a. 図3は、1次高速記憶22、及び、2次高速記憶23の構成を模式的に示す図である。 3, the primary fast memory 22, and a diagram schematically showing a configuration of the secondary fast memory 23.

<記憶媒体> <Storage medium>
図2を参照すると、記憶媒体21は、ストレージ2の記憶領域全体のデータを格納し、例えばHDD(Hard Disk Drive)、又はNANDフラッシュ等で構成されたSSDのような単体又は複数の記憶媒体から構成される。 Referring to FIG. 2, the storage medium 21 stores the data of the entire storage area of ​​the storage 2, from a single piece or a plurality of storage media, such as, for example, the HDD (Hard Disk Drive), or composed of a NAND flash and SSD constructed. なお、図2では、簡単のため、記憶媒体21を1台(ユニット)で表しているが、RAID(Redundant Array of Inexpensive Disks)等複数の記憶媒体(ディスクアレイ)を備えた構成としてもよいことは勿論である。 In FIG. 2, for simplicity, but represents the storage medium 21 by one (unit) may also be a configuration with RAID (Redundant Array of Inexpensive Disks) such as a plurality of storage media (disk array) it is a matter of course.

<1次高速記憶> <Primary high speed memory>
1次高速記憶22は、記憶媒体21に対してより高速な媒体であり、例えば記憶媒体21が、HDD又はSSDである場合にDRAM等の高速な媒体で構成される。 The primary fast memory 22 is a faster medium to the storage medium 21, for example, a storage medium 21 is comprised of high-speed medium such as a DRAM in the case of HDD or SSD.

図3を参照すると、1次高速記憶22は、記憶媒体21又は2次高速記憶23に格納されたデータ・情報の写し(複製)と更新内容を一時的に記憶保持(キャッシュ)する上位キャッシュ221と、上位キャッシュ221のディレクトリ情報である上位ディレクトリ情報222を備えている。 Referring to FIG. 3, the high-level cache 221 is a primary fast memory 22, which temporarily stores and holds a copy (replication) and updates the stored in the storage medium 21 or the secondary fast memory 23 data information (cache) When, a level directory information 222 is a directory information of the upper cache 221. 1次高速記憶22において、上位ディレクトリ情報222を記憶する記憶領域は、上位キャッシュ221の記憶領域とは別に設定されるが、上位ディレクトリ情報222を記憶する記憶領域を構成する記憶素子は、上位キャッシュ221を構成するDRAM等と同一デバイスとしてもよいことは勿論である。 In the primary high speed memory 22, a storage area for storing the higher directory information 222, the storage element is the storage area of ​​the high-level cache 221 is set separately, which constitutes a storage area for storing level directory information 222, the high-level cache 221 may be the same device as DRAM or the like constituting the it is a matter of course.

上位キャッシュ221において、ストレージ2の記憶媒体21の記憶領域に保持されるデータを、ページ単位で管理する。 In the high-level cache 221, the data held in the storage area of ​​the storage medium 21 of the storage 2, managed in page units. さらに、上位キャッシュ221内にパーティションD−Partition223を設定する。 Further, to set the partition D-Partition223 in the high-level cache 221. なお、ストレージ2の記憶媒体21がHDD等の場合、ディスクアクセス単位となるブロックのサイズは、例えば512バイト、1024(1K)バイト、2K、あるいは、4Kバイト等となる。 In the case of HDD such as a storage medium 21 of the storage 2, the size of the block to be disk access unit is for example 512 bytes, 1024 (1K) bytes, 2K or becomes 4K bytes, and the like. キャッシュの記憶領域の単位であるページのサイズは、例えば512バイトから4Kバイト、あるいは8Kバイト(場合によってはより大きな値)とされ、例えば、ページアドレス(ページ番号)とページ内のオフセットでアクセスされる。 Size of a page is a unit of storage area of ​​the cache is, for example, from 512 bytes 4K bytes, or 8K bytes and (larger value as the case may be), for example, is accessed by an offset within the page and page address (page number) that. なお、ページアドレスを物理ページアドレスに変換するアドレス変換テーブル等は、図3では省略されている。 The address conversion table for converting a page address into a physical page address is omitted in FIG.

<2次高速記憶> <Secondary high-speed memory>
2次高速記憶23は、1次高速記憶22と同様に、記憶媒体21に対してより高速である。 Secondary fast memory 23, as in the primary fast memory 22 is faster with respect to the storage medium 21. 1次高速記憶22と同等又はより低速な媒体である。 1 is a primary fast memory 22 is equal to or slower media. 例えば記憶媒体21がHDD、1次高速記憶がDRAMである場合には、SSD等の中間的な性能を持つ媒体で構成される。 For example, when the storage medium 21 is a DRAM HDD, 1 primary fast memory is composed of media having an intermediate performance of the SSD or the like.

2次高速記憶23は、図3を参照すると、 Secondary fast memory 23, referring to FIG. 3,
・記憶媒体21に格納されたデータの写し又は更新内容を一時的に記憶保持(キャッシュ)する下位キャッシュ231と、 - a low-level cache 231 for temporarily storing and holding a copy or update the contents of the stored data (cache) in the storage medium 21,
・下位キャッシュ231のディレクトリ情報を格納するためのボリュームであるD−Vol232と、を備えている。 · Includes a D-Vol232, which is a volume for storing the directory information of the low-level cache 231.

下位キャッシュ231は、記憶媒体21の記憶領域上のデータをページ単位で管理する。 Low-level cache 231 manages data in the storage area of ​​the storage medium 21 in units of pages. 下位キャッシュ231におけるページサイズは、上位キャッシュ221と共通であることを前提とする。 Page size in the low-level cache 231, based on the premise that in common with the high-level cache 221. この場合、ページサイズを、上位キャッシュ221、下位キャッシュ231、記憶媒体21で共通としてもよい。 In this case, the page size, the high-level cache 221, low-level cache 231 may be shared with the storage medium 21. あるいは、下位キャッシュにおけるページサイズを上位キャッシュ221とは共通としない構成であってもよい。 Alternatively, the page size in the low-level cache may be configured without a common and high-level cache 221.

図3において、D−Vol232は、2次高速記憶23に格納される構成に制限されるものではない。 In FIG. 3, D-Vol232 is not limited to the configuration stored in the secondary high-speed memory 23. 例えばD−Vol232を、1次高速記憶22以外の任意の媒体に格納する構成としてもよい。 For example the D-Vol232, may be stored in the any medium other than the primary fast memory 22. 例えば、1つの変形例として、D−Vol232を図2の記憶媒体21に格納する構成としてもよい。 For example, in one variation, it may be configured to store the D-Vol232 in the storage medium 21 of FIG. この場合、以下の動作の説明等において、図3の2次高速記憶23のD−Vol232は、図2の記憶媒体21内のD−Volに読み替えられる。 In this case, in the description, such as the following operations, D-Vol232 secondary fast memory 23 of FIG. 3 is read as D-Vol in the storage medium 21 of FIG. あるいは、図3のD−Vol232を、2次高速記憶23と記憶媒体21とに備えた構成としてもよい。 Alternatively, the D-Vol232 in FIG 3, may be configured to include the secondary fast memory 23 and storage medium 21.

<アクセス要求処理部> <Access request processing unit>
図2のアクセス要求処理部24は、ストレージ2が、ホスト1から受理したアクセス要求を解釈し、アクセス要求に従った処理を行い、アクセス処理の処理結果を、アクセス要求元であるホスト1に返す。 Access request processing unit 24 in FIG. 2, the storage 2, interprets the access request received from the host 1 performs processing in accordance with the access request, the processing result of the access process, and returns to the host 1 is an access request source . アクセス要求処理部24は、アクセス要求を解釈し(コマンドをデコードしReadアクセスであるかをWriteアクセスであるか等を判別する)、アクセス要求(Readであるか、Writeであるか)に応じた制御を行う。 Access request processing unit 24 interprets the access request (whether the decoded Read access command to determine the like or a Write Access), (or a Read, or a Write) access request corresponding to It performs control. アクセス要求処理部24は、アクセス処理の実行制御にあたり、データアクセス部26を介して、1次高速記憶22上の上位キャッシュ221、2次高速記憶23上の下位キャッシュ231、記憶媒体21の順に、アクセスを行う。 Access request processing unit 24, when the execution control of the access processing, via a data access unit 26, low-level cache 231 on the high-level cache 221, primary fast memory 23 on the primary fast memory 22 in order of the storage medium 21, performing the access. 例えばデータ読出し要求のReadアクセスの実行にあたり、以下のアクセス制御が行われる。 For example Upon execution of the Read access data read request, the following access control is performed.

(a)1次高速記憶22上の上位キャッシュ221でヒットすれば(アクセス対象のデータを含むページが上位キャッシュ221に格納されている)、2次高速記憶23上の下位キャッシュ231、記憶媒体21へのアクセスは行われない。 (A) 1-order fast if a hit at the high-level cache 221 on the storage 22 (page including the access target data is stored in the high-level cache 221), on the secondary fast memory 23 low-level cache 231, the storage medium 21 access to is not carried out.

(b)1次高速記憶22上の上位キャッシュ221でミスであるが(アクセス対象のデータを含むページが上位キャッシュ221に格納されていない)、2次高速記憶23上の下位キャッシュ231でヒットすれば(アクセス対象のデータを含むページが下位キャッシュ231に格納されている)、記憶媒体21へのアクセスは行われない。 (B) is a miss in the high-level cache 221 on the primary fast memory 22 (page including the access target data is not stored in the high-level cache 221), a hit in the low-level cache 231 on the secondary fast memory 23 if (page containing the accessed data is stored in the low-level cache 231), access to the storage medium 21 is not performed.

(c)1次高速記憶22上の上位キャッシュ221でミスであり、且つ、2次高速記憶23上の下位キャッシュ231でミスであれば(アクセス対象のデータを含むページが上位キャッシュ221、下位キャッシュ231のいずれにも格納されていない)、記憶媒体21へのアクセスが行われる。 (C) a miss in the high-level cache 221 on the primary fast memory 22, and a secondary high speed if mistakes in low-level cache 231 of the storage 23 (accessed pages high-level cache 221 containing data, the low-level cache either 231 not stored), access to the storage medium 21 is performed.

なお、1次高速記憶22上の上位キャッシュ221でミスであるが、2次高速記憶23上の下位キャッシュ231でヒットした場合(上記(b)のケース)、ヒットした下位キャッシュ231のページを、1次高速記憶22上の上位キャッシュ221に新規ページとしてページの入れ替えを行う。 Although a mistake in the high-level cache 221 on the primary fast memory 22, if there is a hit in the low-level cache 231 on the secondary fast memory 23 (case of the above (b)), the page of the low-level cache 231 hit, performing replacement of pages as a new page to the high-level cache 221 on the primary fast memory 22. 上位キャッシュ221におけるページの入れ替えは、例えば上位キャッシュ221において、当該入れ替え発生の時点で、上位キャッシュ221においてそれまで最も長く参照されないページ選択して空ページとし、下位キャッシュ231のヒットしたページのデータを格納し、新規ページとして上位キャッシュ221に登録することで行われる。 Replacement of pages in the high-level cache 221, for example, in the high-level cache 221, at the time of the replacement occurs, the previous longest unreferenced page selected by the empty pages in the high-level cache 221, the data of the page that hits the low-level cache 231 stored, it is performed by registering the high-level cache 221 as a new page.

また、1次高速記憶22上の上位キャッシュ221でミスであり、且つ、2次高速記憶23上の下位キャッシュ231でミスの場合(上記(c)のケース)、記憶媒体21のデータを含むページを、1次高速記憶22上の上位キャッシュ221に、新規ページとして入れ替えを行うようにしてもよい。 Further, a mistake in the high-level cache 221 on the primary fast memory 22, and, (Case of the (c)) if a miss in the low-level cache 231 on the secondary fast memory 23, a page including data storage medium 21 and the high-level cache 221 on the primary fast memory 22, may perform the replacement as a new page.

アクセス要求処理部24において、2次高速記憶23上の下位キャッシュ231でのヒット/ミスの判定は、上位キャッシュ221内のD−Partion223、又は、2次高速記憶23のD−Vol232のディレクトリ情報に基づき行われる。 In the access request processing unit 24, the determination of the hit / miss on the low-level cache 231 on the secondary fast memory 23, D-Partion223 in the high-level cache 221, or, in the D-Vol232 directory information of the secondary fast memory 23 based carried out. アクセス要求処理部24は、これら上位キャッシュ221内のD−Partion223、及び、2次高速記憶23のD−Vol232のディレクトリ情報は、データアクセス部26を介してアクセスする。 Access request processing unit 24, D-Partion223 of the high-level cache 221, and the directory information of the D-Vol232 secondary fast memory 23 is accessed through the data access unit 26.

アクセス要求処理部24は、Readアクセスの応答として、上位キャッシュ221、又は下位キャッシュ231、又は記憶媒体21から読み出したデータを、アクセス要求元であるホスト1に送信する。 Access request processing unit 24 as a response to the Read Access, the data read from the high-level cache 221 or low-level cache 231, or the storage medium 21, and transmits to the host 1 is an access request source.

ホスト1(図1)からの書き込み要求(更新要求)に応じたWriteアクセスでは、 The Write access according to the write request from the host 1 (FIG. 1) (update request),
アクセス要求処理部24は、データアクセス部26を介して、1次高速記憶22上の上位キャッシュ221(図3)に確保された空きページに、Writeデータを格納する。 Access request processing unit 24 via the data access unit 26, the empty pages reserved in the high-level cache 221 on the primary fast memory 22 (FIG. 3), stores Write data. なお、上位キャッシュ221に空きページを確保するにあたり、データアクセス部26は、例えば上位キャッシュ221において、それまで最も長く参照されないものから必要な数のページを追い出し、これを空ページとするようにしてもよい。 Note that when securing the free page in the high-level cache 221, the data access unit 26, for example, in the high-level cache 221, it until expelling the number of pages required from those that are not referenced longest, which was to be empty page it may be. なお、Writeデータ格納用に空ページを確保するにあたり、更新が行われているが当該更新内容が記憶媒体21又は2次高速記憶23に反映されていないページについては、当該更新内容を記憶媒体21又は2次高速記憶23に反映した上で、Writeデータ格納用の空ページとして確保するようにしてもよい。 Note that when securing the empty pages for storing Write data for pages but update is being performed is not reflected in the update content storage medium 21 or the secondary high-speed memory 23, stores the update content medium 21 or in terms of reflecting the secondary fast memory 23, may be secured as a blank page for storing Write data. アクセス要求処理部24は、Writeアクセスに対する応答として、書き込みの完了をアクセス要求元であるホスト1に通知する。 Access request processing unit 24 as a response to the Write Access, and notifies the completion of writing to the host 1 is an access request source. 1次高速記憶22上の上位キャッシュ221にデータの書き込みが行われたページは、記憶媒体21にライトバック(WriteBack)される。 Page-level cache 221 to the data has been written on the primary fast memory 22 is written back (WriteBack) in the storage medium 21.

<ディレクトリ情報アクセス変換部> <Directory information access conversion unit>
図2のディレクトリ情報アクセス変換部25は、アクセス要求処理部24が下位キャッシュ231(図3)にアクセスする際に必要とされるディレクトリ情報に対するアクセスを、上位キャッシュ221内のD−Partition223に対するアクセス要求に変換する。 Directory information access conversion unit 25 of FIG. 2, the access to the directory information access request processing unit 24 is required to access the low-level cache 231 (FIG. 3), the access request to the D-Partition223 in the high-level cache 221 to convert to. ディレクトリ情報アクセス変換部25で変換された、アクセス要求処理部24からの下位キャッシュディレクトリ情報へのアクセス要求は、データアクセス部26に渡され、データアクセス部26を介して、D−Partition223へのアクセスが行われる。 Converted by the directory information access conversion unit 25, the access request to the low-level cache directory information from the access request processing unit 24 is passed to the data access section 26, via the data access unit 26, access to the D-Partition223 It is carried out. データアクセス部26は、アクセス対象の下位キャッシュ231のディレクトリ情報が、D−Partition223にキャッシュされているか否かを調べる(D−Partition223は、D−Vol232に格納される下位キャッシュ231のディレクトリ情報をキャッシュするために上位キャッシュ221に設けられたパーティションである)。 The data access unit 26, the directory information of the accessed the low-level cache 231, checks whether or not cached in D-Partition223 (D-Partition223 the cache directory information of a lower cache 231 to be stored in the D-Vol232 a partition provided in the high-level cache 221 to).

上位キャッシュ22内のD−Partition223に該当する下位キャッシュ231のディレクトリ情報(下位ディレクトリ情報)が格納されている場合、データアクセス部26は、下位キャッシュ231のディレクトリ情報として、上位キャッシュ221におけるD−Partition223に格納されたディレクトリ情報にアクセスし、アクセス要求処理部24に引き渡す。 If the directory information of the low-level cache 231 corresponding to the D-Partition223 in the high-level cache 22 (lower directory information) is stored, the data access unit 26, as the directory information of a lower cache 231, D-Partition223 in the high-level cache 221 accesses stored directory information, it passes the access request processing unit 24.

一方、上位キャッシュ22内のD−Partition223でミスした場合、データアクセス部26は、2次高速記憶23のD−Vol232に格納されたディレクトリ情報(下位ディレクトリ情報)にアクセスする。 On the other hand, if a miss in the D-Partition223 in the high-level cache 22, the data access unit 26 accesses the secondary fast memory 23 directory information stored in the D-Vol232 (lower directory information).

データアクセス部26は、アクセス要求処理部24、及びディレクトリ情報アクセス変換部25からの指示により、記憶媒体21、1次高速記憶22の上位キャッシュ221、及び2次高速記憶23の下位キャッシュ231の間でデータ/情報をページ単位で読み書きし、コピー、移動、更新の反映を行う。 The data access unit 26, the access request processing unit 24, and an instruction from the directory information access conversion unit 25, during the low-level cache 231 of high-level cache 221, and a secondary high-speed memory 23 of the storage medium 21, 1 primary fast memory 22 in reading and writing the data / information on a page-by-page basis, copy, move, the reflection of the update. なお、図2及び図3では、記憶媒体21、1次高速記憶22、2次高速記憶23は、データアクセス部26を介して相互接続される構成として示されており、データアクセス部26は、図示されないハードウエアリソースとして、記憶媒体21、1次高速記憶22、2次高速記憶23間のバス、及びバスインタフェース(バスアダプタ)等を含む。 In FIG. 2 and FIG. 3, the storage medium 21, 1 primary fast memory 22, 24, 32 primary fast memory 23 via the data access unit 26 is shown as configured to be interconnected, the data access unit 26, as a hardware resource (not shown), including between the storage medium 21, 1 primary fast memory 22, 24, 32 primary fast memory 23 of the bus, and a bus interface (bus adapter) or the like.

<パーティション容量設定部> <Partition capacity setting section>
パーティション容量設定部27は、1次高速記憶22の上位キャッシュ221上に設定されたD−Partition223の容量(記憶容量)を、ストレージ2の外部又はストレージ2の内部で指定された容量に設定する。 Partition capacity setting unit 27 sets the primary fast set on the high-level cache 221 of the memory 22 the D-Partition223 the capacity (storage capacity), the amount specified in the interior of the external or storage 2 storage 2. ストレージ2の外部からの設定として例えば不図示の管理サーバ等から、パーティション容量設定部27にD−Partition223の容量を設定してもよい。 From the management server or the like as the setting from the external storage 2, for example not shown, the partition capacity setting unit 27 may set the capacity of the D-Partition223. ストレージ2の内部でのD−Partition223の容量の指定としては、ストレージ2のシステムコンフィギュレーション設定時において該容量を設定するようにしてもよい。 The specification of the capacity of the D-Partition223 inside of the storage 2, may be set to said capacity at the time of system configuration settings of the storage 2. D−Partition223の容量は、例えば上位キャッシュ221におけるパーティションのページ数によって定義される。 Capacity of D-Partition223 is defined for example by the number of pages of the partitions in the high-level cache 221. 上位キャッシュ221、及びD−Partition223において、ページ単位の置換が行われる。 In high-level cache 221, and D-Partition223, substitution of page unit is performed. パーティション容量設定部27は、例えば、D−Partition223の設定容量値を記憶保持するEEPROM(Electrically Erasable and Programmable Read Only Memory)等電気的に書き換え可能な不揮発メモリ等で構成し、D−Partition223の容量設定値として、データアクセス部26を介して、アクセス要求処理部24等で参照できるようにしてもよい。 Partition capacity setting unit 27, for example, composed of EEPROM (Electrically Erasable and Programmable Read Only Memory) or the like electrically rewritable nonvolatile memory for storing and holding the setting capacitance values ​​of the D-Partition223, capacity setting of D-Partition223 as the value via the data access unit 26 may be able to see the access request processing unit 24 or the like. パーティション容量設定部27で設定される容量値は、可変とされ、例えば、システムの動作環境、負荷等に応じて可変に調整するようにしてもよい。 Capacitance value set in the partition capacity setting unit 27 is a variable, for example, the operating environment of the system may be variably adjusted depending on the load and the like.

実施形態1では、パーティション容量設定部27で指定されたD−Partitionの容量値が、上位キャッシュ221において、実際のD−Partition223のページ数(ディレクトリ情報格納用のページ数)と異なる場合には、実際のD−Partition223のページ数が、パーティション容量設定部27に設定された容量設定値に、より近づくか、あるいは等しくなる(ほぼ等しくなる)ように、ページの置換が行われる。 In the first embodiment, the capacitance value of the D-Partition specified in the partition capacity setting unit 27, the high-level cache 221, if different from the actual D-Partition223 number of pages (number of pages for storing directory information) the actual number of pages of D-Partition223 is, the capacity setting value set in the partition capacity setting unit 27, more or approaches or equals (approximately equal) manner, replacement of a page is performed.

例えばD−Partition223において、下位キャッシュのディレクトリ情報の記憶に使用されているページ数がパーティション容量設定部27で指定されたページ数よりも少ない場合には、2次高速記憶23のD−Vol232から下位キャッシュ231のディレクトリ情報を読み込んだ場合に、上位キャッシュ221のデータ格納用のページ(D−Partition223に含まれないページ)を選択して、下位キャッシュ231のディレクトリ情報格納用のページ(D−Partition223のページ)への置き換えを行うことで、D−Partition223の実際のページ数(下位キャッシュのディレクトリ情報の記憶に使用されているページ数)がパーティション容量設定部27で指定されたページ数と等しくな For example, in D-Partition223, when the number of pages used to store directory information for the low-level cache is less than the number of pages specified by the partition capacity setting unit 27, the lower the D-Vol232 secondary fast memory 23 when reading the directory information of the cache 231, selects a page of data stored in the high-level cache 221 (page not included in D-Partition223), for storing directory information of the low-level cache 231 pages (for D-Partition223 by performing the replacement of the page), it equals the actual number of pages (number of pages used to store directory information of a lower cache) the number of pages specified by the partition capacity setting unit 27 of the D-Partition223 か、より近づくようにする。 Or, to be more closer.

上位キャッシュ221のデータ格納用のページを、下位キャッシュ231のディレクトリ情報格納用のページ(D−Partition223のページ)へ置き換えるにあたり、ディレクトリ情報格納用のページへ置き換えられた当該ページに含まれているデータ自体は、上位キャッシュ221から、廃棄してもよい。 Data pages for data storage of the high-level cache 221, which Upon replacing the pages for storing directory information of the low-level cache 231 (pages of D-Partition223), included in the page that was replaced into pages for storing directory information itself, from the high-level cache 221, may be discarded.

下位キャッシュ231のディレクトリ情報格納用のページへ置き換えられた当該ページ(上位キャッシュ221のデータ格納用のページ)のデータの破棄に伴い、上位ディレクトリ情報222が変更される。 With the discarding of data of the directory information stored for the page has been replaced to a page of the low-level cache 231 (pages for data storage of high-level cache 221), the upper directory information 222 is changed. あるいは、ディレクトリ情報格納用のページへ置き換えられる当該ページのデータを、下位キャッシュ231に、新規ページとして格納するようにしてもよい。 Alternatively, the data of the page to be replaced to the page for storing directory information, the low-level cache 231 may be stored as a new page. この場合、下位キャッシュ231のディレクトリ情報(図3のD−Vol232又は、上位キャッシュ221内のD−Partion223)が変更される。 In this case, the directory information of the low-level cache 231 (D-Vol232 in FIG. 3 or, D-Partion223 in the high-level cache 221) is changed.

逆に、上位キャッシュ221のD−Partition223(図3参照)において、ディレクトリ情報格納用のページの数が、パーティション容量設定部27で指定されたページ数よりも多い場合には、アクセス要求に対して、上位キャッシュ221でミスが発生した場合に、上位キャッシュ221のD−Partition223のディレクトリ情報格納用ページの中から、例えば1ページを選択して、該選択したページを、データ格納用のページに置き換える。 Conversely, the D-Partition223 the high-level cache 221 (see FIG. 3), the number of pages for storing directory information, if greater than the number of pages specified by the partition capacity setting unit 27, the access request , if a miss in the high-level cache 221 is generated, from the directory information stored for pages of D-Partition223 of the high-level cache 221, for example by selecting a page, a page that the selected, replacing the pages for data storage . そして、上位キャッシュ221でミスしたデータを含むページが、データアクセス部26を介して、下位キャッシュ231又は記憶媒体21から読み出され、上位キャッシュ221において、D−Partition223のディレクトリ情報格納用ページからデータ格納用への置き換えが行われた当該ページに格納される。 Then, the page that contains the data that missed in the high-level cache 221, via the data access section 26, read out from the low-level cache 231 or the storage medium 21, in the high-level cache 221, data from the directory information stored for pages of D-Partition223 replacement of a stored is stored in the page made.

<アクセステーブル> <Access table>
図2において、アクセステーブル28は、アクセス要求処理部24がホスト1から受理したアクセス要求を処理するために、記憶媒体21、1次高速記憶22の上位キャッシュ221(図3)、2次高速記憶23の下位キャッシュ231、D−Vol232(図3)に対するアクセス先のページアドレスを格納する。 2, the access table 28, in order to access request processing unit 24 processes the access request received from the host 1, the high-level cache 221 (FIG. 3) of the storage medium 21, 1 primary fast memory 22, a secondary high-speed memory storing the page address to be accessed for the low-level cache 231, D-Vol232 23 (FIG. 3).

図2において、アクセステーブル28に格納されたページアドレスは、アクセス要求処理部24によって参照される。 In Figure 2, a page address stored in the access table 28 is referred to by the access request processing unit 24. アクセス要求処理部24において、アクセス対象のページのデータが、下位キャッシュ231(図3)に格納されている場合に、アクセス処理中に、例えば、当該データをロックし、当該データが他のページのデータによって置換されることを防ぐ相互排他(mutual exclusion)のためにアクセステーブル28が用いられる。 In the access request processing unit 24, the data of the accessed page, if it is stored in the low-level cache 231 (FIG. 3), during the access process, for example, to lock the data, the data is other pages access table 28 is used for mutual exclusion (mutual exclusion) to prevent it from being replaced by the data.

アクセステーブル28に格納されたページアドレスは、対応するアクセス処理の完了時に、アクセス要求処理部24によって削除される(アンロック)。 Page address stored in the access table 28, when the corresponding access processing completion, is deleted by the access request processing unit 24 (unlocked).

次に、図3における、1次高速記憶22内の上位ディレクトリ情報222に格納された上位キャッシュ221のディレクトリ情報(上位ディレクトリ情報)と、2次高速記憶23内のD−Vol232に格納された下位キャッシュ231のディレクトリ情報(下位ディレクトリ情報)についてそれぞれ説明する。 Next, in FIG. 3, the primary fast directory information of the high-level cache 221 which is stored in the upper directory information 222 of storage 22 and (upper directory information), lower stored in D-Vol232 in the secondary high-speed memory 23 each of which describes the directory information of the cache 231 (lower directory information).

<上位ディレクトリ情報の構成例> <Configuration example of a higher-level directory information>
図4は、図3の上位ディレクトリ情報222の内容の一例を例示した図である。 Figure 4 is a diagram illustrating an example of the contents of the upper directory information 222 of FIG. 図4を参照すると、上位ディレクトリ情報222は、無効フラグ、D−Partition、ページアドレス、格納先アドレス、更新済フラグ、置換優先度の欄を1エントリとしてページ毎に有する。 Referring to FIG. 4, the upper directory information 222, invalid flag, D-Partition, page address, the storage address, update flag has for each page as one entry column of substitution priority.

無効フラグは、該当ページについてディレクトリ情報が無効であるか、すなわち、対応する上位キャッシュ221のページが未使用であるか否かを表すフラグである。 Invalid flag or directory information for the corresponding page is invalid, i.e., the pages of the corresponding high-level cache 221 is a flag indicating whether or not unused. 該当ページについてディレクトリ情報が無効(未使用である)の場合、Yes、無効でない(使用されている)場合、Noである。 For invalid directory information for the corresponding page (unused), Yes, (used) is not disabled when a No. なお、無効フラグの値Yes/Noは例えば1ビット情報(あるいは1バイト/ワード)の1/0で表現するようにしてもよい。 The value Yes / No invalid flag may be represented by 1/0, for example, 1-bit information (or 1 byte / word).

D−Partition(フラグ情報)は、上位キャッシュ221の各ページに対して、D−Partition223に含まれるページであるか否かを表すフラグである。 D-Partition (flag information) for each page of the high-level cache 221 is a flag indicating whether the pages included in the D-Partition223. D−Partitionフラグの値Yesは、当該ページが、D−Partition223に含まれるページ(下位ディレクトリ情報格納用のページ)である、D−Partitionフラグの値Noは、当該ページがD−Partition223に含まれるページ(ディレクトリ情報格納用ページ)ではない(データ格納用のページである)、ことを表している。 D-Partition flag value Yes, the corresponding page, a page (page for storing low-order directory information) contained in D-Partition223, the value No of D-Partition flag, the page is included in the D-Partition223 pages that are not (directory information storage page) (a page for data storage), which represents that.

ページアドレスは、上位キャッシュ221に格納されたページについてストレージ2全体での対応するページアドレス(例えば論理アドレス空間でのページ番号)である。 Page address is the corresponding page address of the entire storage 2 for pages stored in the high-level cache 221 (e.g., a page number in the virtual address space).

格納先アドレスは、当該ページの上位キャッシュ221における格納先を表すアドレスである。 Storage destination address is an address indicating the storage location in the high-level cache 221 of the page.

更新済フラグは、当該ページのデータが上位キャッシュ221に格納された後に、更新済であるかを表すフラグである。 Updated flag after the data of the page is stored in the high-level cache 221 is a flag indicating whether a updated. 更新済フラグは、上位キャッシュ221の当該ページにデータが格納された後に、該ページのデータが更新され、記憶媒体21へは該更新内容が反映されていない場合に、更新済み(Yes)とされ、上位キャッシュ221の当該ページにデータが格納された後に、該ページのデータが未更新状態であるか、記憶媒体21へ更新内容が反映されている場合に、Noとされる。 Updated flag after the data has been stored in the page of the high-level cache 221, the data of the page is updated, the the storage medium 21 when the updates are not reflected, is the updated (Yes) , after the data is stored in the page of the high-level cache 221, the data of the page is either a non-update state, when the update content to the storage medium 21 is reflected, is the No.

置換優先度は、当該ページの置換における優先度を表す情報である(値の設定としては、例えば正値に関して、大きいほど、優先的に置換される、あるいは、値が小さいほど、優先的に置換される、のいずれかに設定される)。 Substitution priority is information indicating the priority in the substitution of the page (as set values, for example with respect to positive, larger, preferentially substituted, or lower value, preferentially substituted It is is, is set to either of).

上位ディレクトリ情報222において、各欄の情報のうち、上位キャッシュ221における格納先を表す格納先アドレスは、各ページに対応したディレクトリ情報の大きさが同一であり、整列されて格納されている場合には、省略可能である。 In higher directory information 222, among the information of each column, the storage destination address indicating the storage location in the high-level cache 221, the same size of the directory information corresponding to each page, when stored aligned with It can be omitted. 例えば図4に示すように、格納先アドレスは1、2、3・・・と1つずつ増加しており、各ページに対応したディレクトリ情報の大きさが同一、且つ、順番に整列されて格納される場合、格納先アドレスは不要である。 For example, as shown in FIG. 4, the storage address is increased by the one 1,2,3, the size of the directory information corresponding to each page are the same, and, being aligned sequentially storing when, storage destination address is not required.

また、上位ディレクトリ情報222において、各ページのディレクトリ情報が無効であるか否かを表す無効フラグは、無効である場合に、対応するページアドレスを予め定められた特定の値(例えばページアドレスとしてとり得ない負値)に変更する等の方法により、省略することが可能である。 Further, the higher directory information 222, invalid flag indicating whether the directory information of each page is invalid, if it is invalid, taken as the corresponding specific values ​​defining a page address in advance (for example page address by a method such as changing the resulting non negative value), it is possible to omit.

さらに、上位ディレクトリ情報222として、D−Partition223が上位キャッシュ221に占める容量を記録してもよい。 Further, as the upper directory information 222 may record the volume D-Partition223 occupies the high-level cache 221. D−Partition223が上位キャッシュ221に占める容量を記録することで、D−Partition223の容量(ディレクトリ情報格納用ページの数)が、パーティション容量設定部27で指定された容量値(ページ数)を満たすか否かを判定する判定処理の負荷を軽減することができる。 By D-Partition223 records the space occupied by the high-level cache 221, it meets the capacity of the D-Partition223 (number for storing directory information page), the specified capacitance value partition capacity setting unit 27 (number of pages) it is possible to reduce the load of determination processing of whether or not. この判定処理は、上位キャッシュ221において、ディレクトリ情報格納用ページのデータ格納用のページへの置換、又はその逆の置換対象のページを決定するために行われる。 This determination process is the high-level cache 221, substitution of pages for data storage on page for storing directory information, or is carried out to determine the page to be replaced vice versa.

<下位ディレクトリ情報の構成例> <Configuration example of a lower directory information>
図5は、2次高速記憶23のD−Vol232に格納された下位キャッシュ231のディレクトリ情報(下位ディレクトリ情報)の内容の一例を例示した図である。 Figure 5 is an illustrated diagram of an example of the contents of the directory information of the secondary fast memory low-level cache 231 stored in D-Vol232 23 (lower directory information). 図5を参照すると、下位ディレクトリ情報2321は、無効フラグ、ページアドレス、格納先アドレス、更新済フラグ、置換優先度の欄を1エントリとしてページ毎に有する。 Referring to FIG. 5, the lower directory information 2321, invalid flag, a page address, the storage address, update flag has for each page as one entry column of substitution priority.

無効フラグは、また各ページについて対応するディレクトリ情報が無効であるか、つまり対応する下位キャッシュ231のページが未使用であるか否かを表すフラグである。 Invalid flag is also or directory information corresponding for each page is invalid, that is pages of the corresponding low-level cache 231 is a flag indicating whether or not unused. 該当ページについてディレクトリ情報が無効(未使用である)の場合、Yes、無効でない(使用されている)場合、Noである。 For invalid directory information for the corresponding page (unused), Yes, (used) is not disabled when a No. なお、無効フラグの値Yes/Noは例えば1ビット情報(あるいは1バイト/ワード)の1/0で表現するようにしてもよい。 The value Yes / No invalid flag may be represented by 1/0, for example, 1-bit information (or 1 byte / word).

ページアドレスは、下位キャッシュ231に格納されたページについてストレージ2全体での対応するページアドレスである。 Page address is the corresponding page address of the entire storage 2 for the page stored in the low-level cache 231.

格納先アドレスは、当該ページの下位キャッシュ231における格納先を表すアドレスである。 Storage destination address is an address indicating the storage location in the low-level cache 231 of the page.

更新済フラグは、当該ページのデータが下位キャッシュ231に格納された後に更新済であるか否かを表すフラグである。 Update flag is flag data of the page represents whether or not already updated after being stored in the low-level cache 231. 更新済フラグは、例えば下位キャッシュ231の当該ページにデータが格納された後に更新されたが、記憶媒体21へ該更新内容が反映されていない場合にYesとされ、下位キャッシュ231の当該ページにデータが格納された後に、該ページのデータが未更新状態であるか、記憶媒体21へ該更新内容が反映された場合に、Noとされる。 Update flag is, for example, data in the page of the low-level cache 231 is updated after being stored, the update content is Yes to not be reflected to the storage medium 21, data to the page of the low-level cache 231 There after being stored, whether the data of the page is not updated state, the updated content if it is reflected, are No to the storage medium 21.

置換優先度は、当該ページの置換における優先度を表す情報である(値の設定としては、例えば正値に関して、大きいほど、優先的に置換される、あるいは、値が小さいほど、優先的に置換される、のいずれかに設定される。但し、上位ディレクトリ情報の置換優先度の採番方法と共通の採番方法とされる)。 Substitution priority is information indicating the priority in the substitution of the page (as set values, for example with respect to positive, larger, preferentially substituted, or lower value, preferentially substituted is the is set to either. However, the numbering process of substitution priority level directory information and the common numbering method).

下位ディレクトリ情報2321において、上記各欄の情報のうち下位キャッシュ231における格納先を表すアドレスは、各ページに対応したディレクトリ情報の大きさが同一であり、整列されて格納されている場合には、省略可能である。 In the lower directory information 2321, the address indicating the storage location in the low-level cache 231 of each column of the information is the same in size of the directory information corresponding to each page, when stored aligned with the It may be omitted. また各ページのディレクトリ情報が無効であるか表すフラグは、対応するページアドレスをディレクトリ情報が無効である場合に、特定の値に変更する等の方法により、省略が可能である。 The flag indicating whether directory information for each page is invalid, when the corresponding page address directory information is invalid, by a method such as to change to a particular value, it can be omitted.

次に、実施形態の動作について説明する。 Next, the operation of the embodiment.

<Read、Writeアクセス要求処理> <Read, Write access request processing>
図6は、Read、Writeアクセス処理を説明する流れ図である。 Figure 6 is a flow diagram illustrating Read, the Write access process. 図1乃至図6を参照して、実施形態におけるReadアクセス又はWriteアクセス要求処理を行う動作の概要について説明する。 Referring to FIGS, outline of the operation for performing a Read access or Write access request processing in the embodiment will be described.

図1において、ホスト1からストレージ2に対してアクセス要求が行われると、図2のストレージ2において、アクセス要求処理部24がアクセス要求を解釈し、アクセス対象となるページのアドレスをアクセステーブル28に登録する。 In Figure 1, an access request from the host 1 to the storage 2 is performed in the storage 2 of FIG. 2, the access request processing unit 24 interprets the access request, the address of the page to be accessed in the access table 28 register. また、アクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221のディレクトリ情報である上位ディレクトリ情報222(図3)にアクセスし、アクセス対象となるページが上位キャッシュ221(図3)に格納されているか否かの判定(ヒット判定)を行う(図6のステップS101)。 The access request processing unit 24 via the data access unit 26 accesses the upper directory information 222 (FIG. 3) is a directory information of the upper cache 221, the page-level cache 221 to be accessed (Fig. 3) determination of whether it is stored in the (hit determination) is performed (step S101 in FIG. 6). アクセス要求処理部24でのヒット/ミスの判定は、アクセス対象となるページのアドレスと同一のページアドレスが、上位ディレクトリ情報222に格納されているか否かで行われる。 Determination of the hit / miss on the access request processing unit 24, a page address identical to the address of the page to be accessed is performed by whether or not it is stored in the upper directory information 222. 例えば図4において、上位ディレクトリ情報222のページアドレスがアクセス対象となるページのアドレスと一致し、無効フラグがNo、D−PartitionフラグがNoのページが存在する場合に、ヒット判定となる。 In FIG. 4, for example, the page address of the upper directory information 222 matches the address of the page to be accessed, invalid flag is No, when the D-Partition flag exists pages of No, the hit determination.

上位キャッシュ221(図3)に、アクセス対象となるページが格納されている場合(ヒットした場合)(図6のステップS102のYes分岐)、図2のアクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221のヒットしたページに対するアクセスを実行する。 The high-level cache 221 (FIG. 3), if the page to be accessed is stored (if a hit) (Yes branch of step S102 in FIG. 6), the access request processing unit 24 in FIG. 2, the data access section 26 through, to perform the access to the hit pages in the high-level cache 221. そして、アクセス要求処理部24は、1次高速記憶22の上位ディレクトリ情報222(図3)に含まれる、ヒットした当該ページのディレクトリ情報(図4参照)を更新する(置換優先度、更新の場合、更新済フラグの設定等)。 Then, the access request processing unit 24 is included in the upper directory information 222 of the primary fast memory 22 (FIG. 3), and updates the hit directory information of the page (see FIG. 4) (substitution priority, if the update , set of updated flags, and the like). その後、ステップS113以降(連結子1)の処理を実行する(図6のステップS103)。 Thereafter, it performs the process of step S113 and subsequent (consolidated 1) (step S103 in FIG. 6).

一方、上位キャッシュ221(図3)に、アクセス対象となるページが格納されていない場合(ミスした場合)(図6のステップS102のNo分岐)、図2のアクセス要求処理部24は、ディレクトリ情報アクセス変換部25を介して、下位キャッシュ231のディレクトリ情報を読み出し、アクセス対象となるページが下位キャッシュ231に格納されているか否かの判定(ヒット判定)を行う(図6のステップS104)。 On the other hand, the high-level cache 221 (FIG. 3), (if a miss) page to be accessed may not be stored (No branch of step S102 in FIG. 6), the access request processing unit 24 in FIG. 2, the directory information via the access conversion unit 25 reads the directory information of the low-level cache 231, the page to be accessed is to determine whether or not stored in the low-level cache 231 (hit determination) (step S104 in FIG. 6). なお、アクセス要求処理部24は、ディレクトリ情報アクセス変換部25を介して、上位キャッシュ221のD−Partition223内に格納された下位ディレクトリ情報2321(図5)を参照し、D−Partition223内にアクセス対象の下位ディレクトリ情報2321が格納されていない場合、2次高速記憶23のD−Vol232を参照する。 The access request processing unit 24 via the directory information access conversion unit 25 refers to the lower directory information stored in the D-Partition223 the high-level cache 221 2321 (FIG. 5), the access target in the D-Partition223 If lower directory information 2321 is not stored, referring to D-Vol232 secondary fast memory 23.

図2のアクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221(図3)に対して、新たにアクセスされるデータを格納するための空きページを確保する。 Access request processing unit 24 of Figure 2, via the data access unit 26, with respect to the high-level cache 221 (FIG. 3), to allocate a free page to store the data to be newly accessed. データアクセス部26は、空きページを確保するために、上位キャッシュ221(図3)のページに対する置換を行う(図6のステップS105)。 The data access unit 26, in order to ensure free pages, the replacement for the page of the high-level cache 221 (FIG. 3) (step S105 in FIG. 6). すなわち、上位キャッシュ221に空きページを確保するにあたり、データアクセス部26は、例えば上位キャッシュ221において、それまで最も長く参照されないものから必要な数のページを追い出し、これを空ページに置換するようにしてもよい。 That, when securing the free page in the high-level cache 221, the data access unit 26, for example, in the high-level cache 221, it until expelling the number of pages required from those that are not referenced longest, which was to replace the empty page it may be. 上位キャッシュ221(図3)から追い出されたページは、例えば下位キャッシュ231(図3)に格納され、上位ディレクトリ情報222(図3、図4)、下位ディレクトリ情報2321(図5)が更新される。 Pages evicted from the high-level cache 221 (FIG. 3) is, for example, is stored in the low-level cache 231 (FIG. 3), the upper directory information 222 (FIG. 3, FIG. 4), lower directory information 2321 (FIG. 5) is updated .

アクセス要求がWrite(書き込み)の場合(図6のステップS106のYes分岐)、アクセス要求処理部24は、データアクセス部26を介して上位キャッシュ221(図3)にページを確保し、確保された空きページに、Writeデータを書き込み(図6のステップS107)、その後、ステップS111以下を行う。 If the access request is Write the (write) (Yes branch of step S106 in FIG. 6), the access request processing unit 24 secures a page to high-level cache 221 (FIG. 3) via the data access unit 26, it is secured to free pages (step S107 in FIG. 6) write write data, then performs the step S111 follows.

アクセス要求がRead(読み出し)の場合(図6のステップS106のNo分岐)、ステップS104での判定結果が、下位キャッシュ231(図3)がヒットしているものである場合(図6のステップS108のYes分岐)、図2のアクセス要求処理部24は、データアクセス部26を介して、下位キャッシュ231のヒットしたページに対するアクセスを実行する。 If the access request is Read the (read) (No branch of step S106 in FIG. 6), the determination in step S104 is, if one in which the low-level cache 231 (FIG. 3) is hit (step S108 in FIG. 6 the Yes branch), the access request processing unit 24 of Figure 2, via the data access unit 26 executes the access to the page that hits the low-level cache 231. また、アクセス要求処理部24は、データアクセス部26を介して、下位キャッシュ231のヒットしたページから読み出したデータで、上位キャッシュ221に含まれる任意のページを置換して、図6のステップS111以降の処理を実行する(図6のステップS109)。 The access request processing unit 24 via the data access unit 26, data read out from the page that hits the low-level cache 231, to replace any pages included in the high-level cache 221, step S111 and subsequent 6 executing the processing (step S109 in FIG. 6).

下位キャッシュ231(図3)がミスした場合(図6のステップS108のNo分岐)、図2のアクセス要求処理部24は、データアクセス部26を介して、記憶媒体21に対してアクセス要求を実行する。 If the low-level cache 231 (FIG. 3) misses (No branch of step S108 in FIG. 6), the access request processing unit 24 of Figure 2, via the data access unit 26, executes the access request to the storage medium 21 to. アクセス要求処理部24は、データアクセス部26を介して、記憶媒体21よりアクセスしたデータを、ページ単位で、上位キャッシュ221(図3)に格納する。 Access request processing unit 24 via the data access unit 26, and stores the data accessed from the storage medium 21, in units of pages, the high-level cache 221 (FIG. 3). さらに、上位キャッシュ221に新たなデータが格納されることで、置換されるページ(上位キャッシュ221から追出されるページ)のデータを追い出して、下位キャッシュ231に移動する。 Further, by the new data is stored in the high-level cache 221, cast out of data of a page to be replaced (page expelled from the high-level cache 221), it moves to the low-level cache 231. 下位キャッシュ231において、上位キャッシュ221の当該ページのデータの移動により、置換されるページを削除する(上位キャッシュ221から下位キャッシュ231に追い出されたデータを格納するために、下位キャッシュ231のページのデータを削除し空ページを確保する)。 In the low-level cache 231, the movement of data in the pages of the high-level cache 221, to store data evicted to the low-level cache 231 from (the high-level cache 221 to remove a page to be replaced, the page of the low-level cache 231 data remove the securing the empty page). なお、削除されるページが更新されていた場合(当該ページの更新フラグがオン)には、アクセス要求処理部24は、データアクセス部26を介して、記憶媒体21に該更新内容を反映する(図6のステップS110)。 Note that if the page to be deleted has been updated (update flag is on the page), the access request processing unit 24 via the data access unit 26, reflecting the updated content in the storage medium 21 ( step S110 of FIG. 6).

図2において、アクセス要求処理部24は、ディレクトリ情報アクセス変換部25を介して、図3の上位キャッシュ221のD−Partition223、又は、2次高速記憶23のD−Vol232に格納された下位キャッシュ231のディレクトリ情報(下位ディレクトリ情報)を更新する(図6のステップS111)。 2, the access request processing unit 24 via the directory information access conversion unit 25, D-Partition223 of the high-level cache 221 of Figure 3, or the secondary high-speed memory 23 the low-level cache 231 stored in D-Vol232 of update directory information (lower directory information) (step S111 in FIG. 6). すなわち、ステップS105乃至S110等による、図3の下位キャッシュ231におけるページの状態の変更を、上位キャッシュ221のD−Partition223、又は、2次高速記憶23のD−Vol232に反映させる。 That is, in step S105 to S110, etc., a change in the state of the page at the low-level cache 231 of Figure 3, D-Partition223 of the high-level cache 221, or, to be reflected in the D-Vol232 secondary fast memory 23.

図2において、アクセス要求処理部24は、データアクセス部26を介して、1次高速記憶22の上位ディレクトリ情報222(図3)に含まれる、置換を行ったページの情報を更新する(図6のステップS112)。 2, the access request processing unit 24 via the data access unit 26, included in the upper directory information 222 of the primary fast memory 22 (FIG. 3), and updates the information of the page subjected to substitution (Fig. 6 step S112 of). ステップS105乃至S110等による、上位キャッシュ221(図3)におけるページの状態の変更を、1次高速記憶22の上位ディレクトリ情報222に反映させる。 By steps S105 to S110, etc., a change in the state of the page at the high-level cache 221 (FIG. 3), to be reflected in the higher directory information 222 of the primary fast memory 22.

図6では、ステップS109における、上位ディレクトリ情報222(図3)の更新は、ステップS108の下位キャッシュ231のディレクトリ情報の更新より後に行われているが、ステップS108と同時、又は、ステップS108よりも先に行うようにしてもよい。 In Figure 6, at step S109, updating of the higher directory information 222 (FIG. 3) has been performed after the updating of the directory information of the low-level cache 231 in step S108, step S108 simultaneously, or, than step S108 above may be performed.

図2において、アクセス要求処理部24は、Readアクセス要求の結果であるReadデータ、又は、Writeアクセスの完了通知を、アクセス要求元のホスト1(図1)に対して返し、処理を終了する(図6のステップS113)。 2, the access request processing unit 24, Read data is the result of the Read access request, or a completion notification of the Write Access, returns to the access requesting host 1 (FIG. 1), and ends the process ( step S113 of FIG. 6). 図6のステップS108〜S110は、上位、下位キャッシュ221、231でミスヒット時に、記憶媒体21からアクセスデータを読み出し、上位キャッシュ221に格納するというReadアクセスの一例を説明している。 Step S108~S110 of FIG. 6, the upper, when a miss hit in the low-level cache 221, 231, reads the access data from the storage medium 21, describes an example of a Read access that stored in the high-level cache 221.

Writeアクセスでは、図3の上位キャッシュ221及び下位キャッシュ231でミスヒット時に、上位キャッシュ221にページを確保して書き込みを行い、その後、記憶媒体21にライトバック(write back)する構成としてもよい。 The Write access, when a miss hit by the high-level cache 221 and low-level cache 231 of Figure 3, writes to secure the page in high-level cache 221, then, may be configured to a storage medium 21 writeback (write back). この場合、ホスト1(図1)へのWriteアクセスの完了通知は、上位キャッシュ221へのデータ格納の完了を契機として行うようにしてもよい。 In this case, the completion notification of the Write access to the host 1 (FIG. 1) may be performed for the completion of the data storage in the high-level cache 221 as a trigger.

以上のステップS101からS113までの処理を行い、実施形態におけるReadアクセス又はWriteアクセス要求処理を行う動作が完了する。 Above it performs processing in steps S101 to S113, the operation of performing Read access or Write access request processing in the embodiment is completed.

<上位キャッシュにおける新規データ格納用ページの確保> <Ensure the page for storing new data in the high-level cache>
図7は、図6のステップS105の処理を説明するための流れ図である。 Figure 7 is a flowchart for explaining the processing of step S105 in FIG. 6. 図6のステップS105では、前述したように、アクセス要求処理部24がデータアクセス部26を介して、1次高速記憶22の上位キャッシュ221において新たにアクセスされるデータを格納するための空きページを確保する。 In step S105 of FIG. 6, as described above, the access request processing unit 24 via the data access unit 26, a free pages for storing data to be newly accessed in the high-level cache 221 of the primary fast memory 22 secure. 図1乃至図5、図7を参照して、図6のステップS105(上位キャッシュにおける新規データ格納用ページの確保)の詳細について説明する。 1 to 5 and 7, details of step S105 in FIG. 6 (reserved pages for storing new data in the high-level cache).

図2のアクセス要求処理部24は、データアクセス部26を介して、上位ディレクトリ情報222(図3)における各ページのディレクトリ情報の無効フラグを参照し、上位キャッシュ221(図3)に空きページ(無効フラグがYesの未使用ページ)が存在するか否かを確認する(図7のステップS201)。 Access request processing unit 24 of Figure 2, via the data access unit 26 refers to the invalid flag of the directory information of each page in the upper directory information 222 (FIG. 3), free pages on the high-level cache 221 (FIG. 3) ( invalid flag to check whether there are unused pages) of Yes (step S201 in FIG. 7). 上位キャッシュ221に、空きページが存在する場合(図7のステップS202のYes分岐)、アクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221の空きページのうちの任意のページを、新規データ格納のための空きページとして確保して、処理を終了する(図7のステップS203)。 The high-level cache 221, when a free page exists (Yes branch of step S202 in FIG. 7), the access request processing unit 24 via the data access section 26, any page of the empty pages of the high-level cache 221 , to ensure a free page for the new data storage, the process ends (step S203 in FIG. 7).

上位キャッシュ221に空きページが存在しない場合(図7のステップS202のNo分岐)、アクセス要求処理部24は、データアクセス部26を介して、上位ディレクトリ情報222(図4)を参照して、図3の上位キャッシュ221に含まれる、D−Partition223の容量を確認する。 If the high-level cache 221 does not exist free page (No branch of step S202 in FIG. 7), the access request processing unit 24 via the data access unit 26, by referring to the upper directory information 222 (FIG. 4), FIG. It included in the high-level cache 221 of 3, to confirm the capacity of the D-Partition223. 上位キャッシュ221に含まれるD−Partition223の容量は、図4の上位ディレクトリ情報222の「D−Partition」の欄がYesのページ(D−Partition223に含まれるページ)の合計から算出される。 Capacity of D-Partition223 included in the high-level cache 221, column "D-Partition" upper directory information 222 of FIG. 4 is calculated from the sum of Yes page (pages included in D-Partition223).

図2のアクセス要求処理部24は、D−Partition223(図3)の容量(現在の容量)を、図2のパーティション容量設定部27で指定されたD−Partition223の容量値(閾値)と比較する(図7のステップS204)。 Access request processing unit 24 in FIG. 2 compares the capacity of the D-Partition223 (Figure 3) the (current capacity), the capacitance value of the D-Partition223 specified partition capacity setting unit 27 of FIG. 2 (threshold value) (step S204 of FIG. 7). D−Partition223(図3)の現在の容量が、図2のパーティション容量設定部27で指定された容量値以下であった場合(図7のステップS205のYes分岐)、アクセス要求処理部24は、上位キャッシュ221に含まれるページのうち、D−Partition223に含まれないページ(図4のD−Partitionフラグ欄の値がNoのページ)のデータを削除して、空きページとし、新規に格納するデータのために確保して、処理を終了する(図7のステップS206)。 Current amount of D-Partition223 (FIG. 3), if not more than the capacitance value specified in the partition capacity setting unit 27 of FIG. 2 (Yes branch of step S205 in FIG. 7), the access request processing unit 24, among the pages included in the high-level cache 221, the page that is not included in the D-Partition223 (the value of D-Partition flag column of FIG. 4 no page of) by deleting the data, and a free page, the data to be stored newly and reserved for, the process ends (step S206 in FIG. 7).

一方、D−Partition223(図3)の容量が、パーティション容量設定部27で指定された容量値よりも大きい場合には(図7のステップS205のNo分岐)、アクセス要求処理部24は、上位キャッシュ221に含まれるページのうち、D−Partition223に含まれる任意のページ(下位ディレクトリ情報格納用のページ)について、新規にデータを格納するためのページとして選択する(図7のステップS207)。 On the other hand, D-Partition223 capacity (Fig. 3), but it is larger than the capacitance value specified in the partition capacity setting unit 27 (No branch of step S205 in FIG. 7), the access request processing unit 24, the high-level cache among the pages included in 221, for any page included in D-Partition223 (pages for storing low-order directory information) is selected as a page for storing new data (step S207 in FIG. 7). D−Partition223に含まれるページ(下位ディレクトリ情報格納用のページ)から新規にデータを格納するためのページを選択し、該ページを新規データ格納用ページとして確保するにあたり、当該時点で、それまえ最も長く使用されないページ(下位ディレクトリ情報格納用のページ)を選択するようにしてもよい。 Select the page for storing new data from the page (page for storing low-order directory information) contained in D-Partition223, Upon securing the page as a new data storage page, in the time it before most may be selected for a long time are not used page (page for storing low-order directory information).

上位ディレクトリ情報222(図3)に記録されたディレクトリ情報(図4の更新済フラグ)から、図7のステップS207で確保したページが更新済ではない場合には(図7のステップS208のNo分岐)、図2のアクセス要求処理部24は、図7のステップS210以降の処理を実行する。 From the upper directory information 222 recorded directory information (FIG. 3) (updated flag of FIG. 4), if the page was secured in step S207 of FIG. 7 that are not updated (No branch of step S208 in FIG. 7 ), the access request processing unit 24 of FIG. 2 performs step S210 and subsequent steps in FIG.

上位ディレクトリ情報222(図3)に記録されたディレクトリ情報から、図7のステップS207で確保したページが更新済である場合には(図7のステップS208のYes分岐)、図2のアクセス要求処理部24は、ステップS207で確保したD−Partition223(図3)に含まれるページについて、該ページに対応する下位キャッシュ231のD−Vol232(図3)のページに、図7のステップS207で確保した当該ページの更新内容を反映する(図7のステップS209)。 From the directory information recorded in the higher directory information 222 (FIG. 3), if the page was secured in step S207 of FIG. 7 is already updated (Yes branch of step S208 in FIG. 7), the access request processing of FIG. 2 part 24 is for a page that is included in the D-Partition223 secured in step S207 (FIG. 3), the pages of the D-Vol232 of the low-level cache 231 corresponding to the page (FIG. 3), secured in the step S207 of FIG. 7 to reflect the update content of the page (step S209 in FIG. 7).

図2のアクセス要求処理部24は、データアクセス部26を介して、ステップS207で確保した当該ページ(上位キャッシュ221のD−Partition223に含まれていた当該ページ)を、D−Partition223から削除する(すなわち、当該ページを、D−Partition223に含まれないように設定する。上位ディレクトリ情報222のD−Partitionフラグ(図4)をNoに設定する)。 Access request processing unit 24 of Figure 2, via the data access unit 26, the page that is secured in step S207 (the relevant page contained in the D-Partition223 of the high-level cache 221) is deleted from the D-Partition223 ( that is, the page, sets set so as not included in the D-Partition223. D-Partition flag upper directory information 222 (FIG. 4) no). また、アクセス要求処理部24は、データアクセス部26を介して、確保したページを、新規にデータを格納するための空きページとし、上位ディレクトリ情報222(図3)に対して、図7のステップS207等による上位キャッシュ221のページの変更を反映させる更新を行った上で、処理を終了する(図7のステップS210)。 The access request processing unit 24 via the data access unit 26, a page reserved, a free page for storing new data, to the upper directory information 222 (FIG. 3), the steps of FIG. 7 etc. after performing update to reflect the change in the pages of the high-level cache 221 by S207, the processing is terminated (step S210 in FIG. 7).

以上のステップS201からS210までの処理を行い、アクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221に対して新たにアクセスされるデータを格納するための空きページを確保する動作(図6のステップS105)が完了する。 Performs processing to S210 from step S201 described above, the access request processing unit 24, operation via the data access unit 26, to allocate a free page to store the data newly access the high-level cache 221 (step S105 of FIG. 6) is completed.

<D−Partitionに含まれない新規データ格納用の空きページの確保> <Securing the free page for the new data storage that is not included in the D-Partition>
図8は、図7のステップS206の処理を説明するための流れ図である。 Figure 8 is a flowchart for explaining the processing of step S206 in FIG. 図7のステップS206では、上位キャッシュ221に含まれるページのうち、D−Partition223に含まれないページを、新規データに格納用のページとして確保する。 In step S206 of FIG. 7, among pages included in the high-level cache 221, the page not included in D-Partition223, to ensure as a page for storing new data. 次に図1乃至図5、図7、図8を参照して、新規データ格納用の空きページの確保(図7のステップS206)について説明する。 Next, FIG. 1 to FIG. 5, FIG. 7 and 8, will be described securing the free page for storing new data (step S206 in FIG. 7).

図2のアクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221のD−Partition223、又は、2次高速記憶23のD−Vol232(図3)にアクセスして、下位ディレクトリ情報2321(図5)を参照し、下位キャッシュ231において、 Access request processing unit 24 of Figure 2, via the data access unit 26, D-Partition223 of the high-level cache 221, or accesses the D-Vol232 secondary fast memory 23 (FIG. 3), lower directory information 2321 Referring to (FIG. 5), the low-level cache 231,
・上位キャッシュ221で確保されたページ(D−Partition223に含まれないページ(図4のD−Prationフラグの値がNoのページ))と同一アドレスに対応したページ、又は、 - upper page reserved cache 221 (not included in the D-Partition223 page (the value of the D-Pration flag of FIG. 4 No page)) page corresponding to the same address, or,
・下位キャッシュ231の空きページを探索する(図8のステップS301)。 · To explore the free pages the low-level cache 231 (step S301 in FIG. 8).

ステップS301における探索の結果、上位キャッシュ221(図3)で確保されたページと同一アドレスに対応したページが下位キャッシュ231(図3)に存在する場合には(図8のステップS302のYes分岐)、図2のアクセス要求処理部24は、ステップS309以降の処理を実行する。 Results of the search in step S301, when a page corresponding to the reserved page and the same address in the high-level cache 221 (FIG. 3) is present in the low-level cache 231 (FIG. 3) (Yes branch of step S302 in FIG. 8) , the access request processing unit 24 of FIG. 2 performs step S309 and subsequent steps.

ステップS301での探索の結果、上位キャッシュ221で確保されたページと同一アドレスに対応したページが下位キャッシュ231に存在しない場合には(図8のステップS302のNo分岐)、アクセス要求処理部24は、ステップS303以降の処理を実行する。 Results of the search in step S301, (No branch of step S302 in FIG. 8) when a page corresponding to reserved pages and the same address in the high-level cache 221 is not present in the low-level cache 231, the access request processing unit 24 , step S303 to execute the subsequent processing.

ステップS303での探索の結果、下位キャッシュ231に空きページが存在する場合(図8のステップS303のYes分岐)、アクセス要求処理部24は、データアクセス部26を介して、下位キャッシュ231における任意の空きページを、新規データの格納に伴い上位キャッシュ221から置換される(追い出される)ページのデータを格納するために、確保する(図8のステップS304)。 Results of the search in step S303, if there are free pages on the low-level cache 231 (Yes branch of step S303 in FIG. 8), the access request processing unit 24 via the data access section 26, any of the low-level cache 231 free pages, to store the data of the the (expelled are) page replacement from the high-level cache 221 along with the storage of new data, to ensure (step S304 in FIG. 8).

ステップS303での探索の結果、下位キャッシュ231に空きページが存在しない場合(図8のステップS303のNo判定)、アクセス要求処理部24は、下位ディレクトリ情報2321を参照して下位キャッシュ231の任意のページから、新規データの格納に伴い上位キャッシュ221から置換される(追い出される)ページのデータ格納のために使用するページを選択する。 Results of the search in step S303, if the low-level cache 231 does not exist free page (No judgment in step S303 in FIG. 8), the access request processing unit 24, any low-level cache 231 with reference to the lower directory information 2321 from the page, selecting the page to be used for data storage, which is the (expelled are) page replacement from the high-level cache 221 along with the storage of new data. このとき、アクセス要求処理部24は、アクセステーブル28を併せて参照して、アクセス中のページを、上位キャッシュ221から置換される(追い出される)ページのデータ格納のために使用するページの選択対象から、除外する(図8のステップS305)。 In this case, the access request processing unit 24, with reference also to access table 28, the page being accessed, selection of pages used for data storage (kicked are) pages to be replaced from the high-level cache 221 from excluded (step S305 in FIG. 8).

ステップS305で選択したページが、未更新の状態である場合(図5の下位ディレクトリ情報2321において、選択した当該ページの更新済フラグの値がNo)(図8のステップS306のYes判定)、アクセス要求処理部24は、ステップS308以降の処理を実行する。 If the page selected in step S305 is a state of the un-updated (in the lower directory information 2321 in FIG. 5, the value of the update flag of the selected page is No) (Yes judgment in step S306 of FIG. 8), access request processing unit 24 performs step S308 and subsequent steps.

ステップS305で選択したページが更新されている場合(図5の下位ディレクトリ情報2321において、選択した当該ページの更新済フラグの値がYes)(図8のステップS306のNo分岐)、アクセス要求処理部24は、データアクセス部26を介してステップS305で選択した下位キャッシュ231のデータを、記憶媒体21に書き込み、更新を反映する(図8のステップS307)。 If the page selected in step S305 is updated (in the lower directory information 2321 in FIG. 5, Yes is the value of the updated flag of the selected page) (No branch of step S306 in FIG. 8), the access request processing unit 24, data of the low-level cache 231 selected via the data access unit 26 at step S305, writes to the storage medium 21, reflects the update (step S307 in FIG. 8).

アクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221のD−Partition223、及び、2次高速記憶23のD−Vol232に格納された下位ディレクトリ情報2321(図5)を更新し、ステップS305で選択した下位キャッシュ231のページのデータを削除する(図8のステップS308)。 Access request processing unit 24 via the data access unit 26, D-Partition223 the high-level cache 221, and updates the secondary fast memory 23 of the D-Vol232 lower directory information 2321 stored in the (FIG. 5), delete the data of the page of the low-level cache 231 selected in step S305 (step S308 in FIG. 8).

アクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221において、新規データ格納用に確保されたページのデータを、ステップS305で選択された下位キャッシュ231のページにコピーする。 Access request processing unit 24 via the data access unit 26, the high-level cache 221, copies the data of the page that is reserved for storing new data, the page of the low-level cache 231 selected in step S305. その際、アクセス要求処理部24は、下位キャッシュ231側のページへのデータのコピーが行われる上位キャッシュ221のページに対応した上位ディレクトリ情報222に含まれる情報を、下位ディレクトリ情報(例えば下位キャッシュ231のD−Partition223における対応するページエントリ)にコピーする(図8のステップS309)。 At that time, the access request processing unit 24, the information a copy of the data to the low-level cache 231 side of the page is included in the higher directory information 222 corresponding to the page of the high-level cache 221 to be performed, the lower directory information (e.g., the low-level cache 231 copy of the page entry) corresponding in D-Partition223 (step S309 in FIG. 8).

アクセス要求処理部24は、データアクセス部26を介して上位ディレクトリ情報222にアクセスし、新規データの格納のために確保された上位キャッシュ221のページのデータを削除し空きページとする。 Access request processing unit 24 accesses the upper directory information 222 via the data access unit 26, and the empty page delete the data of the page of the high-level cache 221 reserved for the storage of new data. また、アクセス要求処理部24は、データアクセス部26を介して、上位キャッシュ221のD−Partition223と2次高速記憶23のD−Vol232に格納された下位ディレクトリ情報2321のうち、上位キャッシュ231から追い出されるページのデータを格納するページに関する情報を更新する(図8のステップS310)。 The access request processing unit 24 via the data access unit 26, among the lower directory information 2321 stored in the D-Vol232 of D-Partition223 of the high-level cache 221 and the secondary high-speed memory 23, expelled from the high-level cache 231 update information about the page that stores the data of the page (step S310 in FIG. 8).

図7のステップS201からS210までの処理を行い、ステップS206における、上位キャッシュ221に含まれるページのうち、D−Partition223に含まれないページを新規に格納するデータのために確保する動作が完了する。 Performs the processing from step S201 in FIG. 7 to S210, in step S206, among the pages included in the high-level cache 221, the operation to secure for data to store pages not included in the D-Partition223 the newly completed .

<下位キャッシュディレクトリ情報の読み出し動作> <A read operation of the low-level cache directory information>
図9は、図6のステップS104、及び、図8のステップS301における、下位キャッシュディレクトリ情報の読み出し処理を説明する流れ図である。 9, step S104 in FIG. 6, and, in step S301 of FIG. 8 is a flow diagram illustrating the process of reading the low-level cache directory information. 前述したように、図8のステップS301では、アクセス要求処理部24は、上位キャッシュ221で確保したページと同一アドレスに対応するページ、又は、下位キャッシュ231の空きページ、下位キャッシュ231から探索する。 As described above, in step S301 of FIG. 8, the access request processing unit 24, a page corresponding to the page and the same address allocated by the high-level cache 221, or, free pages low-level cache 231 is searched from the low-level cache 231. 次に図1乃至図6、図8、図9を参照して、図6のステップS104及び、図8のステップS301におけるディレクトリ情報アクセス変換部25を介して、下位キャッシュ231のディレクトリ情報である下位ディレクトリ情報(図5の2321)を読み出す動作について説明する。 Next, FIG. 1 to FIG. 6, FIG. 8, with reference to FIG. 9, step S104 and FIG. 6, through the directory information access conversion unit 25 in step S301 of FIG. 8, the lower is the directory information of the low-level cache 231 the operation of reading the directory information (2321 in FIG. 5) will be described.

アクセス要求処理部24は、ディレクトリ情報アクセス変換部25に対して、下位ディレクトリ情報(図5の2321)から、必要な情報を一意に特定するためのアドレス等の情報(識別子)を指定して、読み出し要求を行う。 Access request processing unit 24, to the directory information access conversion unit 25, a lower directory information (2321 of FIG. 5), by specifying the information such as an address for uniquely identifying the necessary information (identifier), perform a read request.

ディレクトリ情報アクセス変換部25は、前記識別子を、2次高速記憶23のD−Vol232における前記識別子が表すディレクトリ情報が格納されたアドレスに変換する。 Directory information access conversion unit 25, the identifier, the directory information represented by the identifier in D-Vol232 secondary fast memory 23 is converted to stored address.

また、ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、1次高速記憶22の上位ディレクトリ情報222(図3)にアクセスし、上位キャッシュ221のD−Partition223内に、読み出し対象のディレクトリ情報(下位キャッシュ231の該当するディレクトリ情報)を含むページが格納されているか否かの判定(ヒット判定)を行う(図9のステップS41)。 Further, the directory information access conversion unit 25 via the data access unit 26 accesses the upper directory information 222 of the primary fast memory 22 (FIG. 3), in the D-Partition223 of the high-level cache 221, read target directory information perform whether (corresponding directory information of the low-level cache 231) page containing a is stored determined (hit determination) (step S41 in FIG. 9).

1次高速記憶22の上位ディレクトリ情報222から、上位キャッシュ221のD−Partition223内に、要求されたディレクトリ情報を含むページが格納されている場合(ヒットした場合)(図9のステップS42のYes分岐)、ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、上位キャッシュ221のD−Partition223に対して、ヒットしたページ(下位キャッシュ231のディレクトリ情報を含むページ)に対する読み出しを実行し、図9のステップS46以降の処理を実行する(図9のステップS43)。 From the upper directory information 222 of the primary fast memory 22, in the D-Partition223 the high-level cache 221, (if a hit) page containing the requested directory information may have been stored (Yes branch of step S42 in FIG. 9 ), directory information access conversion unit 25 via the data access unit 26, with respect to D-Partition223 of the high-level cache 221, and executes the read from the hit page (page containing the directory information of the low-level cache 231), FIG. 9 step S46 to execute the subsequent processing of (step S43 in FIG. 9).

上位キャッシュ221のD−Partition223において要求されたディレクトリ情報がミスした場合(図9のステップS42のNo分岐)、ディレクトリ情報アクセス変換部25は、上位キャッシュ221上のD−Partition223内に、2次高速記憶23のD−Vol232に格納された下位ディレクトリ情報(図5の2321)のコピー(写し)を格納するためのページを確保する(図9のステップS44)。 If the directory information requested in the D-Partition223 of the high-level cache 221 misses (No branch of step S42 in FIG. 9), the directory information access conversion unit 25, in the D-Partition223 on the high-level cache 221, a secondary high-speed lower directory information stored in the D-Vol232 storage 23 to ensure a page for storing a copy (copies) of the (2321 in FIG. 5) (step S44 in FIG. 9). なお、ディレクトリ情報アクセス変換部25において、このページの確保にあたり、1次高速記憶22の上位ディレクトリ情報222に基づき、上位キャッシュ221のD−Partition223に格納されたページ(図4の上位ディレクトリ情報222において、無効フラグがNo、D−PartitionフラグがYesのページ)の中から、置換優先度が最も置換され易い値のページを選択するようにしてもよい。 Incidentally, in the directory information access conversion unit 25, when securing of the page, based on the higher directory information 222 of the primary fast memory 22, the higher directory information 222 of the page (Fig. 4 which is stored in the D-Partition223 of the high-level cache 221 , invalid flag is No, from D-Partition flag is Yes page of), it may be substituted priority to select a page of the most substituted likely value. 図4の上位ディレクトリ情報222において、ページの置換優先度の値が大(小)であるほど、優先度が高い場合、値の大きな(小さな)ページが、置換対象として選択される。 In level directory information 222 of FIG. 4, as the value of the substitution priority page is large (small), if a higher priority, is large (small) page value is selected as the replacement object.

ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、2次高速記憶23のD−Vol232に対して要求されたデータの読み出しを実行する。 Directory information access conversion unit 25 via the data access unit 26, executes the read data requested for D-Vol232 secondary fast memory 23. また、ディレクトリ情報アクセス変換部25は、2次高速記憶23のD−Vol232から読み出したデータを、1次高速記憶22の上位キャッシュ221のD−Partition223において、下位ディレクトリ情報の写し格納用に確保されたページに格納する。 Further, the directory information access conversion unit 25, the data read out from the D-Vol232 secondary fast memory 23, the D-Partition223 of the high-level cache 221 of the primary fast memory 22, are reserved for copy storage of lower directory information and stores it in the page.

さらに、ディレクトリ情報アクセス変換部25は、D−Partition223において、下位ディレクトリ情報の写し格納用に確保したページが、当該確保の時点までに更新されており、且つ、更新結果が反映していない場合(図4の上位ディレクトリ情報222において、無効フラグがNo、D−PartionフラグがYes、更新済フラグがYes、置換優先度が1番目に置換対象であることを示す値のページ)、当該ページに、下位ディレクトリ情報の写しを格納する前に、当該ページの更新内容(下位ディレクトリ情報)を、2次高速記憶23のD−Vol232に含まれる下位ディレクトリ情報(図5参照)の該当ページエントリの情報に、反映させる(図9のステップS45)。 Further, the directory information access conversion unit 25, when the D-Partition223, pages reserved for copy storage subordinate directory information has been updated by the time of the secure and, the update result does not reflect ( in level directory information 222 of FIG. 4, the invalid flag is No, D-partion flag Yes, update flag is Yes, pages value indicating that substitution priority is replaced in the first), in the page, before storing a copy of the lower directory information, updates to the page (lower directory information), the information of the corresponding page entry in the subordinate directory information included in the D-Vol232 secondary fast memory 23 (see FIG. 5) , it is reflected (step S45 in FIG. 9).

ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、1次高速記憶22の上位ディレクトリ情報222に含まれるページの情報(図4参照)のうちD−Partition223においてヒットしたページ(図9のステップS42のでYes判定の該当ページ)もしくは、D−Partition223に格納されたページ(図9のステップS45でD−Partition223に格納したページ)のディレクトリ情報を更新する(図9のステップS46)。 Directory information access conversion unit 25 via the data access unit 26, a page hit in D-Partition223 among the pages included in the upper directory information 222 of the primary fast memory 22 information (see FIG. 4) (in FIG. 9 since step S42 Yes relevant page of determination) or to update the directory information of the page stored in the D-Partition223 (page stored in the D-Partition223 in step S45 in FIG. 9) (step S46 in FIG. 9). 例えば上位ディレクトリ情報222の該当ページの置換優先度(図4)を、例えば、最も最近使用されたページに対応する値(最も置換され難い値)に設定する。 For example substitution priority of the corresponding page of the higher directory information 222 (FIG. 4), for example, be set to the most recently used a value corresponding to the page (the most substituted hardly value). また、該当ページのディレクトリ情報の更新済フラグがYes(更新済み)であった場合、No(未更新)に設定する。 Also, if the update flag of the directory information of the corresponding page was Yes (updated) is set to No (not updated).

ディレクトリ情報アクセス変換部25は、要求された下位キャッシュ231のディレクトリ情報である下位ディレクトリ情報の読み出し結果を、アクセス要求処理部24に返し、処理を終了する(図9のステップS47)。 Directory information access conversion unit 25, the read result of the lower directory information is requested directory information in the low-level cache 231, it returned to the access request processing unit 24, and ends the process (step S47 of FIG. 9).

以上のステップS41からS47までの処理を行い、図6のステップS104、及び図8のステップS301における、ディレクトリ情報アクセス変換部25による処理を介して、下位キャッシュ231のディレクトリ情報である下位ディレクトリ情報(図5の2321)を読み出す動作が完了する。 Performs processing to S47 from step S41 described above, in step S301 in step S104, and 8 of Figure 6, through the treatment with directory information access conversion unit 25, the lower directory information is directory information of the low-level cache 231 ( operation of reading 2321) of FIG. 5 is completed.

<下位キャッシュのディレクトリ情報の更新(Write)動作> <Update of directory information of the low-level cache (Write) Operation>
図10は、図6のステップS109、及び図8のステップS310における下位キャッシュのディレクトリ情報の更新(Write)処理を説明する流れ図である。 Figure 10 is a flow diagram illustrating the updating (Write) processing directory information of a lower cache in step S310 in step S109, and 8 of Figure 6. 図6のステップS109及び図8のステップS310におけるディレクトリ情報アクセス変換部25を介して下位キャッシュ231のディレクトリ情報である下位ディレクトリ情報(図5の2321)を更新する。 Through the directory information access conversion unit 25 in step S310 in step S109, and 8 of Figure 6 updates the lower directory information (2321 of FIG. 5) is a directory information of a lower cache 231. 図1乃至図6、図8、図10を参照して、下位キャッシュのディレクトリ情報の更新処理について説明する。 1 to 6, 8, with reference to FIG. 10, described updating of directory information of a lower cache. なお、下位ディレクトリ情報の更新(Update)は、更新情報(下位ディレクトリ情報)の書き込み動作を伴うため、図10等では書き込み(Write)を更新と同義で用いている。 Note that updating of the lower directory information (Update) is accompanied write operation of the update information (lower directory information), in FIG. 10 or the like is used to write the (Write) update synonymous.

図2のアクセス要求処理部24は、ディレクトリ情報アクセス変換部25に対して、下位ディレクトリ情報(図5の2321)から、更新対象の情報を一意に特定するためのアドレス等の識別子を指定して更新要求を行う。 Access request processing unit 24 in FIG. 2, the directory information access conversion unit 25, a lower directory information (2321 of FIG. 5), by specifying the identifier such as an address for uniquely identifying the information to be updated perform the update request. ディレクトリ情報アクセス変換部25は、前記識別子を、D−Vol232(図3)における前記識別子が表すディレクトリ情報が格納されたアドレスに変換する。 Directory information access conversion unit 25, the identifier is converted to D-Vol232 address directory information is stored representing said identifier in (Fig. 3). また、ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、1次高速記憶22の上位ディレクトリ情報222(図3)にアクセスし、上位キャッシュ221のD−Partition223(図3)内に、更新要求されたディレクトリ情報(下位ディレクトリ情報)を含むページが格納されているか否かの判定(ヒット判定)を行う(図10のステップS51)。 Further, the directory information access conversion unit 25 via the data access unit 26 accesses the upper directory information 222 of the primary fast memory 22 (FIG. 3), in the D-Partition223 the high-level cache 221 (FIG. 3), determining whether a page containing the updated requested directory information (lower directory information) is stored (hit determination) (step S51 in FIG. 10).

D−Partition223内に、更新要求されたディレクトリ情報(下位ディレクトリ情報)を含むページが格納されている場合(ヒットした場合)(ステップS52のYes分岐)、ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、D−Partition223内に格納されている、ヒットしたページに対する更新(Write)を実行し、ステップS56以降の処理を実行する(図10のステップS53)。 In D-Partition223, if the page containing updated the requested directory information (lower directory information) is stored (if a hit) (Yes branch of step S52), the directory information access conversion unit 25, the data access unit through 26, is stored in the D-Partition223, to perform the update (Write) for hit page, step S56 executes subsequent processing (step S53 in FIG. 10).

D−Partition223内に、更新要求されたディレクトリ情報(下位ディレクトリ情報)を含むページが格納されていない場合(ミスした場合)(ステップS52のNo分岐)、ディレクトリ情報アクセス変換部25は、D−Partition223において、2次高速記憶23のD−Vol232に格納された下位ディレクトリ情報2321(図5)の更新内容を格納するためのページを確保する(図10のステップS54)。 In D-Partition223, if the page containing the updated requested directory information (lower directory information) is not stored (if a miss) (No branch of step S52), the directory information access conversion unit 25, D-Partition223 in, to ensure the pages for storing the updates to the subordinate directory information stored in the D-Vol232 secondary fast memory 23 2321 (FIG. 5) (step S54 in FIG. 10).

このページの確保にあたり、1次高速記憶22の上位ディレクトリ情報222に基づき、上位キャッシュ221のD−Partition223に格納されたページ(図4の上位ディレクトリ情報222において、無効フラグがNo、D−PartitionフラグがYesのページ)の中から、置換優先度が最も置換され易い値のページを選択するようにしてもよい。 Upon securing of the page, based on the higher directory information 222 of the primary fast memory 22, the higher directory information 222 of the page (Fig. 4 which is stored in the D-Partition223 of the high-level cache 221, the invalid flag is No, D-Partition Flag There among Yes page of), may be substituted priority to select a page of the most substituted likely value. ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、D−Partition223において、下位ディレクトリ情報2321の更新を格納するためのページに、更新された下位ディレクトリ情報を格納する。 Directory information access conversion unit 25 via the data access unit 26, the D-Partition223, a page for storing the update of the lower directory information 2321 and stores the lower directory information updated.

前記置換されたD−Partiton223の下位ディレクトリ情報の更新結果格納用に確保したページが更新されていた場合(図4の上位ディレクトリ情報222において、無効フラグがNo、D−PartionフラグがYes、更新済フラグがYes、置換優先度が1番目に置換対象であることを示す値のページ)、該ページに、下位ディレクトリ情報を書き込む前に、該ページの前記更新済みの内容を、2次高速記憶23のD−Vol232に含まれる下位ディレクトリ情報(図5参照)の該当ページエントリの情報に反映する(図10のステップS55)。 In level directory information 222 in the case (FIG. 4 pages reserved for storing the update result of the lower directory information D-Partiton223 said substituted has been updated, invalid flag is No, D-partion flag Yes, updated flag Yes, pages value indicating that substitution priority is replaced in the first), to the page, before writing the lower directory information, the updated content of the page, the secondary fast memory 23 lower directory information included in the D-Vol232 of reflecting the information of the corresponding page entry (see FIG. 5) (step S55 in FIG. 10).

ディレクトリ情報アクセス変換部25は、データアクセス部26を介して上位ディレクトリ情報222に含まれる、D−Partition223においてヒットしたページ(図10のステップS53のヒットしたページ)、もしくは、D−Partition223に格納されたページ(図10のステップS55でD−Partition223に格納したページ)の下位ディレクトリ情報(図5参照)を更新する(図10のステップS56)。 Directory information access conversion unit 25 via the data access unit 26 included in the upper directory information 222, a page hit in D-Partition223 (hit page in step S53 in FIG. 10), or is stored in the D-Partition223 pages and updates the lower directory information (page stored in the D-Partition223 in step S55 in FIG. 10) (see FIG. 5) (step S56 in FIG. 10).

以上のステップS51からS56までの処理を行い、前記ステップS109及びステップS310におけるディレクトリ情報アクセス変換部25を介して、下位キャッシュ231のディレクトリ情報である下位ディレクトリ情報2321を更新する動作が完了する。 Performs processing to S56 from step S51 described above, through the directory information access conversion unit 25 in the step S109 and step S310, the operation of updating the lower directory information 2321 is a directory information of a lower cache 231 is completed.

<D−Partitionに新規ページ格納用ページの確保> <Ensure the new page storage page on D-Partition>
図11は、図9のステップS44、及び図10のステップS54における、D−Partitionに新規ページ格納用ページの確保の処理を説明する流れ図である。 11, in step S54 in step S44, and 10 in FIG. 9 is a flow diagram illustrating the process of securing the new page storage page D-Partition. 図9のステップS44及び図10のステップS54では、図3のD−Partition223に下位ディレクトリ情報2321(図5)をキャッシュするためのページを確保する。 In step S54 in step S44 and FIG. 10 in FIG. 9, lower directory information 2321 (FIG. 5) to secure the page for caching in D-Partition223 in FIG. 図1乃至図5、図8乃至図11を参照して、D−Partition223に下位ディレクトリ情報2321をキャッシュするためのページを確保する処理について説明する。 1 to 5, with reference to FIGS. 8 through 11, a description will be given of a process to ensure the pages for caching lower directory information 2321 in D-Partition223.

図2のディレクトリ情報アクセス変換部25は、データアクセス部26を介して、上位ディレクトリ情報222を参照して、上位キャッシュ221に空きページ(無効フラグがYesのページ)が存在するか確認する(図11のステップS601) Directory information access conversion unit 25 of FIG. 2, through the data access unit 26, by referring to the higher directory information 222, free pages (invalid flag is Yes page of) confirming whether there is a high-level cache 221 (FIG. 11 step S601 of)

図11のステップS601における確認の結果、上位キャッシュ221に空きページが存在した場合(図11のステップS602のYes分岐)、ディレクトリ情報アクセス変換部25は、上位キャッシュ221の任意の空きページを、D−Partition223に、下位ディレクトリ情報2321の一部の写し(複製)を格納するためのページ(下位ディレクトリ情報格納用ページ)として確保して、処理を終了する(図11のステップステップS603)。 A result of confirmation in step S601 of FIG. 11, when a free page and an upper level cache 221 (Yes branch of step S602 in FIG. 11), the directory information access conversion unit 25, any free pages high-level cache 221, D the -Partition223, secured as a page (lower directory information stored pages) for storing a portion of the copy of the lower directory information 2321 (replication), and ends the process (step step S603 of FIG. 11).

図11のステップS601における確認の結果、上位キャッシュ221に空きページが存在した場合(図11のステップS602のNo分岐)、ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、上位ディレクトリ情報222から取得したD−Partition223の容量と、パーティション容量設定部27で指定されたD−Partition223の容量を比較する(図11のステップS604)。 A result of confirmation in step S601 of FIG. 11, when a free page and an upper level cache 221 (No branch of step S602 in FIG. 11), the directory information access conversion unit 25 via the data access unit 26, the upper directory information and capacity D-Partition223 acquired from 222 to compare the volume of D-Partition223 specified partition capacity setting unit 27 (step S604 in FIG. 11).

図11のステップS604において、D−Partition223の容量がパーティション容量設定部27で指定された容量値未満であった場合(図11のステップS605のYes分岐)、ディレクトリ情報アクセス変換部25は、アクセス要求処理部24に対して、上位キャッシュ221に含まれるページのうち、D−Partition223に含まれないページ(上位ディレクトリ情報222(図4)のD−Partitionフラグの値がNoのページ)のうち、所要数のページを確保し、該ページのデータを削除して、空きページを作成することで、新規に格納するデータのために確保するように要求して、処理を終了する(図11のステップS606)。 In step S604 of FIG. 11, when the capacity of the D-Partition223 is less than the capacitance value specified in the partition capacity setting unit 27 (Yes branch of step S605 in FIG. 11), the directory information access conversion unit 25, access request to the processing unit 24, among the pages included in the high-level cache 221, among the pages not included in the D-Partition223 (D-Partition flag value is no pages upper directory information 222 (FIG. 4)), the required securing the number of pages, and delete the data of the page, by creating a free page, and requests to reserve for the data to be stored newly, the process ends (step S606 in FIG. 11 ).

図11のステップS605におけるアクセス要求処理部24による、上位キャッシュ221に含まれるページのうち、D−Partition223に含まれないページを新規に格納するデータのために確保する処理手順は、図8のステップS301からS310までの処理と同一である。 According to the access request processing unit 24 in step S605 of FIG. 11, among the pages included in the high-level cache 221, the processing procedure of reserved for data to store pages not included in the D-Partition223 the new, Step 8 S301 from is the same as the processing of up to S310. このため、その説明は省略する。 For this reason, a description thereof will be omitted.

図11のステップS604においてD−Partition223の容量がパーティション容量設定部27で指定された容量値以上であった場合(図11のステップS605のNo判定)、ディレクトリ情報アクセス変換部25は、上位キャッシュ221に含まれるページのうち、D−Partition223に含まれるページ(上位ディレクトリ情報222(図4)のD−Partitionフラグの値がYesのページ)の中から、置換するページを選択し、新規にデータを格納するページを確保する(図11のステップS607)。 If the capacity of the D-Partition223 was a partition capacity setting unit 27 capacitance values ​​than specified in at step S604 of FIG. 11 (No judgment in step S605 of FIG. 11), the directory information access conversion unit 25, the high-level cache 221 among the pages included in, among the pages included in the D-Partition223 (D-Partition flag value is Yes page of level directory information 222 (FIG. 4)), select the page to replace, the new data securing a page to be stored (step S607 of FIG. 11). D−Partition223に含まれるページの中から新規にデータを格納するページを確保する際に、その時点で、最も長く参照されない状態が続いているページを選択するようにしてもよい。 Among pages included in the D-Partition223 when securing the pages for storing new data, at that time, it may be selected a page is followed by a state of not being referenced longest.

上位ディレクトリ情報222に記録されたディレクトリ情報(図4)から、ステップS607において確保したページが未更新である(更新済みでない)(上位ディレクトリ情報222(図4)の更新済フラグの値がNo)場合(図11のステップS608のNo判定)、ステップS610以降の処理を実行する。 From the directory information recorded in the higher directory information 222 (FIG. 4), is not yet updated pages reserved in step S607 (not updated) (upper directory information 222 (the value of the update flag in FIG. 4) is No) If (No judgment in step S608 of FIG. 11), step S610 to execute the subsequent processing.

上位ディレクトリ情報222に記録されたディレクトリ情報から、ステップS607において確保したページが更新済である(上位ディレクトリ情報222(図4)の更新済フラグの値がYes)場合(図11のステップS608のYes分岐)、ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、ステップS607で確保したD−Partition223に含まれるページについて、該ページに対応する、2次高速記憶23のD−Vol232のページに、更新を反映する(図11のステップS609) Yes from the directory information recorded in the higher directory information 222, it is already updated pages reserved in step S607 (the value of the update flag of the upper directory information 222 (FIG. 4) is Yes) If (in step S608 of FIG. 11 branch), directory information access conversion unit 25 via the data access unit 26, the pages included in the D-Partition223 secured in step S607, the said corresponding to a page, the D-Vol232 secondary fast memory 23 page to reflect the update (step S609 in FIG. 11)

ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、ステップS607で確保したD−Partition223に含まれるページのデータを削除し、該ページを、新規データ格納のために空きページとする。 Directory information access conversion unit 25 via the data access unit 26 deletes the data of the pages included in the D-Partition223 secured in step S607, the said page, and empty page for a new data storage. また、ディレクトリ情報アクセス変換部25は、データアクセス部26を介して、上位ディレクトリ情報222を更新し、前記確保した対応するページを空ページにして、処理を終了する(図11のステップS610) Further, the directory information access conversion unit 25 via the data access unit 26, and updates the higher directory information 222, and the page corresponding to the secured empty page, the process ends (step S610 in FIG. 11)

以上のステップS601からS610までの処理を行い、前記ステップS44及びステップS54における、D−Partition223に下位ディレクトリ情報2321をキャッシュするためのページを確保する動作が完了する。 Above performs processing to S610 from step S601, in the step S44 and step S54, the operation to secure the page for caching lower directory information 2321 in D-Partition223 completed.

なお、上記実施形態において、容量設定部27で指定する容量値は、システムの動作環境(アクセス状況)や負荷等に応じて、手動又は自動(動的)で可変させるようにしてもよい。 In the above embodiment, the capacitance value that specifies a volume setting unit 27, depending on the operating environment (access status), a load, and the system may be made to the variable either manually or automatically (dynamic).

図12、図13は、上記実施形態による作用効果の例を説明する図である。 12, FIG. 13 is a diagram illustrating an example of a function and effect of the embodiment described above. 以下では、図1乃至図5、図12、図13を参照して、メモリ使用量の削減効果(実施例1)、ワークロード変化等に伴うメモリ使用量の変更による効果(実施例2)を説明する。 In the following, FIGS. 1 to 5, 12 and 13, the effect of reducing the memory usage (Example 1), the effect of changes in memory usage associated with changes in workload, etc. (Example 2) explain.

<実施例1> <Example 1>
実施例1では、図3の上位キャッシュ221、下位キャッシュ231共にページサイズを32KB(KiloByte)、各キャッシュのディレクトリ情報を1ページあたり64B(Byte)であるとする。 In the first embodiment, and is a high-level cache 221 of Figure 3, together page size low-level cache 231 32KB (KiloByte), the directory information of each cache 1 page per 64B (Byte). また上位キャッシュ221が格納される1次高速記憶22はDRAM、下位キャッシュ231が格納される2次高速記憶23はSSD、記憶媒体21はHDDであるとする。 The primary fast memory 22 which the high-level cache 221 is stored in DRAM, 2 primary fast memory 23 which the low-level cache 231 is stored SSD, the storage medium 21 is HDD. DRAM及びSSDはHDDよりも十分に高速であるとする。 DRAM and SSD is assumed to be sufficiently faster than HDD. またストレージ2に対するホスト1(図1)からの各アクセスはページ単位で行われるものとする。 Also the access from the host 1 (FIG. 1) to the storage 2 is assumed to be performed in page units.

図12は、下位キャッシュの容量(1行目の第2列の512GB(Gigabyte)〜第5列の2TB(TeraByte))と、下位キャッシュのディレクトリ情報(下位ディレクトリ情報)の格納に必要なメモリ容量及びD−Partitionの関係を示す。 12, the capacity of the low-level cache (first row in the second column of 512GB (Gigabyte) ~ fifth row of 2TB (TeraByte)), the memory space required to store directory information for the low-level cache (lower directory information) and shows the relationship between the D-Partition. 2行目の第2〜第5列は下位キャッシュのディレクトリ情報(下位ディレクトリ情報)の格納に必要なメモリ容量を表している。 Second to fifth columns of the second row represents the memory capacity required to store directory information for the low-level cache (lower directory information). 3行目の第2〜第5列、4行目の第2〜第5列は、上記実施形態における1GBと2GBのD−Partitionを例示している。 Second to fifth columns of the third row, second to fifth columns of the fourth row illustrates the D-Partition of 1GB and 2GB in the above embodiment.

32KBの各ページ当りのディレクトリ情報が64Bであることから、図3の下位キャッシュ231の容量が512GBのとき、下位キャッシュ231のディレクトリ情報(下位ディレクトリ情報)の容量は、(512GB/32KB)×64B=1GBとなる。 Since the directory information per each page of 32KB is 64B, when the capacity of the low-level cache 231 of Figure 3 is 512GB, the capacity of the directory information (lower directory information) of the low-level cache 231, (512GB / 32KB) × 64B = a 1GB. 下位キャッシュ231の容量が512GB増加する毎に下位ディレクトリ情報の容量は1GB増加する。 Capacity of the low-level cache 231 has a capacity of lower directory information to every increase of 512GB increases 1GB. 容量1TB、1.5TB、2TBの下位キャッシュ231の下位ディレクトリ情報の容量は2GB、3GB、4GBとなる。 Capacity 1TB, 1.5TB, the capacity of the sub-directory information of 2TB of the low-level cache 231 2GB, 3GB, the 4GB.

したがって、比較例(本発明を適用しない場合の例)として、ストレージが持つDRAMの容量が2GBであるシステムにおいて、例えば1TBの容量の下位キャッシュ231の下位ディレクトリ情報(2GB)を、全てDRAMに格納する構成とした場合、DRAMの2GBは下位ディレクトリ情報の格納に使われ、DRAMを上位キャッシュ221に割り当てることは不可能となる(上位キャッシュ221をデータキャッシュとして使用できない)。 Therefore, stored as a comparative example (example of the present invention is not applied), the system capacity of the DRAM is 2GB with the storage, for example, a lower directory information 1TB capacity of the low-level cache 231 (2GB), all DRAM If a configuration in which, 2GB of DRAM is used to store lower directory information, (not available high-level cache 221 as a data cache) assigning a DRAM to the high-level cache 221 becomes impossible.

同様に、比較例(本発明を適用しない場合の例)では、図12の2行目に示すように、容量1TB、1.5TB、2TBの下位キャッシュの構成に対してDRAMを2GB、3GB、4GB備えた構成としても該DRAMをデータ格納用の上位キャッシュに割り当てることはできない。 Similarly, in Comparative Example (example in which the present invention is not applied), as shown in the second line of FIG. 12, the capacity 1TB, 1.5TB, 2GB of DRAM to the configuration of 2TB of the low-level cache, 3GB, can not be assigned to the DRAM to the high-level cache for data storage be configured to include 4GB. また、容量1TBの下位キャッシュ231に対して、DRAMを4GB持つ場合でも、下位キャッシュ231の下位ディレクトリ情報の格納に2GB要することから、上位キャッシュ221に割り当てられるDRAMの容量は、2GBに留まる。 Furthermore, with capacitive 1TB of low-level cache 231, even when having 4GB of DRAM, it takes 2GB to store lower directory information of a lower cache 231, the capacity of DRAM allocated to the high-level cache 221, stays 2GB. このように、比較例では高速DRAMのメモリ容量の有効活用ができない。 Thus, it can not effectively use the memory capacity of the high-speed DRAM in the comparative example.

これに対して、上記実施形態によれば、下位キャッシュ231の下位ディレトリ情報は、DRAMからなる上位キャッシュ221上の一定容量のD−Partition223に格納され、さらに、D−Partition223に格納されない下位ディレトリ情報は、SSDのD−Vol232に格納される。 In contrast, according to the above embodiment, the lower Diretori information of a lower cache 231 is stored in the D-Partition223 a fixed volume on the high-level cache 221 composed of DRAM, further lower Diretori information not stored in the D-Partition223 It is stored in the D-Vol232 the SSD. 上位キャッシュ221において、下位キャッシュ231の下位ディレクトリ情報を格納する領域は、D−Partition223に制限される。 In the high-level cache 221, the area for storing the lower directory information of the low-level cache 231 is limited to D-Partition223. 例えば図12に示すように、容量1TB、1.5TB、2TBの下位キャッシュ231において、それぞれの下位ディレクトリ情報の容量は2GB、3GB、4GBであるが、上位キャッシュ221のD−Partition223の容量は1GBの固定値とされ、それぞれの下位ディレクトリ情報の容量から、1GBを差引いた残りの1GB、2GB、3GBの下位ディレクトリ情報は、SSDのD−Vol232に格納される。 For example, as shown in FIG. 12, in the capacity 1TB, 1.5TB, 2TB of low-level cache 231, the capacity of each of the lower directory information 2GB, 3GB, is a 4GB, the capacity of the D-Partition223 of the high-level cache 221 1GB is a fixed value, the capacitance of each of the lower directory information, the remaining 1GB minus the 1GB, 2GB, lower directory information 3GB is stored in the D-Vol232 the SSD.

このため、上記実施形態によれば、ストレージ2が持つDRAMの容量が例えば2GBの構成において、容量1TB、1.5TB、2TBの下位キャッシュ231の場合にも、DRAMからなる上位キャッシュ221のD−Partition223(1GB)以外の1GBのメモリ領域をデータキャッシュに用いることができる。 Therefore, according to the above embodiment, the configuration capacity DRAM, for example, a 2GB with the storage 2, capacity 1TB, 1.5TB, in the case of 2TB of low-level cache 231, the high-level cache 221 consisting of DRAM D- it can be used Partition223 the (1GB) 1GB memory area other than the data cache. このように、本実施形態によれば、DRAMのメモリ容量の有効利用(下位ディレクトリ情報格納用のメモリ使用量の削減)を実現可能としている。 Thus, according to this embodiment, it is possible to realize effective use of memory capacity of DRAM (reduce memory usage for storing low-order directory information).

<実施例2> <Example 2>
図13は、ストレージ2に対する外部からのアクセスと、キャッシュ容量毎の10万アクセスあたりのヒット数分布の変化を説明する図である。 Figure 13 is a diagram for explaining an access from the outside to the storage 2, the change of hits distribution per 100,000 accesses each cache capacity. 図13において、各容量に対するヒット数は、前記各容量のキャッシュが利用可能である場合にヒットとなるアクセスの数を表す。 13, the number of hits for each capacity represents the number of accesses each capacity of the cache is hit if available.

図13において、上位キャッシュ221を格納するDRAMの容量は4GB、下位キャッシュ231を格納するSSDの容量は2TBとする。 13, the capacity of the DRAM to store the high-level cache 221 capacity of the SSD for storing 4GB, the low-level cache 231 and 2TB. 上位キャッシュ221(DRAM)の各容量(1GB、2GB、3GB、4GB)以下でヒットするアクセスは、上位キャッシュ221でヒットし(ヒット件数は、DRAMの容量1GB、2GB、3GB、4GBでそれぞれ50000、80000、90000、90010)、その他のヒットは、下位キャッシュ231(SSD)でヒットする。 Each capacity of the high-level cache 221 (DRAM) (1GB, 2GB, 3GB, 4GB) access to hit below, hit in the high-level cache 221 (hits is 50,000 each capacity 1GB of DRAM, 2GB, 3GB, with 4GB, 80000,90000,90010), the other hit, a hit in the low-level cache 231 (SSD).

実施例2では、図3の下位キャッシュ231のディレクトリ情報(下位ディレクトリ情報:図5の2321参照)を格納するDRAMの容量を制限して下位ディレクトリ情報をDRAMの上位キャッシュ221上のD−partition223に格納し、D−partition223に格納されていない下位ディレクトリ情報をSSDのD−Vol232に格納する。 In Example 2, the lower directory information of the cache 231 of FIG. 3: D-partition223 on the high-level cache 221 of DRAM lower directory information by limiting the amount of DRAM to store (lower directory information reference 2321 in FIG. 5) stores, and stores the low-order directory information that is not stored in the D-partition223 to D-Vol232 of SSD. 一般的に、DRAMに比べて、SSDのアクセス性能は低い。 In general, compared to the DRAM, SSD access performance is low. 実施例2では、階層キャッシュのアクセス性能の高速化のために、可能な限り、下位キャッシュ231の下位ディレクトリ情報をDRAMに格納できるように、D−Partition223の容量を決定する。 In Example 2, in order to speed up the hierarchy cache access performance, as much as possible, so that it can store the lower directory information of the low-level cache 231 to DRAM, to determine the capacity of the D-Partition223.

図13の初期状態81では、例えば上位キャッシュ221(図3)の容量が3GBの場合、100000件のアクセスに対して、90000件(=50000+30000+10000)のアクセスがヒットする。 In the initial state 81 of FIG. 13, for example when the capacity of the high-level cache 221 (FIG. 3) is 3GB, relative to 100000 reviews access, access 90000 stars (= 50000 + 30000 + 10000) is hit.
また、SSDの下位キャッシュ231(図3)の容量が0.5TBの場合、10+8980=8990件のアクセスは、下位キャッシュ231のディレクトリ情報(下位ディレクトリ情報)が全て上位キャッシュ221のD−Partition223に存在する状態でヒットする。 Also, when the capacity of the low-level cache 231 (FIG. 3) of the SSD is 0.5 TB, present in 10 + 8980 = 8990 reviews access is, D-Partition223 directory information of a lower cache 231 (lower directory information) are all high-level cache 221 to hit in the state to be.

図13の初期状態81において、10+8980の10件は、上位キャッシュ221を4GBに設定した場合の10件であり、上位キャッシュ221の容量が3GBのときは、 In the initial state 81 of FIG. 13, the 10 stars 10 + 8980, a ten in the case of setting the high-level cache 221 to 4GB, when the capacitance of the high-level cache 221 is 3GB, the
例えば、下位ディレクトリ情報が上位キャッシュ221のD−Partition223に存在する状態でヒットする。 For example, a hit in a state where the lower directory information is present in the D-Partition223 of the high-level cache 221. SSDに格納された下位キャッシュ231の利用可能な容量を2TBに増加した場合でも、上位キャッシュ221でのヒット件数の増加は、0.5TBの場合の8990から、僅か10に留まる。 The available capacity of the low-level cache 231 stored in SSD even when increased 2TB, increase of the number of hits in the high-level cache 221, from 8990 in the case of 0.5 TB, remain in only 10.

図13の初期状態81では、上位キャッシュ221(図3)の4GBのDRAMのうち1GBを上位キャッシュ221上のD−Partition223に割り当て、4GBから1GBを差し引いた残りの3GBのDRAMを上位キャッシュ(データキャッシュ)として使用することで、階層キャッシュに対して最大の性能が得られる。 In the initial state 81 of FIG. 13, 4GB of allocation to 1GB to D-Partition223 on the high-level cache 221 of the DRAM, the higher the DRAM of the remaining 3GB minus the 1GB from 4GB cache (data high-level cache 221 (FIG. 3) by using as a cache), the maximum performance is obtained for hierarchical cache.

前記の条件では、10万件のアクセスのうち・9万件のアクセスが上位キャッシュ221(DRAM)でヒットし、 In the above conditions, the inner and 90,000 of access of 100,000 access is hit in the high-level cache 221 (DRAM),
・8990件のアクセスは、下位キャッシュ231(SSD)において下位キャッシュ231のディレクトリ情報(図5の下位ディレクトリ情報2321)が全て上位キャッシュ221のD−Partition223に存在する状態でヒットする。 - 8990 reviews access is a hit in the state in which the directory information of the low-level cache 231 in the low-level cache 231 (SSD) (lower directory information 2321 of FIG. 5) is present all the D-Partition223 of the high-level cache 221.

次に、図13の負荷変更状態82では、初期状態81とはアクセスパターンが異なるため、階層キャッシュの性能の最大化のために、D−Partition223の容量の再設定が必要である。 Next, the load change state 82 in FIG. 13, the initial state 81 because access patterns are different, for maximizing the performance of the hierarchical cache, it is necessary to reset the volume of D-Partition223. パーティション容量設定部27を通して上位キャッシュ221におけるD−Partition223の容量値(閾値)を変更する。 To change the capacitance value of the D-Partition223 (threshold) in the high-level cache 221 through partition capacity setting unit 27.

図13の負荷変更状態82(アクセスパターン変更状態)では、1GBの上位キャッシュ221が利用可能である場合に、44500件のアクセスがヒットする。 In the load change state 82 in FIG. 13 (access pattern change state), when the high-level cache 221 of 1GB is available, 44500 of access hits. しかしながら、負荷変更状態82では、上位キャッシュ221の容量を増加させた場合に、1GB増加毎に増加するヒット件数は、100に留まる。 However, the load change state 82, in case of increasing the capacity of the high-level cache 221, the number of hits increasing every 1GB increase, stay 100.

SSDの下位キャッシュ231では、1.5TBの容量まで0.5TB容量が増加する毎に、15000件のアクセスの割合でヒット件数が増加する。 In the SSD of the low-level cache 231, each time the 0.5TB capacity until the capacity of 1.5TB is increased, the number of hits increases at a rate of 15000 of access. 負荷変更状態82では、4GBのDRAMのうちの3GBをD−Partition223に割り当て、残りの容量1GBを上位キャッシュ221として用いることで最大の性能が得られる。 In the load change conditions 82 allocates 3GB of DRAM of 4GB in D-Partition223, maximum performance is obtained by using the remaining capacity 1GB as the high-level cache 221.

前記の条件では、10万件のアクセスのうち、 In the above conditions, of the 10 million cases of access,
・44500件のアクセスが、DRAMの上位キャッシュ221でヒットし、 - 44500 of access is, hit in the high-level cache 221 of DRAM,
・45300件のアクセスが、SSDの下位キャッシュ231において、下位キャッシュ231のディレクトリ情報が全てD−Partition223に存在する状態で、ヒットする。 - 45,300 of access is, in the low-level cache 231 of the SSD, in a state in which the directory information of the low-level cache 231 are all in the D-Partition223, to hit.

実施例2に示したように、上位キャッシュ221におけるD−Partition223の容量の割り当てを、運用条件、負荷状態等に応じて、最適な値に設定することで、階層キャッシュにおけるアクセス性能の最大化を実現可能としている。 As shown in Example 2, the allocation of capacity of D-Partition223 in the high-level cache 221, operating conditions, according to the load condition or the like, by setting the optimum value, to maximize access performance in a hierarchical cache It is feasible.

なお、上記の特許文献、非特許文献の各開示を、本書に引用をもって繰り込むものとする。 The above patent document, the disclosures of Non-Patent Documents are incorporated by reference herein. 本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。 Within the bounds of the full disclosure of the present invention (including the claims), and based on the basic technical concept, it is possible to modify and adjustments of embodiments and examples. また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ乃至選択が可能である。 Also, possible is a variety of combinations and selections of various disclosed elements (including each element of each claim, each element of each embodiment, each element of each figure) in the region of the framework of the claims of the present invention . すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。 That is, the present invention naturally including the entire disclosure, various modifications will be made by those skilled in the art according to the technical concept, modification and in the appended claims.

1 ホスト2 ストレージ3 ネットワーク21 記憶媒体22 1次高速記憶23 2次高速記憶24 アクセス要求処理部25 ディレクトリ情報アクセス変換部26 データアクセス部27 パーティション容量設定部28 アクセステーブル29 アクセス制御部71 下位キャッシュの容量とディレクトリ情報の格納に必要なメモリ容量の関係81 第2の実施例における初期状態82 第2の実施例における負荷変更状態221 上位キャッシュ222 上位ディレクトリ情報223 D−Partition 1 Host 2 storage 3 network 21 storage medium 22 primary fast memory 23 secondary fast memory 24 the access request processing unit 25 directory information access conversion unit 26 the data access section 27 partitioning capacity setting unit 28 accesses the table 29 access controller 71 the low-level cache capacity and relationship memory capacity required to store directory information 81 second load change state 221 in the initial state 82 the second embodiment in an embodiment of the high-level cache 222 level directory information 223 D-Partition
231 下位キャッシュ232 D−Vol 231 low-level cache 232 D-Vol
2321 下位ディレクトリ情報 2321 sub-directory information

Claims (11)

  1. 情報の書き込み及び読み出しが可能な第1の記憶部を含む第1の記憶装置と、 First storage device including a first storage unit writing and reading a possible information,
    情報の書き込み及び読み出しが可能な第2の記憶部を含む第2の記憶装置と、 A second memory device including a second storage unit writing and reading a possible information,
    を含み、 It includes,
    前記第1の記憶部は、前記第2の記憶部よりも高速であるか同等とされ、 The first storage unit is equal or a second faster than the storage unit,
    前記第1の記憶部及び前記第2の記憶装置は、それぞれ、前記第2の記憶部の制御と管理に必要な管理情報の少なくとも一部を記憶する、所定の容量の記憶領域を有し、 The first storage unit and the second storage device, respectively, for storing at least a portion of the management information required for management and control of the second storage unit has a storage area of ​​predetermined capacity,
    アクセス要求に対して、前記第2の記憶部の情報へアクセスするにあたり、前記第1の記憶部を参照して、前記第2の記憶部のアクセス対象の前記情報のアクセスに必要な前記第2の記憶部の管理情報が、前記第1の記憶部の記憶領域に記憶されているか否か判定し、該当する前記第2の記憶部の管理情報が前記第1の記憶部に記憶されている場合には、前記第1の記憶部に記憶されている該当する前記第2の記憶部の管理情報に基づき、前記第2の記憶部にアクセスするアクセス制御部を含み、 The access request, when access to the information of said second storage unit, by referring to the first storage unit, the second required to access the second of the information of the accessed storage unit management information storage unit, the first whether determined is stored in the storage area of ​​the storage unit, the management information of said second storage unit the corresponding is stored in the first storage unit case, on the basis of the management information of the second storage unit the corresponding stored in the first storage unit, viewed including an access controller for accessing said second storage unit,
    前記第1の記憶装置は、前記第1の記憶部の制御と管理に必要な管理情報を記憶する記憶領域を、前記第1の記憶部とは別に備え、 The first storage device, a storage area for storing management information necessary for management and control of the first storage unit, is provided separately from the first storing unit,
    前記第2の記憶装置は、前記第2の記憶部の制御と管理に必要な管理情報を記憶する記憶領域を、前記第2の記憶部とは別に備え、 The second storage device, a storage area for storing management information necessary to manage and control the second storage unit, is separately provided and the second storage unit,
    ストレージ装置で記憶保持される情報を記憶する記憶媒体を備え、 Comprising a storage medium for storing information that is stored and held in the storage device,
    前記第1及び第2の記憶部は、前記記憶媒体よりも高速とされ、前記記憶媒体に記憶される情報の一部の写し又は更新内容を記憶し、 It said first and second storage unit is faster than the storage medium, stores a part of the copy or update the content of the information stored in the storage medium,
    前記アクセス制御部は、前記アクセス要求に対して、前記第2の記憶部へアクセスするにあたり、前記第1の記憶部に、該当する前記第2の記憶部の管理情報が記憶されていない場合には、前記第2の記憶装置又は前記記憶媒体に記憶されている前記第2の記憶部の管理情報を参照して、前記第2の記憶部へのアクセスを行い、 Said access control unit to the access request, when access to the second storage unit, in the first storage section, when the management information of said second storage unit the corresponding is not stored It is referring to the management information of said second storage unit stored in the second storage device or the storage medium performs the access to the second storage unit,
    前記アクセス制御部は、前記第1の記憶部に新たなデータを格納するにあたり、前記第1の記憶部に、前記新たなデータの格納用の空き領域がない場合、前記第1の記憶部において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記所定の容量値未満である場合には、前記第1の記憶部に設けられた前記第2の記憶部の管理情報の記憶用の記憶領域のうち、前記第2の記憶部の管理情報の記憶に使用されていない記憶領域の一部を、データ格納用の空き領域として確保し、 Said access control unit, when storing new data in the first storage unit, in the first storage unit, if there is no free space for storing the new data in the first storage unit the capacity of that storage area is used to store management information in the second storage unit, if the less than predetermined capacitance value, said first storage unit said second memory provided in of the storage area for storing management information of the part, a portion of the second storage area which is not used to store the management information in the storage unit, secured as free space for storing data,
    前記第1の記憶部において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記所定の容量値以上の場合には、前記第1の記憶部において前記第2の記憶部の管理情報の記憶に使用されている記憶領域の一部を選択してデータ格納用の空き領域として確保し、 In the first storage unit, capacity of the second storage area used to store the management information in the storage unit, in the case of more than the predetermined capacity value, the in the first storage unit the select a part of 2 of which storage area is used to store management information in the storage unit secured as free space for storing data,
    前記データ格納用の空き領域にデータを格納する、ストレージ装置。 Storing data in the free area for the data storage, the storage device.
  2. 前記第1の記憶部に設けられた、前記第2の記憶部の管理情報を記憶する記憶領域の容量値を設定する容量設定部を備えた、請求項1に記載のストレージ装置。 Wherein it provided in the first storage unit, with a capacity setting unit for setting a capacitance value of the storage area for storing management information of the second storage unit, the storage device according to claim 1.
  3. 前記記憶媒体は、前記第2の記憶部の管理情報を記憶する、請求項に記載のストレージ装置。 The storage medium stores management information of said second storage unit, the storage device according to claim 1.
  4. 前記アクセス制御部は、前記第2の記憶装置又は前記記憶媒体に記憶されている前記第2の記憶部の管理情報を、前記第1の記憶部に格納するにあたり、 Said access control unit, the management information of said second storage unit stored in the second storage device or the storage medium, when stored in the first storage unit,
    前記第1の記憶部に、前記第2の記憶部の管理情報格納用の空き領域がある場合、前記空き領域の任意の領域を、前記第2の記憶部の管理情報の格納用とし、 In the first storage unit, if there is the second free space for the management information storage in the storage unit, any region of the free space, and for storing management information of said second storage section,
    前記第1の記憶部に、前記第2の記憶部の管理情報格納用の空き領域がない場合、前記第1の記憶部において前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記所定の容量値未満である場合には、前記第1の記憶部において前記第2の記憶部の管理情報の記憶には使用されていない記憶領域の一部を選択し、選択した前記記憶領域の一部を、前記第2の記憶部の管理情報の格納領域として確保し、 In the first storage unit, the case second there is no free space for the management information storage in the storage unit, the first and the second being used to store the management information in the storage unit are stored in the storage unit capacity regions, if the less than predetermined capacitance value, select the part of the storage area that is not used for storage of the first management information of said second storage unit in the storage unit, some of the selected said storage area, reserved as a storage area of ​​the management information of said second storage section,
    前記第1の記憶部において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記所定の容量値以上である場合には、 In the first storage unit, capacity of the second storage area used to store the management information in the storage unit, if the at predetermined capacitance value or more,
    前記第1の記憶部において前記第2の記憶部の管理情報の記憶用の記憶領域の一部を選択し、選択した前記記憶領域の一部を、前記第2の記憶部の管理情報の格納領域として確保し、 Storing said first selected part of the storage area for storing management information of the second storage unit in the storage unit, selected portions of the storage area, the management information of said second storage unit secured as a region,
    前記確保した格納領域に前記第2の記憶部の管理情報を格納する、請求項に記載のストレージ装置。 Storing the management information of the second storage unit to the secured storage area, the storage device according to claim 1.
  5. 前記アクセス制御部は、アクセス対象のデータが前記第1の記憶部に記憶されていない場合に、前記第1の記憶部に記憶されている前記第2の記憶部の管理情報を参照して、前記アクセス対象のデータが前記第2の記憶部に記憶されているか否か判定し、その際、 Said access control unit, when the access target data is not stored in the first storage unit, by referring to the management information of the first said stored in the storage unit of the second storage unit, wherein whether the determination to access target data is stored in the second storage unit, in which,
    前記第1の記憶部に、前記データに対応する前記第2の記憶部の管理情報が記憶されている場合には、前記管理情報を取得し、 Wherein the first storage unit, when the management information of said second storage unit corresponding to the data is stored, and acquires the management information,
    前記第1の記憶部に、前記データに対応する前記第2の記憶部の管理情報が記憶されていない場合には、前記第2の記憶装置に記憶されている前記データに対応する前記第2の記憶部の管理情報を格納するための領域を、前記第1の記憶部に確保し、前記第1の記憶部に確保した前記領域に、前記第2の記憶装置に記憶されている、前記データに対応する前記第2の記憶部の管理情報を格納する、請求項に記載のストレージ装置。 In the first storage section, when the management information of said second storage unit corresponding to the data is not stored, the second corresponding to the data stored in the second storage device of the area for storing management information of the storage unit, secured in the first storage section, the area allocated to the first storage unit, is stored in the second storage device, wherein storing management information of the second storage unit corresponding to the data storage apparatus according to claim 1.
  6. 前記アクセス制御部は、前記第1の記憶部に、アクセス対象のデータに対応する前記第2の記憶部の管理情報が記憶されていない場合、前記第1の記憶部に空き領域が存在するか確認し、前記第1の記憶部に空き領域が存在する場合、前記空き領域を、前記第2の記憶部の管理情報格納用の領域として確保し、 Whether the access control unit, in the first storage section, when the management information of said second storage unit corresponding to the access target data is not stored, free space exists in the first storage unit check if the free space exists in the first storage unit, the free space reserved as an area for management information stored in said second storage section,
    前記第1の記憶部に空き領域が存在しない場合、 If no free area exists in the first storage unit,
    前記第1の記憶部において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記所定の容量値以下である場合には、前記第1の記憶部において、前記第2の記憶部の管理情報の記憶用の領域に含まれていない領域を、前記第1の記憶部において前記第2の記憶部の管理情報を格納するための領域として確保し、 In the first storage unit, capacity of the second of which storage area is used to store management information in the storage unit, if the is equal to or less than a predetermined capacitance value, in the first storage unit, an area that is not included in the area for storing management information of said second storage unit, and provided as an area for storing management information of the second storage unit in the first storage unit,
    前記第1の記憶部において、前記第2の記憶部の管理情報を記憶する記憶領域の容量が、前記所定の容量値以上の場合には、 In the first storage unit, the capacity of the storage area for storing management information of the second storage unit, in the case of more than the predetermined capacity value,
    前記第1の記憶部において、前記第2の記憶部の管理情報の記憶に使用されている一部の領域を、前記第1の記憶部において前記第2の記憶部の管理情報を新たに格納するための領域として確保し、前記確保した領域について、前記第2の記憶部の管理情報の更新情報が、前記第2の記憶装置に反映されていない場合には、前記更新情報を前記第2の記憶装置に反映した上で、前記領域を空とし、前記空とした領域を前記第2の記憶部の管理情報を新たに格納するための領域とする、請求項1、4、5のいずれか1項に記載のストレージ装置。 In the first storage unit, storing the part of the space used to store the management information in the second storage unit, the management information of said second storage unit is newly in the first storage unit reserved as an area to, for the secured area, the update information of the management information of said second storage unit, wherein if the second is not reflected in the storage device, the update information and the second on at reflecting in the storage device of the area and empty, and the empty area that was the second area for newly storing the management information of the storage unit, one of the claim 1, 4, 5 or storage apparatus according to item 1.
  7. 情報の書き込み及び読み出しが可能な第1の記憶部を含む第1の記憶装置と、 First storage device including a first storage unit writing and reading a possible information,
    情報の書き込み及び読み出しが可能な第2の記憶部を含む第2の記憶装置と、 A second memory device including a second storage unit writing and reading a possible information,
    を含み、 It includes,
    前記第1の記憶部は、前記第2の記憶部よりも高速であるか同等とされ、 The first storage unit is equal or a second faster than the storage unit,
    前記第1の記憶部及び前記第2の記憶装置は、それぞれ、前記第2の記憶部の制御と管理に必要な管理情報の少なくとも一部を記憶する、所定の容量の記憶領域を有し、 The first storage unit and the second storage device, respectively, for storing at least a portion of the management information required for management and control of the second storage unit has a storage area of predetermined capacity,
    アクセス要求に対して、前記第2の記憶部の情報へアクセスするにあたり、前記第1の記憶部を参照して、前記第2の記憶部のアクセス対象の前記情報のアクセスに必要な前記第2の記憶部の管理情報が、前記第1の記憶部の記憶領域に記憶されているか否か判定し、該当する前記第2の記憶部の管理情報が前記第1の記憶部に記憶されている場合には、前記第1の記憶部に記憶されている該当する前記第2の記憶部の管理情報に基づき、前記第2の記憶部にアクセスするアクセス制御部を含み、 The access request, when access to the information of said second storage unit, by referring to the first storage unit, the second required to access the second of the information of the accessed storage unit management information storage unit, the first whether determined is stored in the storage area of the storage unit, the management information of said second storage unit the corresponding is stored in the first storage unit case, on the basis of the management information of the second storage unit the corresponding stored in the first storage unit includes an access control unit for accessing the second storage unit,
    前記第1の記憶装置は、前記第1の記憶部の制御と管理に必要な管理情報を記憶する記憶領域を、前記第1の記憶部とは別に備え、 The first storage device, a storage area for storing management information necessary for management and control of the first storage unit, is provided separately from the first storing unit,
    前記第2の記憶装置は、前記第2の記憶部の制御と管理に必要な管理情報を記憶する記憶領域を、前記第2の記憶部とは別に備え、 The second storage device, a storage area for storing management information necessary to manage and control the second storage unit, is separately provided and the second storage unit,
    ストレージ装置で記憶保持される情報を記憶する記憶媒体を備え、 Comprising a storage medium for storing information that is stored and held in the storage device,
    前記第1及び第2の記憶部は、前記記憶媒体よりも高速とされ、前記記憶媒体に記憶される情報の一部の写し又は更新内容を記憶し、 It said first and second storage unit is faster than the storage medium, stores a part of the copy or update the content of the information stored in the storage medium,
    前記アクセス制御部は、前記アクセス要求に対して、前記第2の記憶部へアクセスするにあたり、前記第1の記憶部に、該当する前記第2の記憶部の管理情報が記憶されていない場合には、前記第2の記憶装置又は前記記憶媒体に記憶されている前記第2の記憶部の管理情報を参照して、前記第2の記憶部へのアクセスを行い、 Said access control unit to the access request, when access to the second storage unit, in the first storage section, when the management information of said second storage unit the corresponding is not stored It is referring to the management information of said second storage unit stored in the second storage device or the storage medium performs the access to the second storage unit,
    前記アクセス制御部は、前記第2の記憶装置又は前記記憶媒体に記憶されている前記第2の記憶部の管理情報を、前記第1の記憶部に格納するにあたり、 Said access control unit, the management information of said second storage unit stored in the second storage device or the storage medium, when stored in the first storage unit,
    前記第1の記憶部に、前記第2の記憶部の管理情報格納用の空き領域がある場合、前記空き領域の任意の領域を、前記第2の記憶部の管理情報の格納用とし、 In the first storage unit, if there is the second free space for the management information storage in the storage unit, any region of the free space, and for storing management information of said second storage section,
    前記第1の記憶部に、前記第2の記憶部の管理情報格納用の空き領域がない場合、前記第1の記憶部において前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記所定の容量値未満である場合には、前記第1の記憶部において前記第2の記憶部の管理情報の記憶には使用されていない記憶領域の一部を選択し、選択した前記記憶領域の一部を、前記第2の記憶部の管理情報の格納領域として確保し、 In the first storage unit, the case second there is no free space for the management information storage in the storage unit, the first and the second being used to store the management information in the storage unit are stored in the storage unit capacity regions, if the less than predetermined capacitance value, select the part of the storage area that is not used for storage of the first management information of said second storage unit in the storage unit, some of the selected said storage area, reserved as a storage area of ​​the management information of said second storage section,
    前記第1の記憶部において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記所定の容量値以上である場合には、 In the first storage unit, capacity of the second storage area used to store the management information in the storage unit, if the at predetermined capacitance value or more,
    前記第1の記憶部において前記第2の記憶部の管理情報の記憶用の記憶領域の一部を選択し、選択した前記記憶領域の一部を、前記第2の記憶部の管理情報の格納領域として確保し、 Storing said first selected part of the storage area for storing management information of the second storage unit in the storage unit, selected portions of the storage area, the management information of said second storage unit secured as a region,
    前記確保した格納領域に前記第2の記憶部の管理情報を格納する、ストレージ装置。 Storing the management information of the second storage unit to the secured storage area, the storage device.
  8. 情報の書き込み及び読み出しが可能な第1の記憶部を含む第1の記憶装置と、 First storage device including a first storage unit writing and reading a possible information,
    情報の書き込み及び読み出しが可能な第2の記憶部を含む第2の記憶装置と、 A second memory device including a second storage unit writing and reading a possible information,
    を含み、 It includes,
    前記第1の記憶部は、前記第2の記憶部よりも高速であるか同等とされ、 The first storage unit is equal or a second faster than the storage unit,
    前記第1の記憶部及び前記第2の記憶装置は、それぞれ、前記第2の記憶部の制御と管理に必要な管理情報の少なくとも一部を記憶する、所定の容量の記憶領域を有し、 The first storage unit and the second storage device, respectively, for storing at least a portion of the management information required for management and control of the second storage unit has a storage area of predetermined capacity,
    アクセス要求に対して、前記第2の記憶部の情報へアクセスするにあたり、前記第1の記憶部を参照して、前記第2の記憶部のアクセス対象の前記情報のアクセスに必要な前記第2の記憶部の管理情報が、前記第1の記憶部の記憶領域に記憶されているか否か判定し、該当する前記第2の記憶部の管理情報が前記第1の記憶部に記憶されている場合には、前記第1の記憶部に記憶されている該当する前記第2の記憶部の管理情報に基づき、前記第2の記憶部にアクセスするアクセス制御部を含み、 The access request, when access to the information of said second storage unit, by referring to the first storage unit, the second required to access the second of the information of the accessed storage unit management information storage unit, the first whether determined is stored in the storage area of the storage unit, the management information of said second storage unit the corresponding is stored in the first storage unit case, on the basis of the management information of the second storage unit the corresponding stored in the first storage unit includes an access control unit for accessing the second storage unit,
    前記第1の記憶装置は、前記第1の記憶部の制御と管理に必要な管理情報を記憶する記憶領域を、前記第1の記憶部とは別に備え、 The first storage device, a storage area for storing management information necessary for management and control of the first storage unit, is provided separately from the first storing unit,
    前記第2の記憶装置は、前記第2の記憶部の制御と管理に必要な管理情報を記憶する記憶領域を、前記第2の記憶部とは別に備え、 The second storage device, a storage area for storing management information necessary to manage and control the second storage unit, is separately provided and the second storage unit,
    ストレージ装置で記憶保持される情報を記憶する記憶媒体を備え、 Comprising a storage medium for storing information that is stored and held in the storage device,
    前記第1及び第2の記憶部は、前記記憶媒体よりも高速とされ、前記記憶媒体に記憶される情報の一部の写し又は更新内容を記憶し、 It said first and second storage unit is faster than the storage medium, stores a part of the copy or update the content of the information stored in the storage medium,
    前記アクセス制御部は、前記アクセス要求に対して、前記第2の記憶部へアクセスするにあたり、前記第1の記憶部に、該当する前記第2の記憶部の管理情報が記憶されていない場合には、前記第2の記憶装置又は前記記憶媒体に記憶されている前記第2の記憶部の管理情報を参照して、前記第2の記憶部へのアクセスを行い、 Said access control unit to the access request, when access to the second storage unit, in the first storage section, when the management information of said second storage unit the corresponding is not stored It is referring to the management information of said second storage unit stored in the second storage device or the storage medium performs the access to the second storage unit,
    前記アクセス制御部は、前記第1の記憶部に、アクセス対象のデータに対応する前記第2の記憶部の管理情報が記憶されていない場合、前記第1の記憶部に空き領域が存在するか確認し、前記第1の記憶部に空き領域が存在する場合、前記空き領域を、前記第2の記憶部の管理情報格納用の領域として確保し、 Whether the access control unit, in the first storage section, when the management information of said second storage unit corresponding to the access target data is not stored, free space exists in the first storage unit check if the free space exists in the first storage unit, the free space reserved as an area for management information stored in said second storage section,
    前記第1の記憶部に空き領域が存在しない場合、 If no free area exists in the first storage unit,
    前記第1の記憶部において、前記第2の記憶部の管理情報の記憶に使用されている記憶領域の容量が、前記所定の容量値以下である場合には、前記第1の記憶部において、前記第2の記憶部の管理情報の記憶用の領域に含まれていない領域を、前記第1の記憶部において前記第2の記憶部の管理情報を格納するための領域として確保し、 In the first storage unit, capacity of the second of which storage area is used to store management information in the storage unit, if the is equal to or less than a predetermined capacitance value, in the first storage unit, an area that is not included in the area for storing management information of said second storage unit, and provided as an area for storing management information of the second storage unit in the first storage unit,
    前記第1の記憶部において、前記第2の記憶部の管理情報を記憶する記憶領域の容量が、前記所定の容量値以上の場合には、 In the first storage unit, the capacity of the storage area for storing management information of the second storage unit, in the case of more than the predetermined capacity value,
    前記第1の記憶部において、前記第2の記憶部の管理情報の記憶に使用されている一部の領域を、前記第1の記憶部において前記第2の記憶部の管理情報を新たに格納するための領域として確保し、前記確保した領域について、前記第2の記憶部の管理情報の更新情報が、前記第2の記憶装置に反映されていない場合には、前記更新情報を前記第2の記憶装置に反映した上で、前記領域を空とし、前記空とした領域を前記第2の記憶部の管理情報を新たに格納するための領域とする、ストレージ装置。 In the first storage unit, storing the part of the space used to store the management information in the second storage unit, the management information of said second storage unit is newly in the first storage unit reserved as an area to, for the secured area, the update information of the management information of said second storage unit, wherein if the second is not reflected in the storage device, the update information and the second on at reflecting in the storage device of the area and empty, and the empty area that was the second area for newly storing the management information of the storage unit, the storage device.
  9. 前記第1の記憶部が上位キャッシュであり、 The first storage unit is the high-level cache,
    前記第2の記憶部が下位キャッシュであり、 The second storage unit is the low-level cache,
    前記第2の記憶装置に記憶された前記第2の記憶部の管理情報が、前記下位キャッシュのディレクトリ情報であり、 Management information of said second storage unit stored in the second storage device, a directory information of the low-level cache,
    前記上位キャッシュは、前記下位キャッシュのディレクトリ情報の一部が記憶されるパーティションを備え、 The high-level cache includes a partition part of the directory information of the low-level cache is stored,
    前記第1の記憶装置は、前記上位キャッシュのディレクトリ情報を記憶する記憶部を、前記上位キャッシュとは別に備えた請求項1乃至のいずれか1項に記載のストレージ装置。 The first storage device, the storage device according to the storage unit for storing the directory information of the high-level cache, in any one of the high-level cache claims 1 to 8 comprising separately from the.
  10. 前記上位キャッシュのディレクトリ情報が、前記上位キャッシュのメモリ管理の単位である各ページについて、 Directory information of the higher-level cache, for each page, which is a unit of memory management of the high-level cache,
    前記ページが未使用であるか否かを表す第1のフラグと、 A first flag indicating whether the page is unused,
    前記下位キャッシュのディレクトリ情報の格納領域に含まれるページであるか否かを表す第2のフラグと、 A second flag indicating whether or not a page included in the storage area of ​​the directory information of the low-level cache,
    前記ページの前記ストレージ装置におけるアドレスと、 The address in the storage device of the page,
    前記ページの前記上位キャッシュにおける格納先を表すアドレスと、 An address indicating the storage location in the high-level cache of the page,
    前記ページのデータが前記上位キャッシュに格納された後に更新済であるかを表す第3のフラグと、 A third flag data of the page indicating which already updated after stored in the high-level cache,
    前記ページの置換における優先度を表す情報を含む、請求項に記載のストレージ装置。 Including information indicating the priority in the substitution of the page, the storage device according to claim 9.
  11. 前記下位キャッシュのディレクトリ情報が、前記下位キャッシュのメモリ管理の単位である各ページについて、 Directory information of the low-level cache is, for each page, which is a unit of memory management of the low-level cache,
    前記ページが未使用であるか否かを表す第1のフラグと、 A first flag indicating whether the page is unused,
    前記ページのデータが前記下位キャッシュに格納された後に、更新済であるかを表す第3のフラグと、 After the data of the page is stored in the low-level cache, and a third flag indicating whether a updated,
    前記ページの置換における優先度を表す情報を含む、請求項10に記載のストレージ装置。 Including information indicating the priority in the substitution of the page, the storage device according to claim 10.
JP2013041216A 2013-03-01 2013-03-01 Storage devices Active JP6273678B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013041216A JP6273678B2 (en) 2013-03-01 2013-03-01 Storage devices

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013041216A JP6273678B2 (en) 2013-03-01 2013-03-01 Storage devices

Publications (2)

Publication Number Publication Date
JP2014170325A true JP2014170325A (en) 2014-09-18
JP6273678B2 true JP6273678B2 (en) 2018-02-07

Family

ID=51692690

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013041216A Active JP6273678B2 (en) 2013-03-01 2013-03-01 Storage devices

Country Status (1)

Country Link
JP (1) JP6273678B2 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06348597A (en) * 1993-06-08 1994-12-22 Hitachi Ltd Cache control method and rotary type storage device
JP5434738B2 (en) * 2010-03-26 2014-03-05 日本電気株式会社 Disk device
JP4945663B2 (en) * 2010-06-30 2012-06-06 株式会社東芝 The method of recovery information processing apparatus and data
JP2012078941A (en) * 2010-09-30 2012-04-19 Toshiba Corp Information processor and cache control method
JP5593577B2 (en) * 2010-12-27 2014-09-24 株式会社日立製作所 Storage system and management method of the control information
US8793436B2 (en) * 2011-05-23 2014-07-29 International Business Machines Corporation Cache management of tracks in a first cache and a second cache for a storage
JP5175953B2 (en) * 2011-06-02 2013-04-03 株式会社東芝 Information processing apparatus and cache control methods

Also Published As

Publication number Publication date Type
JP2014170325A (en) 2014-09-18 application

Similar Documents

Publication Publication Date Title
US7395384B2 (en) Method and apparatus for maintaining data on non-volatile memory systems
US6957294B1 (en) Disk volume virtualization block-level caching
US6725329B1 (en) Cache control system and method having hardware-based tag record allocation
US8621145B1 (en) Concurrent content management and wear optimization for a non-volatile solid-state cache
US8219776B2 (en) Logical-to-physical address translation for solid state disks
US6473830B2 (en) System and method for organizing data stored in a log structured array
US20120210066A1 (en) Systems and methods for a file-level cache
US20120210068A1 (en) Systems and methods for a multi-level cache
US20120072652A1 (en) Multi-level buffer pool extensions
US20120198152A1 (en) System, apparatus, and method supporting asymmetrical block-level redundant storage
US20110055458A1 (en) Page based management of flash storage
US6996669B1 (en) Cluster-based cache memory allocation
US20070005894A1 (en) Computer system having logically ordered cache management
US20070033341A1 (en) Storage system for controlling disk cache
US20140095775A1 (en) Systems and methods for cache endurance
US20140082310A1 (en) Method and apparatus of storage tier and cache management
US20060085626A1 (en) Updating system configuration information
US7032093B1 (en) On-demand allocation of physical storage for virtual volumes using a zero logical disk
US20110072225A1 (en) Application and tier configuration management in dynamic page reallocation storage system
US8880787B1 (en) Extent metadata update logging and checkpointing
US20100199040A1 (en) Storage Subsystem And Storage System Architecture Performing Storage Virtualization And Method Thereof
US5717893A (en) Method for managing a cache hierarchy having a least recently used (LRU) global cache and a plurality of LRU destaging local caches containing counterpart datatype partitions
US20140281131A1 (en) Systems and methods for persistent cache logging
US20130080732A1 (en) Apparatus, system, and method for an address translation layer
US20110145479A1 (en) Efficient use of hybrid media in cache architectures

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170110

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170313

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170822

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171120

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20171127

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171225

R150 Certificate of patent or registration of utility model

Ref document number: 6273678

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150