Notice of Pre-AIA or AIA Status
The present application is being examined under the pre-AIA first to invent provisions.
DETAILED ACTION
Claims 1-20 were previously examined.
Claims 1, 10 and 19 have been amended on June 24, 2026.
Claims 1-20 are pending in this action.
Response to Arguments
Applicant’s arguments, see under “Claim Rejections 35 USC102/103”, filed June 24, 2026, with respect to claims 1-20 have been fully considered. However, upon further consideration, a new ground(s) of rejection is made in further view Yoon et al. (US 8,429,492).
See updated rejection below.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claims 1-20 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention.
Any claim not specifically mentioned, is rejected due to its dependency on a rejected claim.
Claims 1, 10 and 19 recite “… in an initial operation period based on whether a number of writes to the storage device falls below a threshold; and in response to determining … based on the number of writes to the storage device falling below the threshold”
Examiner carefully reviewed the specification for “based on the number of writes to the storage device falling below the threshold”
[0132]…storage controller 174 can determine that storage device 176a has undergone a certain number of write passes…
[0137]…the initial operation period may be defined in terms of a certain number of write passes over storage device 176a. The initial operation period may be defined in terms of other operations that modify storage of storage device 176a, such as particular encryption processes, drive erase processes, or testing operations or any other operations that write data to storage device 176a.
Paragraphs above does not clearly discloses “the number of writes to the storage device falling below the threshold”
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Any claim not specifically mentioned, is rejected due to its dependency on a rejected claim.
Claims 1, 10 and 19 recite “in response …based on the number of writes to the storage falling below the threshold”
The recited limitation such as “falling below the threshold” renders this limitation indefinite because Applicant fails to define “threshold” in the recited claims or the specification. As such, it is unclear what the threshold is required, so it can determined when to increase an amount of redundancy stored in …storage devices.
Claims 1, 10 and 19 recite “in response …based on the number of writes to the storage falling below the threshold”
The recited condition limitation such as ““in response …based on the number of writes to the storage falling below the threshold” renders this limitation indefinite because it is unclear what steps are performed “when number of writes to the storage NOT falling below the threshold” or “when number of writes to the storage is above the threshold” (example: threshold is set to zero 0).
In other words, it is unclear if any further process is being executed when the storage device is NOT in an initial operation because a number of writes does/do not falls below a threshold. (example: threshold is set to zero). For instance, when a write access operation is equal to one. One write access operation is greater than (write access operation) threshold 0. As such, it is not in an initial operation. Nothing is performed. For another instance, when a number of (data) write is a one data. One data write is greater than (write data) threshold 0. As such, it is not in an initial operation. Nothing is performed.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of pre-AIA 35 U.S.C. 103(a) which forms the basis for all obviousness rejections set forth in this Office action:
(a) A patent may not be obtained though the invention is not identically disclosed or described as set forth in section 102, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-3, 6, 8-12, 15, 17-20 is/are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Park et al. (US 2025/0,181,450), in view of Shalvi et al. (US 2008/0,282,106), in further view of Xu (US 2018/0,004,409), in view of Yoon et al. (US 8,429,492)
As per claim 1: (Currently Amended)
As per claim 10: (Currently Amended)
As per claim 19: (Currently Amended)
Park discloses:
A method comprising:
A storage system comprising a memory, a processing device operably coupled to the memory configured to:
A non-transitory computer readable storage medium storing instructions that, when executed, cause a processing device:
(Park, Figs 1-9)
(Park, Fig. 1, ECC Engine 150, Parity Controller 160, Memory Device)
(Park, Fig. 4, Parity Data PD1, PD2, PD3 and PD4)
(Park, [0037] The processor 110 may include a central processing unit (CPU) or a microprocessor and may control the overall operation of the memory controller 100. The processor 110 may include one or more processor cores capable of executing an instruction set of program code configured to perform a specific operation. For example, the processor 110 may execute command codes of firmware stored in the memory 130)
determining whether a storage device of a plurality of storage devices is in an initial operation period
(Park, [0048] … in an initial state after data is written to the memory region, the reliability of the memory region is very high. … only parity data having a size less than the size of parity data having the lowest error correction capability previously considered in the related art may be required)
in response to determining that the storage device is in the initial operation period,
(Park, [0048] … in an initial state after data is written to the memory region, the reliability of the memory region is very high. … only parity data having a size less than the size of parity data having the lowest error correction capability previously considered in the related art may be required)
increasing an amount of
(Park, Fig. 4, Parity Data PD1, PD2, PD3 and PD4)
(Park, [0028] parity controller 160 may adjust the size of parity data of data to be written during a write operation of the first memory region 230_1 to the N-th memory region 230_N based on the reliability information for the first memory region 230_1 to the N-th memory region 230_N)
Park discloses parity data. However, Park does not disclose redundancy data.
Shalvi discloses a method of adjusting redundancy data after initial operation.
(Shalvi, [0060] The methods and systems … apply error correction in an incremental manner. In the disclosed schemes, MSP 40 encodes the data for storage in the memory cells with an Error Correction Code (ECC) that lends itself to incremental decoding, i.e., an ECC that is decodable using varying amounts of redundancy. When retrieving data from the memory cells, the MSP initially attempts to decode the ECC using a certain amount of redundancy, and increases the amount of redundancy if the initial decoding attempt fails)
(Shalvi, Fig. 2, Redundancy Set #1, #2, #3)
(Shalvi, Fig. 7, Encode page Using Baseline Redundancy 180)
(Shalvi, Fig. 7, Encode page to produce additional redundancy bits and store in redundancy storage area 196)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Shalvi’s method of adjusting amount of redundancy after initial operation fails to decoding in order to improve error decoding capability.
Park-Shalvi does not disclose:
an initial operation period based on a number of writes to the storage device
Xu discloses:
increasing redundancy during an initial operation period based on a number of writes to the storage device
(Xu, [0028] Optionally, the writing amount per time unit may also be the number of writes per time unit. For example, the number of writes of the target network service in the target storage per minute is 200,000, or the number of writes of the target network service in the target storage per minute is 500,000)
(Xu, [0056] … the first writing amount per time unit of the service data of the target network service in the target storage during the predetermined time period is detected, the first amount of the redundant storage corresponding to the first writing amount per time unit is determined according .. correspondence between the writing amount per time unit and the amount of the redundant storage, and the redundant storage of the target network service in the target storage is set according to the first amount of the redundant storage. In this way, when the writing amount per time unit increases, the amount of the redundant storage may be increased automatically … thereby prolonging the service life of the target storage)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Xu’s method of determining number of write to the storage during initial period in order to increase the amount of redundant storage from default setting in order to improve the storage protection based on amount of number of write and thereby prolonging the service life of the target storage.
(Xu, [0056] … the first writing amount per time unit of the service data of the target network service in the target storage during the predetermined time period is detected, the first amount of the redundant storage corresponding to the first writing amount per time unit is determined according .. correspondence between the writing amount per time unit and the amount of the redundant storage, and the redundant storage of the target network service in the target storage is set according to the first amount of the redundant storage. In this way, when the writing amount per time unit increases, the amount of the redundant storage may be increased automatically … thereby prolonging the service life of the target storage)
Park-Shalvi-Xu does not disclose:
based on the number of writes to the storage failing below the threshold
Yoon discloses:
based on the number of writes to the storage failing below the threshold
(Yoon, Column 4, memory controller 110 can track the number of times an active memory block is written and compare the usage to a set of threshold values. Memory controller 110 can then use a stronger ECC to protect data written to that block. The stronger ECC can supplant either a default-strength ECC or the ECC most recently used for that block)
(Abstract, adjusting the strength of the error correction coding can include increasing a number of parity bits that are stored with the information)
(Yoon, Figs 4, 5, 6)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Yoon’s method of comparing the number of times that the memory is written to a threshold into the system in order to adjusting the ECC redundancy based on the usage history of the storage memory device.
Yoon, Column 4, memory controller 110 can track the number of times an active memory block is written and compare the usage to a set of threshold values. Memory controller 110 can then use a stronger ECC to protect data written to that block. The stronger ECC can supplant either a default-strength ECC or the ECC most recently used for that block)
(Abstract, adjusting the strength of the error correction coding can include increasing a number of parity bits that are stored with the information)
(Yoon, Figs 4, 5, 6)
As per claim 2: (Currently Amended)
As per claim 11: (Currently Amended)
As per claim 20: (Currently Amended)
Park-Shalvi-Xu-Yoon further discloses:
wherein the
(Park, Fig. 4, Parity Data PD1, PD2, PD3 and PD4)
(Park, [0028] parity controller 160 may adjust the size of parity data of data to be written during a write operation of the first memory region 230_1 to the N-th memory region 230_N based on the reliability information for the first memory region 230_1 to the N-th memory region 230_N)
Shalvi further discloses a method of adjusting redundancy.
(Shalvi, [0060] The methods and systems … apply error correction in an incremental manner. In the disclosed schemes, MSP 40 encodes the data for storage in the memory cells with an Error Correction Code (ECC) that lends itself to incremental decoding, i.e., an ECC that is decodable using varying amounts of redundancy. When retrieving data from the memory cells, the MSP initially attempts to decode the ECC using a certain amount of redundancy, and increases the amount of redundancy if the initial decoding attempt fails)
(Shalvi, Fig. 2, Redundancy Set #1, #2, #3)
(Shalvi, Fig. 7, Encode page Using Baseline Redundancy 180)
(Shalvi, Fig. 7, Encode page to produce additional redundancy bits and store in redundancy storage area 196)
In view of motivation previously stated, the claim is rejected.
As per claim 3: (Currently Amended)
As per claim 12: (Currently Amended)
Park-Shalvi-Xu-Yoon further discloses:
increasing the amount of redundancy data further comprises:
(Shalvi, [0060] The methods and systems … apply error correction in an incremental manner. In the disclosed schemes, MSP 40 encodes the data for storage in the memory cells with an Error Correction Code (ECC) that lends itself to incremental decoding, i.e., an ECC that is decodable using varying amounts of redundancy. When retrieving data from the memory cells, the MSP initially attempts to decode the ECC using a certain amount of redundancy, and increases the amount of redundancy if the initial decoding attempt fails)
(Shalvi, Fig. 2, Redundancy Set #1, #2, #3)
(Shalvi, Fig. 7, Encode page Using Baseline Redundancy 180)
(Shalvi, Fig. 7, Encode page to produce additional redundancy bits and store in redundancy storage area 196)
increasing a number of storage devices that store the redundancy data.
(Shalvi, Fig. 2, additional storage area 68, Set #2, #3)
As per claim 6: (Currently Amended)
As per claim 15: (Currently Amended)
Park-Shalvi-Xu-Yoon further discloses:
defining, for the storage device, the initial operation period based on a characteristic of the storage device that is shared with at least one other storage device, current workload conditions, or service level requirements.
(Park, [0048] … in an initial state after data is written to the memory region, the reliability of the memory region is very high. … only parity data having a size less than the size of parity data having the lowest error correction capability previously considered in the related art may be required)
(Park, Fig. 4, Parity Data PD1, PD2, PD3 and PD4)
(Park, [0028] parity controller 160 may adjust the size of parity data of data to be written during a write operation of the first memory region 230_1 to the N-th memory region 230_N based on the reliability information for the first memory region 230_1 to the N-th memory region 230_N)
As per claim 8: (Currently Amended)
As per claim 17: (Currently Amended)
Park-Shalvi-Xu-Yoon further discloses:
determining that the amount of redundancy data should not be reduced after the initial operation period has elapsed; and based on the determination, keeping the amount of redundancy data unchanged after the initial operation period has elapsed.
(Park, [0048] … in an initial state after data is written to the memory region, the reliability of the memory region is very high. … only parity data having a size less than the size of parity data having the lowest error correction capability previously considered in the related art may be required)
(Park, Fig. 4, Parity Data PD1, PD2, PD3 and PD4)
(Park, [0028] parity controller 160 may adjust the size of parity data of data to be written during a write operation of the first memory region 230_1 to the N-th memory region 230_N based on the reliability information for the first memory region 230_1 to the N-th memory region 230_N)
As per claim 9: (Original)
As per claim 18: (Original)
Park-Shalvi-Xu-Yoon further discloses:
wherein keeping the amount of redundancy data unchanged after the initial operation period has elapsed further comprises: detecting, in the storage device, a manufacturing defect; and in response to the detection, maintaining an unchanged amount of redundancy data for a second period.
(Park, [0048] … in an initial state after data is written to the memory region, the reliability of the memory region is very high. … only parity data having a size less than the size of parity data having the lowest error correction capability previously considered in the related art may be required)
(Park, Fig. 4, Parity Data PD1, PD2, PD3 and PD4)
(Park, [0028] parity controller 160 may adjust the size of parity data of data to be written during a write operation of the first memory region 230_1 to the N-th memory region 230_N based on the reliability information for the first memory region 230_1 to the N-th memory region 230_N)
Claims 4, 5, 7, 13, 14 and 16 is/are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Park et al. (US 2025/0,181,450), in view of Shalvi et al. (US 2008/0,282,106), in further view of Xu (US 2018/0,004,409), in view of Yoon et al. (US 8,429,492), in view Meir et al (US 2015/0,339,073)
As per claim 4: (Currently Amended)
As per claim 13: (Currently Amended)
Park-Shalvi-Xu-Yoon further discloses:
determining that the initial operation period has elapsed; and based on the determination, reducing the amount of
(Park, [0048] … in an initial state after data is written to the memory region, the reliability of the memory region is very high. … only parity data having a size less than the size of parity data having the lowest error correction capability previously considered in the related art may be required)
Shalvi further discloses a method of reducing redundancy.
(Shalvi, [0060] The methods and systems … apply error correction in an incremental manner. In the disclosed schemes, MSP 40 encodes the data for storage in the memory cells with an Error Correction Code (ECC) that lends itself to incremental decoding, i.e., an ECC that is decodable using varying amounts of redundancy. When retrieving data from the memory cells, the MSP initially attempts to decode the ECC using a certain amount of redundancy, and increases the amount of redundancy if the initial decoding attempt fails)
(Shalvi, Fig. 2, Redundancy Set #1, #2, #3)
(Shalvi, Fig. 7, Encode page Using Baseline Redundancy 180)
(Shalvi, Fig. 7, Encode page to produce additional redundancy bits and store in redundancy storage area 196)
Park-Shalvi-Xu-Yoon does not disclose:
reducing a number of storage devices that store the redundancy data.
Meir discloses:
reducing a number of storage devices that store the redundancy data.
(Meir, [0036] … ECC encoders and decoders can be configured to modify the code rate such that the memory controller can reduce the size of the encoded data in memory in step 110 if the evaluated available memory space in step 100 is below a predefined threshold. Alternatively, the memory controller can change the coding scheme in step 110 to make an effective change in the code rate in order to change the size of the redundancy information written to memory in step 130 in response to the available memory space in step 100)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Meir’s method of adjusting the ECC code rate in order to reduce the size of the encoded data based on available memory space of the storage system.
(Meir, [0036] … ECC encoders and decoders can be configured to modify the code rate such that the memory controller can reduce the size of the encoded data in memory in step 110 if the evaluated available memory space in step 100 is below a predefined threshold. Alternatively, the memory controller can change the coding scheme in step 110 to make an effective change in the code rate in order to change the size of the redundancy information written to memory in step 130 in response to the available memory space in step 100)
As per claim 5: (Currently Amended)
As per claim 14: (Currently Amended)
Park-Shalvi-Xu-Yoon further discloses:
wherein readjusting the amount of redundancy data further comprises:
(Park, [0048] … in an initial state after data is written to the memory region, the reliability of the memory region is very high. … only parity data having a size less than the size of parity data having the lowest error correction capability previously considered in the related art may be required)
(Park, Fig. 4, Parity Data PD1, PD2, PD3 and PD4)
(Park, [0028] parity controller 160 may adjust the size of parity data of data to be written during a write operation of the first memory region 230_1 to the N-th memory region 230_N based on the reliability information for the first memory region 230_1 to the N-th memory region 230_N)
Park-Shalvi-Xu-Yoon does not disclose:
reducing a number of storage devices that store the redundancy data.
Meir discloses:
reducing a number of storage devices that store the redundancy data.
(Meir, [0036] … ECC encoders and decoders can be configured to modify the code rate such that the memory controller can reduce the size of the encoded data in memory in step 110 if the evaluated available memory space in step 100 is below a predefined threshold. Alternatively, the memory controller can change the coding scheme in step 110 to make an effective change in the code rate in order to change the size of the redundancy information written to memory in step 130 in response to the available memory space in step 100)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Meir’s method of adjusting the ECC code rate in order to reduce the size of the encoded data based on available memory space of the storage system.
(Meir, [0036] … ECC encoders and decoders can be configured to modify the code rate such that the memory controller can reduce the size of the encoded data in memory in step 110 if the evaluated available memory space in step 100 is below a predefined threshold. Alternatively, the memory controller can change the coding scheme in step 110 to make an effective change in the code rate in order to change the size of the redundancy information written to memory in step 130 in response to the available memory space in step 100)
As per claim 7: (Original)
As per claim 16: (Original)
Park-Shalvi-Xu-Yoon-Mier further discloses:
wherein the plurality of storage devices is used for storing portions of a
(Park, Fig. 4, Parity Data PD1, PD2, PD3 and PD4)
(Park, [0028] parity controller 160 may adjust the size of parity data of data to be written during a write operation of the first memory region 230_1 to the N-th memory region 230_N based on the reliability information for the first memory region 230_1 to the N-th memory region 230_N)
Park-Shalvi does not disclose a method of storing in RAID stripe.
Meir discloses a method of storing in RAID stripe.
(Meir, [0032], a RAID stripe comprises N blocks: N-1 data blocks and a parity (redundancy) block)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Meir’s method of storing parity or redundancy in a RAID stripe of the storage device.
(Meir, [0032], a RAID stripe comprises N blocks: N-1 data blocks and a parity (redundancy) block)
As per claims 10-20:
Claims 10-20 recite similar limitations of claims 1-9. Therefore, see claims 1-9 above.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of pre-AIA 35 U.S.C. 103(a) which forms the basis for all obviousness rejections set forth in this Office action:
(a) A patent may not be obtained though the invention is not identically disclosed or described as set forth in section 102, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-2, 6, 8-11, 15, 17, 19-20 is/are rejected under pre-AIA 35 U.S.C. 103 as being unpatentable over Kim et al. (US 2015/0,178,155), in further view of Xu (US 2018/0,004,409), in view of Yoon et al. (US 8,429,492)
As per claim 1: (Currently Amended)
As per claim 19: (Currently Amended)
As per claim 10: (Currently Amended)
Kim discloses:
A method comprising:
A storage system comprising a memory, a processing device operably coupled to the memory configured to:
A non-transitory computer readable storage medium storing instructions that, when executed, cause a processing device:
(Kim, Figs 1-19)
determining whether a storage device of a plurality of storage devices is in an initial operation period on whether
(Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
in response to determining that the storage device is in the initial operation period whether
(Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
increasing an amount of redundancy data for data in one or more storage device of the plurality of storage devices that is stored within the storage device.
(Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
Kim does not disclose:
an initial operation period based on a number of writes to the storage device
Xu discloses:
increasing redundancy during an initial operation period based on a number of writes to the storage device
(Xu, [0028] Optionally, the writing amount per time unit may also be the number of writes per time unit. For example, the number of writes of the target network service in the target storage per minute is 200,000, or the number of writes of the target network service in the target storage per minute is 500,000)
(Xu, [0056] … the first writing amount per time unit of the service data of the target network service in the target storage during the predetermined time period is detected, the first amount of the redundant storage corresponding to the first writing amount per time unit is determined according .. correspondence between the writing amount per time unit and the amount of the redundant storage, and the redundant storage of the target network service in the target storage is set according to the first amount of the redundant storage. In this way, when the writing amount per time unit increases, the amount of the redundant storage may be increased automatically … thereby prolonging the service life of the target storage)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Xu’s method of determining number of write to the storage during initial period in order to increase the amount of redundant storage from default setting in order to improve the storage protection based on amount of number of write and thereby prolonging the service life of the target storage.
(Xu, [0056] … the first writing amount per time unit of the service data of the target network service in the target storage during the predetermined time period is detected, the first amount of the redundant storage corresponding to the first writing amount per time unit is determined according .. correspondence between the writing amount per time unit and the amount of the redundant storage, and the redundant storage of the target network service in the target storage is set according to the first amount of the redundant storage. In this way, when the writing amount per time unit increases, the amount of the redundant storage may be increased automatically … thereby prolonging the service life of the target storage)
Kim-Xu does not discloses:
whether based on a number of writes to the storage device falls below a threshold
Yoon discloses:
based on the number of writes to the storage failing below the threshold
(Yoon, Column 4, memory controller 110 can track the number of times an active memory block is written and compare the usage to a set of threshold values. Memory controller 110 can then use a stronger ECC to protect data written to that block. The stronger ECC can supplant either a default-strength ECC or the ECC most recently used for that block)
(Abstract, adjusting the strength of the error correction coding can include increasing a number of parity bits that are stored with the information)
(Yoon, Figs 4, 5, 6)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Yoon’s method of comparing the number of times that the memory is written to a threshold into the system in order to adjusting the ECC redundancy based on the usage history of the storage memory device.
Yoon, Column 4, memory controller 110 can track the number of times an active memory block is written and compare the usage to a set of threshold values. Memory controller 110 can then use a stronger ECC to protect data written to that block. The stronger ECC can supplant either a default-strength ECC or the ECC most recently used for that block)
(Abstract, adjusting the strength of the error correction coding can include increasing a number of parity bits that are stored with the information)
(Yoon, Figs 4, 5, 6)
As per claim 2: (Currently Amended)
As per claim 11: (Currently Amended)
As per claim 20: (Currently Amended)
Kim-Xu- Yoon further discloses:
wherein the redundancy data includes parity information for the data, and wherein increasing t the amount of redundancy data further comprises: increasing t the amount of parity information stored within one or more storage devices of the plurality of storage devices.
(Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
As per claim 3: (Currently Amended)
As per claim 12: (Currently Amended)
Kim-Xu- Yoon further discloses:
increasing the amount of redundancy data further comprises: increasing a number of storage devices that store the redundancy data.
(Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
As per claim 6: (Currently Amended)
As per claim 15: (Currently Amended)
Kim-Xu- Yoon further discloses:
defining, for the storage device, the initial operation period, further comprising defining the initial operation period based on a characteristic of the storage device that is shared with at least one other storage device, current workload conditions, or service level requirements.
((Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
As per claim 8: (Currently Amended)
As per claim 17: (Currently Amended)
Kim-Xu- Yoon further discloses:
determining that the amount of redundancy data should not be adjusted
(Kim [0064] may change that means it may not change)
after the initial operation period has elapsed; and based on the determination, keeping the amount of redundancy data unchanged after the initial operation period has elapsed.
(Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
As per claim 9: (Original)
As per claim 18: (Original)
Kim-Xu- Yoon further discloses:
wherein keeping the amount of redundancy data unchanged
(Kim [0064] may change that means it may not change)
after the initial operation period has elapsed further comprises: detecting, in the storage device, a manufacturing defect; and in response to the detection, maintaining an unchanged amount of redundancy data for a second period.
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
Claims 4-5, 7, 13-14 and 16 is/are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Kim et al. (US 2015/0,178,155), in further view of Xu (US 2018/0,004,409), in view of Yoon et al. (US 8,429,492), in view Meir et al (US 2015/0,339,073)
As per claim 4:
As per claim 13:
Kim further discloses:
determining that the initial operation period has
(Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
Kim-Xu- Yoon does not clearly disclose:
reducing the amount of redundancy data after the initial operation period has elapsed.
Meir discloses:
reducing the amount of redundancy data after the initial operation period has elapsed.
(Meir, [0036] … ECC encoders and decoders can be configured to modify the code rate such that the memory controller can reduce the size of the encoded data in memory in step 110 if the evaluated available memory space in step 100 is below a predefined threshold. Alternatively, the memory controller can change the coding scheme in step 110 to make an effective change in the code rate in order to change the size of the redundancy information written to memory in step 130 in response to the available memory space in step 100)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Meir’s method of adjusting the ECC code rate in order to reduce the size of the encoded data based on available memory space of the storage system.
(Meir, [0036] … ECC encoders and decoders can be configured to modify the code rate such that the memory controller can reduce the size of the encoded data in memory in step 110 if the evaluated available memory space in step 100 is below a predefined threshold. Alternatively, the memory controller can change the coding scheme in step 110 to make an effective change in the code rate in order to change the size of the redundancy information written to memory in step 130 in response to the available memory space in step 100)
As per claim 5: (Currently Amended)
As per claim 14: (Currently Amended)
Kim-Xu- Yoon further discloses:
wherein readjusting the amount of redundancy data further comprises:
(Kim, [0049] A storage device …may improve data reliability by changing the size of CRC (cyclic redundancy check) parity if necessary … at an initial ECC decoding operation)
(Kim, [0064] …storage device 10 may change the size of CRC parity to increase an error detection capacity … at the initial decoding operation of the iteration code to decrease the UEP. Thus, reliability of data stored in the nonvolatile memory device 10 may be improved)
(Kim, [0153] … reliability and a life time … may be improved by changing the size of CRC parity ….CRC … at an initial ECC decoding operation)
Kim-Xu- Yoon does not clearly disclose:
reducing a number of storage devices that store the redundancy data.
Meir discloses:
reducing a number of storage devices that store the redundancy data.
(Meir, [0036] … ECC encoders and decoders can be configured to modify the code rate such that the memory controller can reduce the size of the encoded data in memory in step 110 if the evaluated available memory space in step 100 is below a predefined threshold. Alternatively, the memory controller can change the coding scheme in step 110 to make an effective change in the code rate in order to change the size of the redundancy information written to memory in step 130 in response to the available memory space in step 100)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Meir’s method of adjusting the ECC code rate in order to reduce the size of the encoded data based on available memory space of the storage system.
(Meir, [0036] … ECC encoders and decoders can be configured to modify the code rate such that the memory controller can reduce the size of the encoded data in memory in step 110 if the evaluated available memory space in step 100 is below a predefined threshold. Alternatively, the memory controller can change the coding scheme in step 110 to make an effective change in the code rate in order to change the size of the redundancy information written to memory in step 130 in response to the available memory space in step 100)
As per claim 7: (Original)
As per claim 16: (Original)
Kim-Xu- Yoon does not clearly disclose:
wherein the plurality of storage devices is used for storing portions of a RAID stripe, wherein the plurality of storage devices include data that is written as data blocks in a plurality of RAID stripes, and wherein the redundancy data includes parity information for the RAID stripe.
Meir discloses:
wherein the plurality of storage devices is used for storing portions of a RAID stripe, wherein the plurality of storage devices include data that is written as data blocks in a plurality of RAID stripes, and wherein the redundancy data includes parity information for the RAID stripe.
(Meir, [0032], a RAID stripe comprises N blocks: N-1 data blocks and a parity (redundancy) block)
It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Meir’s method of storing parity or redundancy in a RAID stripe of the storage device.
(Meir, [0032], a RAID stripe comprises N blocks: N-1 data blocks and a parity (redundancy) block)
As per claims 10-20:
Claims 10-20 recite similar limitations of claims 1-9. Therefore, see rejections from claims 1-9 above.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to THIEN DANG NGUYEN whose telephone number is (571)272-9189. The examiner can normally be reached Monday-Friday 7 AM - 3:30 PM.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Mark Featherstone can be reached at 571-270-3750. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/Thien Nguyen/ Primary Examiner, Art Unit 2111