Patent ID: 8775723
Filing Date: 2014-07-08
Classification: G06F

Abstract:
1. A storage system that is coupled to an upper level apparatus comprising: a plurality of nonvolatile semiconductor storage devices; and a storage controller that is coupled to the plurality of nonvolatile semiconductor storage devices and that provides an LU (logical unit) to the upper level apparatus, wherein the storage controller is configured to receive a write request that specifies the LU from the upper level apparatus and to transmit a write command of a virtual page data unit based on data of a write target that conforms to the write request to a nonvolatile semiconductor storage device that is a basis of a storage region of a write destination of the plurality of nonvolatile semiconductor storage devices in accordance with the write request, each of the nonvolatile semiconductor storage devices provided with a nonvolatile semiconductor storage medium and a medium controller that is a controller that is coupled to the nonvolatile semiconductor storage medium, the medium controller configured to hold a real write data amount information that is used for specifying a real write data amount of a data unit that is written to the nonvolatile semiconductor storage medium, (A) in the case in which the medium controller receives a write command and a data unit from the storage controller, the medium controller is configured to execute the following (a1) and (a2): (B) the medium controller is configured to notify the storage controller of the real write data amount information on a regular basis or on an irregular basis, and (C) the storage controller is configured to calculate a real write data amount of the LU based on the real write data amount information from the medium controller of each of the nonvolatile semiconductor storage devices; wherein the logical unit is a virtual LU that is configured by a plurality of virtual regions, the plurality of storage regions based on the plurality of nonvolatile semiconductor storage devices are a plurality of virtual pages, in the case in which a virtual page has not been allocated to a virtual region of a write destination, the storage controller is configured to allocate a free virtual page to the virtual region of a write destination and to transmit a plurality of data units and a plurality of write commands based on the data of a write target to the plurality of nonvolatile semiconductor storage devices that are basis of the virtual page that has been allocated, the real write data amount information indicating a real write data amount for every virtual page, and in the (C), the storage controller is configured to calculate a real write data amount for every virtual page based on the real write data amount information from each of the nonvolatile semiconductor storage devices and to calculate a real write data amount of the virtual LU based on the real write data amount from each of the virtual pages that have been allocated to the logical unit.