Patent ID: 7376785
Filing Date: 2008-05-20
Classification: G06F

Abstract:
1. A storage device comprising: a controller for respectively controlling data transmission and reception between a host device and a group of storage devices; and a cache memory used by said controller, for storing write data received from said host device, in a non-redundant fashion or a redundant fashion; wherein said controller is previously provided with processing modes for cases where a write command is received from said host device, namely: (1) a first processing mode wherein the completion of processing is reported to said host device when said write data has been stored in a redundant fashion in said cache memory, and after completion having been reported, said write data stored in a redundant fashion in said cache memory is written to said group of storage devices at a prescribed timing; (2) a second processing mode wherein the completion of processing is reported to said host device when said write data stored in a non-redundant fashion in said cache memory has been written to said group of storage devices; and (3) a third processing mode wherein the completion of processing is reported to said host device when said write data has been stored in a non-redundant fashion in said cache memory, and after completion having been reported, said write data stored in a non-redundant fashion in said cache memory is written to said group of storage devices at a prescribed timing; and said controller is able to execute any one of said processing modes for each memory unit of prescribed memory units that have been established previously, wherein said controller includes a mode selection table configured to contain a respective pre-set mode selection information for said each memory unit, where said respective pre-set mode selection information is for designating whether or not said third processing mode should be executed for a corresponding memory unit instead of said second processing mode, in a situation when said write data is unable to be written in said redundant fashion in said cache memory, and wherein said controller utilizes said respective pre-set mode selection information for selecting execution of said second processing mode or said third processing mode for a corresponding memory unit when said write data is unable to be written in said redundant fashion in said cache memory.