DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This Office Action is responsive to amendment filed on 11/13/2025. Claim 17 was canceled. Claims 1-16 and 18-24 have been examined and are pending in this application.
Response to Arguments
Applicant's arguments filed 11/13/2025 have been fully considered but they are not persuasive.
Applicant argues, page 9 of the remarks, “[unlike] the present inventions, Baca does not teach the management of logical block addresses and corresponding physical blocks within the same zone. Consequently, Baca does not disclose every limitation of independent claims 1 and 14 because Baca does not disclose the use of free area information regarding the free area within a zone, nor does it use the free area information to secure additional area within the same zone for a write operation.”
The Examiner respectfully disagrees. Baca teaches “[any] suitable pointer/LBA [Logical Block Address] management technology may be utilized to manage the contiguous writes to the NAND media across adjacent zones (e.g., lookup tables, indirection tables, etc.).” Para 0035. That is, when a zone cannot accommodate a write request (i.e., the size of the write request is greater than the available space), Baca secures an adjacent additional zone and continues the write request with the adjacent additional zone. Para 0019. A pointer may be used to link the adjacent additional zone to the zone where the write request was originally directed to. Para 0020. Using a pointer as well as LBA management techniques as described above, the zone and the adjacent additional zone are combined for a contiguous write to the NAND media. Thus, in Baca, “[advantageously], rather than writes failing due to reaching the end of a zone's physical space, the ability to span to the next zone allows the SSD to continue the contiguous write.” Para 0031.
In view of the foregoing remarks, independent claims 1 and 14 are not in a condition for allowance. Claims depending therefrom, either directly or indirectly, are also not in a condition for allowance.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-4, 6-7, 10-16, 18-20, and 23-24 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Baca et al. US 2020/0089407 (“Baca”).
As per independent claim 1, Baca teaches A memory system (“electronic storage system 10” para 0019 and FIG. 1) employing a zoned name space (“a persistent storage device 12 logically organized with a namespace divided into two or more zones” para 0019 and FIG. 1), the memory system comprising:
a memory device including a plurality of physical areas corresponding to each of a plurality of zones (“persistent storage device 12 logically organized with a namespace divided into two or more zones” para 0019 and FIG. 1);
a memory controller (“a controller 11 coupled to the persistent storage device 12” para 0019 and FIG. 1) configured to control the memory device to perform a write operation on the physical areas (“controller 11 may include logic 13 to receive a write request for a first zone” para 0019 and FIG. 1), wherein, when a write request for a target zone is received from a host device, the memory controller determines a size of a physical free area, in which no data is stored, that is included in the target zone of the write request, compares the size of the physical free area and a size of user data requested to be written (“determine if the first zone can accommodate the write request, and span the write request across a second zone of the two or more zones of the namespace if the first zone cannot accommodate the write request.” Para 0019 and FIG. 1. “manage a pointer to link the second zone to the first zone” para 0020), and transmits free area information for an additional free area to be secured in the target zone for a write operation on the user data, to the host device, according to result of the comparison (“the logic 13 may be configured to determine if a zone adjacent to the first zone is uninitialized, and if so determined, to initialize the adjacent zone to provide the second zone, and continue the write request with the second zone. … if the adjacent zone is determined to be already initialized the logic 13 may be further configured to query a host to re-initialize the adjacent zone, … and continue the write request with the second zone.” Para 0019).
As per dependent claim 2, Baca discloses the system of claim 1. Baca teaches wherein the memory controller transmits a first response, including the free area information, corresponding to the write request to the host device when the size of the user data is greater than the size of the physical free area (“If the first zone cannot accommodate the write request, for example, the logic 13 may be configured to determine if a zone adjacent to the first zone is uninitialized, … if the adjacent zone is determined to be already initialized the logic 13 may be further configured to query a host to re-initialize the adjacent zone, … and continue the write request with the second zone.” para 0019).
As per dependent claim 3, Baca discloses the system of claim 2. Baca teaches wherein the first response further includes a failure message indicating that the write operation for the user data is not performed (“With conventional ZNS technology, a write request which goes beyond ZMAX will be rejected and a drive error will be returned.” Para 0033).
As per dependent claim 4, Baca discloses the system of claim 1. Baca teaches wherein the free area information includes a physical write pointer indicating a size of a physical area where data is stored in the target zone (“Write Pointer (WP) <= ZSIZE [Zone Size] && WP > 0” Table 2).
As per dependent claim 6, Baca discloses the system of claim 1. Baca teaches wherein the free area information includes the size of the physical free area (“ZMAX=ZSLBA+ZSIZE” para 0033. Here, in this equation, ZMAX is the maximum zone size, ZSLBA is the starting LBA of the zone, and ZSIZE is the size of the zone).
As per dependent claim 7, Baca discloses the system of claim 1. Baca teaches wherein the free area information includes a size of the additional free area (“ZMAX=ZSLBA+ZSIZE” para 0033. Here, in this equation, ZMAX is the maximum zone size, ZSLBA is the starting LBA of the zone, and ZSIZE is the size of the zone).
As per dependent claim 10, Baca discloses the system of claim 1. Baca teaches wherein the memory controller sequentially performs the write operation for the user data on the physical free area, and updates a physical write pointer of the target zone when the size of the user data is not greater than the size of the physical free area (“ZNS requires the use of sequential data writes in a single zone.” Para 0031).
As per dependent claim 11, Baca discloses the system of claim 10. Baca teaches wherein the physical write pointer includes an address of a last physical area subjected to the write operation among the physical areas in the target zone (“ZMAX=ZSLBA+ZSIZE” para 0033. Here, in this equation, ZMAX is the maximum zone size, ZSLBA is the starting LBA of the zone, and ZSIZE is the size of the zone. Further, Baca teaches “Write Pointer (WP) <= ZSIZE & WP > 0”, Table 2 of Baca. Storing the starting address versus storing the ending address is a design choice).
As per dependent claim 12, Baca discloses the system of claim 10. Baca teaches wherein the memory controller transmits a second response corresponding to the write request, including the updated physical write pointer, to the host device (“Write Pointer (WP) <= ZSIZE & WP > 0”, Table 2).
As per dependent claim 13, Baca discloses the system of claim 12. Baca teaches wherein the second response further includes a success message indicating that the write operation for the user data is successfully performed (“the method 60 may include performing the write to NAND media at block 63 and returning the LBA for the write to the host at block 64.” Para 0036).
As per independent claim 14, Baca teaches A data processing system (“a computing system 100” para 0041) comprising:
a host device (“the logic 170 may include technology to implement the host device/computer system/agent aspects of the various embodiments described herein (e.g., requesting information from the SSD device 130, sending information to the SSD device 130, requesting write operations to the SSD, identifying zones which may be re-initialized, etc.).” para 0050), including a plurality of logical areas corresponding to each of a plurality of zones (“persistent storage device 12 logically organized with a namespace divided into two or more zones” para 0019), configured to allocate a user data to a logical free area of a target zone and to generate a write request for the allocated user data (“a method 60 of controlling storage may include receiving a host write command at block 61 and determining if there is an available LBA to complete the write at block 62.” Para 0036);
a memory system configured to transmit a response, to the host device, indicating that a write operation corresponding to the write request has failed (“embodiments may query the host to identify a suitable zone to continue the write and, based on the host's response, reset the identified zone and continue the write, or return an error if no suitable zone is identified by the host.”), wherein the host device invalidates at least some of valid logical areas included in the target zone (“If the next zone is determined to already be open at block 55 (e.g., not empty), the method 50 may include querying the host to determine if the host allows reset of the next zone at block 57.” Para 0034), according to a comparison result of a size of the logical free area and a size of the user data indicating the size of the user data is greater than the size of the logical free area, when the host device allocates the user data (“If the next zone is determined to already be open at block 55 (e.g., not empty), the method 50 may include querying the host to determine if the host allows reset of the next zone at block 57. If so, the method 50 may include resetting the next zone at block 58, opening the next zone at block 56, and then continuing with performing the write to NAND media at block 53 and returning the LBA to the host at block 54.” Para 0034),
wherein the host device invalidates at least some of the valid logical areas of the target zone based on free area information, and re-allocates the user data to the invalidated logical areas and the logical free area, and re-transmits the write request to the memory system when the response received from the memory system includes the free area information (a method 50 of controlling storage may include receiving a host write command at block 51 and determining if there is an available LBA to complete the write at block 52. … If the next zone is determined to already be open at block 55 (e.g., not empty), the method 50 may include querying the host to determine if the host allows reset of the next zone at block 57. If so, the method 50 may include resetting the next zone at block 58, opening the next zone at block 56, and then continuing with performing the write to NAND media at block 53 and returning the LBA to the host at block 54. Para 0034),
wherein the free area information indicates an additional free area to be secured in the target zone for the write operation for the user data (“If the next zone is determined to already be open at block 55 (e.g., not empty), the method 50 may include querying the host to determine if the host allows reset of the next zone at block 57.” Para 0034 and FIG. 5).
As per dependent claim 15, Baca discloses the system of claim 14. Baca teaches wherein the host device invalidates at least some of the valid logical areas of the target zone and allocates the user data to the invalidated logical areas and the logical free area when the size of the user data is greater than the size of the logical free area (“Zones must be explicitly reset to allow overwrites;” para 0032).
As per dependent claim 16, Baca discloses the system of claim 14. Baca teaches wherein the host device allocates the user data to the logical free area when the size of the user data is not greater than the size of the logical free area (“the method 60 may include performing the write to NAND media at block 63 and returning the LBA for the write to the host at block 64.” Para 0036).
As per dependent claim 18, Baca discloses the system of claim 14. Baca teaches wherein the response further includes a failure message indicating that the write operation is not performed (“With conventional ZNS technology, a write request which goes beyond ZMAX will be rejected and a drive error will be returned.” Para 0033).
As per dependent claim 19, Baca discloses the system of claim 14. Baca teaches wherein, when the response received from the memory system includes a physical write pointer reflecting the write operation, the host device updates a logical write pointer of the target zone based on the physical write pointer (“the method 60 may include performing the write to NAND media at block 63 and returning the LBA for the write to the host at block 64.” Para 0036).
As per dependent claim 20, Baca discloses the system of claim 14. Baca teaches wherein the host device calculates the size of the logical free area based on a logical write pointer indicating a logical area to which data is allocated and a size of the target zone (“ZMAX=ZSLBA+ZSIZE” para 0033. Here, in this equation, ZMAX is the maximum zone size, ZSLBA is the starting LBA of the zone, and ZSIZE is the size of the zone. Further, Baca teaches “Write Pointer (WP) <= ZSIZE & WP > 0”, Table 2 of Baca).
As per dependent claims 23-24, these claims are respectively rejected based on arguments provided above for similar rejected dependent claims 6-7.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 5, 8-9, and 21-22 are rejected under 35 U.S.C. 103 as being unpatentable over Baca.
As per dependent claim 5, Baca discloses the system of claim 4. Baca does not explicitly teach “wherein the free area information includes a sum of the physical write pointer and the size of the user data”.
However, Baca teaches “ZMAX=ZSLBA+ZSIZE” para 0033. Here, in this equation, ZMAX is the maximum zone size, ZSLBA is the starting LBA of the zone, and ZSIZE is the size of the zone. Therefore, it would have been obvious to try to substitute for the ZSLBA and ZSIZE respectively the current write pointer (taught in Table 2 of Baca) and the size of the user data.
Hence, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to further modify the scope of the invention of Baca with “wherein the free area information includes a sum of the physical write pointer and the size of the user data”. The substitution will yield predictable result as would be understood by those of ordinary skill in the art.
As per dependent claim 8, Baca discloses the system of claim 4. Baca does not explicitly teach “wherein the memory controller calculates the size of the physical free area by subtracting the physical write pointer from a size of the target zone when the write request is a normal type”.
However, Baca teaches “ZMAX=ZSLBA+ZSIZE” para 0033. Here, in this equation, ZMAX is the maximum zone size, ZSLBA is the starting LBA of the zone, and ZSIZE is the size of the zone. Further, Baca teaches “Write Pointer (WP) <= ZSIZE & WP > 0”, Table 2 of Baca.
Hence, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to further modify the scope of the invention of Baca with “wherein the memory controller calculates the size of the physical free area by subtracting the physical write pointer from a size of the target zone when the write request is a normal type”. The modification would yield predictable result as would be understood by those of ordinary skill in the art.
As per dependent claim 9, Baca discloses the system of claim 4. Baca does not explicitly teach “wherein the memory controller calculates the size of the physical free area by subtracting a size of a physical block requested for overwriting from the physical write pointer when the write request is an overwrite type”.
However, Baca teaches “ZMAX=ZSLBA+ZSIZE” para 0033. Here, in this equation, ZMAX is the maximum zone size, ZSLBA is the starting LBA of the zone, and ZSIZE is the size of the zone. Further, Baca teaches “Write Pointer (WP) <= ZSIZE & WP > 0”, Table 2 of Baca. Still further, Baca teaches “Zones must be explicitly reset to allow overwrites;” para 0032 of Baca.
Hence, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to further modify the scope of the invention of Baca with “wherein the memory controller calculates the size of the physical free area by subtracting a size of a physical block requested for overwriting from the physical write pointer when the write request is an overwrite type”. The modification would yield predictable result as would be understood by those of ordinary skill in the art.
As per dependent claims 21-22, these claims are rejected based on arguments provided above for similar rejected dependent claim 5.
Conclusion
THIS ACTION IS MADE FINAL. 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 ZUBAIR AHMED whose telephone number is (571)272-1655. The examiner can normally be reached 7:30AM - 5:00PM 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, HOSAIN T. ALAM can be reached at (571) 272-3978. 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.
/ZUBAIR AHMED/Examiner, Art Unit 2132
/HOSAIN T ALAM/Supervisory Patent Examiner, Art Unit 2132