DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
The Examiner acknowledges the applicant's submission of the amendment dated 4/23/26.
1. RESPONSE TO RESTRICTION / ELECTION FILED
Applicant’s election without traverse of claims 1-8 in the reply filed on 4/23/26 is acknowledged. The Examiner notes the amending of claims 9 and 15 as dependent claims have been noted.
2. ACKNOWLEDGEMENT OF REFERENCES CITED BY APPLICANT
Information Disclosure Statement
As required by M.P.E.P. ' 609 (C), the applicant's submission of the Information Disclosure Statement, dated 7/18/24, is acknowledged by the examiner and the cited references have been considered in the examination of the claims now pending. As required by M.P.E.P. ' 609 C(2), a copy of the PTOL-1449 initialed and dated by the examiner is attached to the instant office action.
3. REJECTIONS NOT BASED ON PRIOR ART
a. DEFICIENCIES IN THE CLAIMED SUBJECT MATTER
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 9-14 and 15-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 pre-AIA the applicant regards as the invention.
Claim 9 recites the limitation of “receive one or more write commands to write data to one or more streams of the plurality of streams;” in lines 11-12. (emphasis added) It is unclear if these ‘one or more write commands to write data’ are the same as the ‘one or more commands to write data to a first stream of the plurality of streams;’ that is recited in claim 1. Further, it appears that these limitations may be performing the same action. Further change and/or correction is required. Claim 15 has a similar deficiency as claim 9, and rejected under a similar rationale. The dependent claims have a similar deficiency, and inherit the deficiency of their respective parent claim.
Claim 9 recites the limitation of “generate change log data associated with the at least one stream for each write command of the one or more write commands received in the second volatile memory unit” in lines 16-18. (emphasis added) It is unclear if this ‘change log data’ is the same as the ‘change log data’ that is recited in claim 1. Further, it appears that these limitations may be performing the same action. Further change and/or correction is required. Claim 15 has a similar deficiency as claim 9, and rejected under a similar rationale. The dependent claims have a similar deficiency, and inherit the deficiency of their respective parent claim.
Claim 15 recites the limitation of “determine whether a power failure event has been experienced.” in the last line. (emphasis added) It is unclear if this ‘power failure event’ is the same as the ‘power failure event’ that is recited in claim 1. Further, it appears that these limitations may be performing the same action. Further change and/or correction is required. Claim 13 has a similar deficiency as claim 9, and rejected under a similar rationale. The dependent claims have a similar deficiency, and inherit the deficiency of their respective parent claim.
4. ALLOWABLE SUBJECT MATTER
Claims 1-8 are allowed.
Claims 9-20 would be allowable if rewritten to overcome the rejection(s) under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), 2nd paragraph, set forth in this Office action and to include all of the limitations of the base claim and any intervening claims.
The following is an examiner’s statement of reasons for allowance:
Claims 1 recites the limitations of (or similar thereof):
“a non-volatile storage unit, wherein a capacity of the non-volatile storage unit is divided into a plurality of streams, and wherein the non-volatile storage unit comprises a plurality of dies, each of the plurality of dies comprising a plurality of erase blocks;
a first volatile memory unit; and
a controller coupled to the non-volatile storage unit and the first volatile memory unit, the controller comprising a second volatile memory unit, wherein the controller is configured to:
receive one or more commands to write data to a first stream of the plurality of streams;
generate change log data for the first stream in a temporary location in the second volatile memory unit; and
copy the change log data for the first stream to the non-volatile storage unit upon experiencing a power failure event.”
The closest prior art of record includes:
Sartore (US 20090031072), which teaches a memory subsystem includes a volatile memory, a nonvolatile memory, and a controller including logic to interface the volatile memory to an external system. The volatile memory is addressable for reading and writing by the external system. The memory subsystem includes a power controller with logic to detect when power from the external system to at least one of the volatile and nonvolatile memories and to the controller fails. When external system power fails, backup power is provided to at least one of the volatile and nonvolatile memories and to the controller for long enough to enable the controller to back up data from the volatile memory to the nonvolatile memory;
Yano (US 20110173380), which teaches a first log indicating that a system is running is recorded in a second storage unit before a first difference log is recorded in the second storage unit after system startup, and a second log indicating that the system halts is recorded in the second storage unit following the difference log, at the time of normal system halt, and it is judged whether normal system halt has been performed or an incorrect power-off sequence has been performed last time, based on a recorded state of the first and second logs in the second storage unit, at the time of system startup, thereby detecting an incorrect power-off easily and reliably;
Shuo (US 20220027349), which teaches indexed data structures are provided which are optimized for read and write performance in persistent memory of computing systems. Stored data may be searched by traversing an indexed data structure while still being sequentially written to persistent memory, so that the stored data may be accessed more efficiently than on non-volatile storage, while maintaining persistence;
against system failures such as power cycling. Mapping correspondences between leaf nodes of an indexed data structure and sequential elements of a sequential data structure may be stored in RAM, facilitating fast random access. Data writes are recorded as appended delta encodings which may be periodically compacted, avoiding write amplification inherent in persistent memory. Delta encodings are stored in iterative flows, such as log streams, enabling access to multiple buckets of data in parallel, while also providing a chronological record to enable recovery of mapping correspondences in RAM, guarding non-persistent data against system failures;
Gorobets (US 20210373804), which teaches methods of operating storage devices. The storage device comprises a controller comprising first random access memory (RAM1), second random access memory (RAM2), and a storage unit divided into a plurality of streams. The controller restricts the host to a maximum number of streams that can be in the open and active state at a time. Open streams can be switched to the closed state, and vice versa, upon a predetermined amount of time expiring. The maximum number of open streams is based on one or more amounts of time to: generate parity data, copy the parity data from the RAM2 to the RAM1, update the parity data, switch a stream from the open and active state to the closed state, and the amount of space in a temporary RAM1 buffer; and
Schneider (US 20200034440), which teaches a processing device configured to generate a hash entry of a hash table implementing a key-value store that comprises a plurality of buckets associated with corresponding keys where a given bucket comprises a bucket index having two or more entries for storage of values that hash to a key associated with the given bucket. The processing device is also configured to allocate blocks in non-volatile memory, to split the given bucket into chunks each comprising at least one entry of the bucket index, and to persist the hash table to the non-volatile memory utilizing a direct mapping of the chunks of the given bucket to respective designated block offset positions in the allocated blocks. Persisting the hash table comprises storing first and second chunks of the given bucket in first and second allocated blocks; and
Voigt (US 20150317079 A1), which teaches a technique that includes, in response to a first stream of writes to a first non-volatile memory system, generating a second stream of writes for a second non-volatile memory system; and coordinating replication of data stored in the first non-volatile memory system. The coordinating includes embedding at least one command in the second stream of writes to create a synchronization point for data storage in the second non-volatile memory system in response to at least one corresponding command in the first stream to create a synchronization point for data storage in the first non-volatile memory system.
However, the closest prior art of record does not explicitly teach or render obvious the limitations above, particularly in combination with the other limitations within the claims. The dependent claims are allowable for at least the same reasons as its respective independent claim.
Any comments considered necessary by applicant must be submitted no later than the payment of the issue fee and, to avoid processing delays, should preferably accompany the issue fee. Such submissions should be clearly labeled “Comments on Statement of Reasons for Allowance.”
5. CLOSING COMMENTS
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PRASITH THAMMAVONG whose telephone number is (571) 270-1040. The examiner can normally be reached Monday - Friday 12-8 PM EST.
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, Arpan Savla can be reached on (571) 272-1077. 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.
/PRASITH THAMMAVONG/
Primary Examiner, Art Unit 2137