Prosecution Insights
Last updated: July 17, 2026
Application No. 18/961,446

CONTROLLER, MEMORY SYSTEM INCLUDING CONTROLLER, AND METHOD OF OPERATING MEMORY SYSTEM

Final Rejection §101§103§112
Filed
Nov 27, 2024
Priority
May 29, 2024 — RE 10-2024-0070122
Examiner
PHAM, KAITLYN HUNG
Art Unit
2133
Tech Center
2100 — Computer Architecture & Software
Assignee
SK hynix Inc.
OA Round
2 (Final)
100%
Grant Probability
Favorable
3-4
OA Rounds
7m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 100% — above average
100%
Career Allowance Rate
3 granted / 3 resolved
+45.0% vs TC avg
Minimal +0% lift
Without
With
+0.0%
Interview Lift
resolved cases with interview
Typical timeline
2y 3m
Avg Prosecution
18 currently pending
Career history
24
Total Applications
across all art units

Statute-Specific Performance

§101
2.7%
-37.3% vs TC avg
§103
84.0%
+44.0% vs TC avg
§102
2.7%
-37.3% vs TC avg
§112
10.7%
-29.3% vs TC avg
Black line = Tech Center average estimate • Based on career data from 3 resolved cases

Office Action

§101 §103 §112
DETAILED ACTION Claims 1-17 are presented for examination. This office action is in response to amendment of application on 19-FEB-2026. Claims 1, 4, 6, 7, 10, 11, 13-16 are amended. Claims 1-17 remain pending. 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 . Response to Arguments Applicant’s arguments, see pages 12, 15-16, filed 19-FEB-2026, with respect to the objection to claim 1 and rejections under 35 U.S.C. 112 have been fully considered and are persuasive due to amendment. The objection to claim 1 and rejections under 35 U.S.C. 112 have been withdrawn. Applicant's arguments filed 19-FEB-2026 have been fully considered but they are not persuasive. 35 U.S.C 101: 1. Regarding Applicant’s arguments that operations such as storing a reference capacity and outputting an address cannot be performed as mental activities, Examiner agrees, but does not find this point convincing for subject matter eligibility. In particular, the Subject Matter Eligibility test involves determining whether the claim as a whole is directed to a judicial exception without significantly more (emphasis added). Notably, in Step 2A Prong One, the Examiner identifies any judicial exception that is recited at all, before proceeding onto Step 2A Prong Two and Step 2B, where additional elements (elements that are not themselves judicial exceptions) are examined to determine if they, individually or in combination with other elements, provide an integration into a practical application or present an inventive step that is significantly more than the judicial exceptions. As it pertains to Applicant’s arguments, the test for subject matter eligibility does not test whether every single element of the claim recites the same grouping of judicial exception, or whether every element recites judicial exceptions at all, and the mere existence of claim elements not performable in the mind does not preclude the claim from being directed to the mental processes grouping of abstract ideas. Instead, the subject matter eligibility test treats these elements as Additional Elements, to be examined for an integration into a practical application, or a separate inventive step. See MPEP 2106.04(II)(A)(1)/(II)(A)(2). 2. Regarding Applicant’s arguments that the block selector would be construed as a concrete device component, Examiner agrees, but does not consider this to be convincing in determining subject matter eligibility. MPEP 2106.04(a)(2)(III) states “Nor do the courts distinguish between claims that recite mental processes performed by humans and claims that recite mental processes performed on a computer… Claims can recite a mental process even if they are claimed as being performed on a computer.” That is, the mere fact that the claim recites a block selector performing the mental process limitations does not preclude limitations from being considered mental processes. In other words, if the claimed function can be practically performed in the mind, it can be considered a mental process limitation despite what particular component is performing it. 3. Regarding Applicant’s arguments that the claims are eligible because they are directed to an improvement to the technology reflecting [0066] of the Applicant’s disclosure, Examiner respectfully disagrees. Examiner notes that the test for whether a claim is directed to an improvement to the technology requires specific conditions outlined in MPEP 2106.05(a) to be met. Notably, that an improvement being set forth in a merely conclusory manner is insufficient to conclude an improvement in the technology. Instead, the subject matter eligibility test requires that the specification includes a detailed description of a particular solution to a problem or particular way to achieve the desired outcome, and that the claim includes the components or steps of the invention that provide the improvement described in the specification. Examiner asserts that [0066] of the instant specification amounts to setting forth the improvement in a conclusory manner, as there is insufficient detail necessary for an improvement to be apparent at this point of the specification. Instead, Examiner considers the process outlined in Fig. 8 and [0071-0091] to be what provides the detailed discussion of the particular solution which provides the reduction in the pieces of error data during a read operation. Examiner notes that the claim, however, does not fully reflect the process by which the stated improvement is achieved. For example, the process outlined in the specification specifically sets forth a reference capacity being set based on number of pieces of error data occurring during a read operation (see [0071]). One of ordinary skill in the art would understand the desired reduction in the number of pieces of error data to be reliant on the reference capacity being set according to a capacity that is correlated in some way to an elevated number of pieces of error data. In contrast, the claim sets a reference capacity based on a specific capacity of data programmed to the memory blocks. Without that detail from the specification, the broadest reasonable interpretation of the claim element only requires the reference capacity be set to any arbitrary capacity with no regard to the described problem or desired outcome. Examiner asserts that the claim does not reflect the conditions that provide the desired outcome of the process described in the specification, and therefore, the claim is not directed to the improvement to the technology outlined in the specification. 35 U.S.C. 102 & 35 U.S.C. 103: 1. Regarding Applicant’s arguments that the prior art contrasts with [0071] of the instant specification, Examiner notes that the features upon which applicant relies (i.e., the specifics of what the reference capacity represents) are not recited in the rejected claim(s). Although the claims are interpreted in light of the specification, limitations from the specification are not read into the claims. See In re Van Geuns, 988 F.2d 1181, 26 USPQ2d 1057 (Fed. Cir. 1993). 2. Regarding Applicant's argument that the prior art references do not disclose or suggest an effect of reducing the time required for a read operation, Examiner notes that the feature of providing an effect of reducing the time required for a read operation is not recited in the claim, and even if it were in the claim, a recitation of the intended use of the claimed invention must result in a structural difference between the claimed invention and the prior art in order to patentably distinguish the claimed invention from the prior art. If the prior art structure is capable of performing the intended use, then it meets the claim. For the reasons above, Applicant’s arguments rely on aspects of the invention that are not required within the broadest reasonable interpretation of the claims, and Examiner asserts that the references do not fail to fall within the broadest reasonable interpretation of the claims as drafted. Examiner notes that while not argued, since some amendments to the claims overcome the prior office action’s prior art rejections, the rejections are withdrawn and, upon further consideration, new grounds of rejection are made in view of newly found prior art references to address the amendments. 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 16, 17 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. Claim 16 recites the limitation "the host" in line 15. There is insufficient antecedent basis for this limitation in the claim. Claim 17 is dependent on claim 16, inherits the deficiency of claim 16, and is therefore rejected for the same reasons. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-17 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. Claims 1-6 (Statutory Category - Machine) Step 2A – Prong 1: Judicial Exception Recited? Claim 1 recites the reference capacity is set based on a specific capacity of data programmed to the memory blocks, compare a capacity of data stored in a buffer memory with a reference capacity, search for a free status block in response to the capacity of data stored exceeding the reference capacity, select the free status block as a selected memory block when the free status block is present, and The limitation of the reference capacity is set based on a specific capacity of data programmed to the memory blocks, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “a block selector configured to”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “a block selector configured to” language, “the reference capacity is set based on a specific capacity of data programmed to the memory blocks” in the context of this claim encompasses the user mentally selecting a number to consider the reference capacity. The limitation of compare a capacity of data stored in a buffer memory with a reference capacity, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “a block selector configured to”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “a block selector configured to” language, “compare a capacity of data stored in a buffer memory with a reference capacity” in the context of this claim encompasses the user mentally comparing one given number with a predetermined number, and is both a mental process and a mathematical operation. The limitation of search for a free status block in response to the capacity of data stored exceeding the reference capacity, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “a block selector configured to”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “a block selector configured to” language, “search for a free status block in response to the capacity of data stored exceeding the reference capacity” in the context of this claim encompasses the user observing a list of blocks with the intention of finding a free status block. The limitation of select the free status block as a selected memory block when the free status block is present, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “a block selector configured to”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “a block selector configured to” language, “select the free status block as a selected memory block when the free status block is present” in the context of this claim encompasses the user using the result of the search to properly designate one free status block as a selected block.. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea. Step 2A – Prong 2: Integrated into a Practical Application? This judicial exception is not integrated into a practical application. In particular, the claim additionally recites a block selector configured to. The block selector is recited at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer component (see MPEP 2106.05(f)). Additionally, other elements recite a programmed capacity table including information on a capacity of data programmed to memory blocks included in a memory device; store a reference capacity; output an address of the selected memory block; and a command generator configured to output a command for programming the data stored in the buffer memory to the selected memory block. The table including information on a capacity of data programmed to memory blocks, storing a reference capacity outputting an address of a selected block, and a command generator that outputs commands for programming data to a selected block are insignificant extra-solution activity, as they recite known operations and features at a high level of generality. The additional elements do not meaningfully limit how the mental process is performed or how it is used in a solution (see MPEP 2106.05(g)). Accordingly, the additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. Step 2B: Claim provides an Inventive Concept? The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to Step 2A, the additional limitations are instructions to apply the judicial exception to generic computer components, and insignificant extra-solution activity and don’t impose any meaningful limits on practicing the abstract idea. Further, in regards to Step 2B, the additional computer functions have been recognized to be well-understood, routine, and conventional functions when they are claimed in a merely generic manner or as insignificant extra-solution activity (see MPEP 2106.05(d)(II)). The additional element of using a block selector to perform the comparing and selecting are mere instructions to apply the judicial exception using generic computer components, and cannot provide an inventive concept. The additional element of including information on a capacity of data programmed to memory blocks in a memory device on a programmed capacity table covers well-understood, routine, and conventional functions known in the art, as shown by So et al., U.S. Pub. No. 20110167208; BOITEI, U.S. Pub. No. 20170052719; and Shaharabany et al., U.S. Patent No. 9747202, which is recited in a merely generic manner, and does not provide an inventive concept. The additional element of outputting an address of a selected memory block covers well-understood, routine, and conventional functions known in the art, as shown by HAN, U.S. Pub. No. 20020013879; Lee et al., U.S. Pub. No. 20130097365; and AMAKI et al., U.S. Pub. No. 20190079861. The additional elements of storing a reference capacity, outputting a command for programming data to a selected memory block covers well-understood, routine, and conventional functions of storing data in memory (see MPEP 2106.05(d)(II)(iv)), which is recited in a merely generic manner, and does not provide an inventive concept. The additional elements have been considered both individually and as an ordered combination in the significantly more consideration. The claim is ineligible. Claim 2 recites: The controller according to claim 1, wherein the buffer memory includes at least one of a dynamic RAM (DRAM), a static RAM (SRAM), and a NAND flash memory. The limitations merely limit a component of the controller to one of many known broad and generic memory types, and does not integrate the judicial exceptions into a practical application or amount to significantly more. Claim 3 recites: The controller according to claim 1, wherein the programmed capacity table includes information on a capacity of data programmed to each of the memory blocks. The table including information on a capacity of data programmed to each block merely limits a generic insignificant extra-solution activity step in a way that the step remains insignificant extra-solution activity and does not integrate the step into a practical application or amount to significantly more. Claim 4 recites: The controller according to claim 1, wherein, when the capacity of the data is greater than the reference capacity and no memory block designated as the free status block is present among the memory blocks, the block selector is configured to select a memory block designated as an open status block. The limitation merely limits the particular conclusion of a mental step under particular conditions, and is part of the judicial exceptions. Claim 5 recites: The controller according to claim 1, wherein the reference capacity is set to a value less than a total capacity of one of the memory blocks. The limitation is merely limiting a particular range of a value used in the mental process, and is part of the judicial exceptions. Claim 6 recites: The controller according to claim 1, wherein the block selector is configured to select a memory block having a largest programmable space from among the memory blocks designated as an open status block. The limitation is merely limiting the conclusion of a mental step, and is part of the judicial exceptions. Claims 7-10 (Statutory Category - Machine) Step 2A – Prong 1: Judicial Exception Recited? Claim 7 recites the reference capacity is set based on a specific capacity of data programmed to the memory blocks, compare a capacity of data stored in a buffer memory with a reference capacity, search for a free status block in response to the capacity of data stored exceeding the reference capacity, select the free status block as a selected memory block when the free status block is present, and The limitation of the reference capacity is set based on a specific capacity of data programmed to the memory blocks, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “the controller is configured to”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “the controller is configured to” language, “the reference capacity is set based on a specific capacity of data programmed to the memory blocks” in the context of this claim encompasses the user mentally selecting a number to consider the reference capacity. The limitation of compare a capacity of data stored in a buffer memory with a reference capacity, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “the controller is configured to”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “the controller is configured to” language, “compare a capacity of data stored in a buffer memory with a reference capacity” in the context of this claim encompasses the user mentally comparing one given number with a predetermined number, and is both a mental process and a mathematical operation. The limitation of search for a free status block in response to the capacity of data stored exceeding the reference capacity, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “the controller is configured to”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “the controller is configured to” language, “search for a free status block in response to the capacity of data stored exceeding the reference capacity” in the context of this claim encompasses the user observing a list of blocks with the intention of finding a free status block. The limitation of select the free status block as a selected memory block when the free status block is present, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components. That is, other than reciting “the controller is configured to”, nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “the controller is configured to” language, “select the free status block as a selected memory block when the free status block is present” in the context of this claim encompasses the user using the result of the search to properly designate one free status block as a selected block.. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea. Step 2A – Prong 2: Integrated into a Practical Application? This judicial exception is not integrated into a practical application. In particular, the claim additionally recites the controller is configured to. The controller is recited at a high level of generality such that it amounts to no more than mere instructions to apply the exception using a generic computer component (see MPEP 2106.05(f)). Additionally, other elements recite a memory device including memory blocks; and a controller configured to control the memory device in response to a request from a host which is merely generally linking the use of the judicial exception to a particular technological environment, and does not meaningfully limit how the mental process is performed or how it is used in a practical solution (see MPEP 2106.05(h)). Additionally, other elements recite a programmed capacity table including information on a capacity of data programmed to memory blocks included in a memory device; store a reference capacity, output an address of the selected memory block;. The table including information on a capacity of data programmed to memory blocks, storing a reference capacity, and outputting an address of a selected block are insignificant extra-solution activity, as they recite known operations and features at a high level of generality. The additional elements do not meaningfully limit how the mental process is performed or how it is used in a solution (see MPEP 2106.05(g)). Accordingly, the additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. Step 2B: Claim provides an Inventive Concept? The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to Step 2A, the additional limitations are instructions to apply the judicial exception to generic computer components, generally linking the judicial exception to a particular technological environment, and insignificant extra-solution activity and don’t impose any meaningful limits on practicing the abstract idea. Further, in regards to Step 2B, the additional computer functions have been recognized to be well-understood, routine, and conventional functions when they are claimed in a merely generic manner or as insignificant extra-solution activity (see MPEP 2106.05(d)(II)). The additional element of using a controller to perform the comparing and selecting are mere instructions to apply the judicial exception using generic computer components, and cannot provide an inventive concept. The additional elements of a memory device with blocks and a controller which controls the memory device in response to a request from a host which is merely generally linking the use of the judicial exception to a particular technological environment, and cannot provide an inventive concept. The additional element of including information on a capacity of data programmed to memory blocks in a memory device on a programmed capacity table covers well-understood, routine, and conventional functions known in the art, as shown by So et al., U.S. Pub. No. 20110167208; BOITEI, U.S. Pub. No. 20170052719; and Shaharabany et al., U.S. Patent No. 9747202, which is recited in a merely generic manner, and does not provide an inventive concept. The additional element of outputting an address of a selected memory block covers well-understood, routine, and conventional functions known in the art, as shown by HAN, U.S. Pub. No. 20020013879; Lee et al., U.S. Pub. No. 20130097365; and AMAKI et al., U.S. Pub. No. 20190079861. The additional element of storing a reference capacity, outputting a command for programming data to a selected memory block covers well-understood, routine, and conventional functions of storing data in memory (see MPEP 2106.05(d)(II)(iv)), which is recited in a merely generic manner, and does not provide an inventive concept. The additional elements have been considered both individually and as an ordered combination in the significantly more consideration. The claim is ineligible. Claim 8 recites: The memory system according to claim 7, wherein the reference capacity is set to a value less than a total capacity of one of the memory blocks included in the memory device. The limitation is merely limiting a particular range of a value used in the mental process, and is part of the judicial exceptions. Claim 9 recites: The memory system according to claim 7, wherein the controller is configured to, when the capacity of the data is greater than the reference capacity, select one of the memory blocks designated as the free status block. The limitation merely limits the particular conclusion of a mental step under particular conditions, and is part of the judicial exceptions. Claim 10 recites: The memory system according to claim 7, wherein the controller is configured to, when the capacity of the data is less than the reference capacity, select one of the memory blocks designated as an open status block. The limitation merely limits the particular conclusion of a mental step under particular conditions, and is part of the judicial exceptions. Claims 11-15 (Statutory Category - Method) Step 2A – Prong 1: Judicial Exception Recited? Claim 11 recites the reference capacity is set based on a specific capacity of data programmed to the memory blocks, comparing a capacity of data stored in a buffer memory with a reference capacity, searching for a free status block in response to the capacity of data stored exceeding the reference capacity, selecting the free status block as a selected memory block when the free status block is present, and The limitation of the reference capacity is set based on a specific capacity of data programmed to the memory blocks, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “the reference capacity is set based on a specific capacity of data programmed to the memory blocks” in the context of this claim encompasses the user mentally selecting a number to consider the reference capacity. The limitation of comparing a capacity of data stored in a buffer memory with a reference capacity, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “comparing a capacity of data stored in a buffer memory with a reference capacity” in the context of this claim encompasses the user mentally comparing one given number with a predetermined number, and is both a mental process and a mathematical operation. The limitation of searching for a free status block in response to the capacity of data stored exceeding the reference capacity, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “searching for a free status block in response to the capacity of data stored exceeding the reference capacity” in the context of this claim encompasses the user observing a list of blocks with the intention of finding a free status block. The limitation of selecting the free status block as a selected memory block when the free status block is present, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “selecting the free status block as a selected memory block when the free status block is present” in the context of this claim encompasses the user using the result of the search to properly designate one free status block as a selected block.. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea. Step 2A – Prong 2: Integrated into a Practical Application? This judicial exception is not integrated into a practical application. In particular, the claim additionally recites a memory system including a memory device including memory blocks and a controller configured to control the memory device which is merely generally linking the use of the judicial exception to a particular technological environment, and does not meaningfully limit how the mental process is performed or how it is used in a practical solution (see MPEP 2106.05(h)). Additionally, other elements recite storing a reference capacity, outputting an address of the selected memory block; and programming, by the memory device, the data to the selected memory block based on the address and a command received from the controller. The storing a reference capacity, outputting an address of a selected block, and programming data to a selected block are insignificant extra-solution activity, as they recite known operations and features at a high level of generality. The additional elements do not meaningfully limit how the mental process is performed or how it is used in a solution (see MPEP 2106.05(g)). Accordingly, the additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. Step 2B: Claim provides an Inventive Concept? The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to Step 2A, the additional limitations are generally linking the judicial exception to a particular technological environment, and insignificant extra-solution activity and don’t impose any meaningful limits on practicing the abstract idea. Further, in regards to Step 2B, the additional computer functions have been recognized to be well-understood, routine, and conventional functions when they are claimed in a merely generic manner or as insignificant extra-solution activity (see MPEP 2106.05(d)(II)). The additional elements of a memory device with blocks and a controller which controls the memory device is merely generally linking the use of the judicial exception to a particular technological environment, and cannot provide an inventive concept. The additional element of outputting an address of a selected memory block covers well-understood, routine, and conventional functions known in the art, as shown by HAN, U.S. Pub. No. 20020013879; Lee et al., U.S. Pub. No. 20130097365; and AMAKI et al., U.S. Pub. No. 20190079861. The additional elements of storing a reference capacity, and outputting a command for programming data to a selected memory block covers well-understood, routine, and conventional functions of storing data in memory (see MPEP 2106.05(d)(II)(iv)), which is recited in a merely generic manner, and does not provide an inventive concept. The additional elements have been considered both individually and as an ordered combination in the significantly more consideration. The claim is ineligible. Claim 12 recites: The method according to claim 11, wherein the reference capacity is set to a value less than a total capacity of one of the memory blocks. The limitation is merely limiting a particular range of a value used in the mental process, and is part of the judicial exceptions. Claim 13 recites: The method according to claim 11, wherein the selected memory block is a memory block having the largest programmable space, among the memory blocks designated as an open status block. The limitation merely limits the particular conclusion of a mental step under particular conditions, and is part of the judicial exceptions. Claim 14 recites: The method according to claim 11, wherein, when the capacity of the data is greater than the reference capacity, the selected memory block is one of memory blocks designated as the free status block. The limitation merely limits the particular conclusion of a mental step under particular conditions, and is part of the judicial exceptions. Claim 15 recites: The method according to claim 11, wherein, when the capacity of the data is less than the reference capacity, the selected memory block is one of memory blocks designated as an open status block. The limitation merely limits the particular conclusion of a mental step under particular conditions, and is part of the judicial exceptions. Claims 16-17 (Statutory Category - Method) Step 2A – Prong 1: Judicial Exception Recited? Claim 16 recites the reference capacity is set based on a specific capacity of data programmed to the memory blocks, comparing a capacity of data stored in a buffer memory with a reference capacity, searching for a free status block in response to the capacity of data stored exceeding the reference capacity, selecting the free status block as a selected memory block when the free status block is present, when the capacity of data transmitted from the host is less than the reference capacity, the selected memory block is one of memory blocks designated as an open status block The limitation of the reference capacity is set based on a specific capacity of data programmed to the memory blocks, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “the reference capacity is set based on a specific capacity of data programmed to the memory blocks” in the context of this claim encompasses the user mentally selecting a number to consider the reference capacity. The limitation of comparing a capacity of data stored in a buffer memory with a reference capacity, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “comparing a capacity of data stored in a buffer memory with a reference capacity” in the context of this claim encompasses the user mentally comparing one given number with a predetermined number, and is both a mental process and a mathematical operation. The limitation of searching for a free status block in response to the capacity of data stored exceeding the reference capacity, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “searching for a free status block in response to the capacity of data stored exceeding the reference capacity” in the context of this claim encompasses the user observing a list of blocks with the intention of finding a free status block. The limitation of selecting the free status block as a selected memory block when the free status block is present, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “selecting the free status block as a selected memory block when the free status block is present” in the context of this claim encompasses the user using the result of the search to properly designate one free status block as a selected block. The limitation of when the capacity of data transmitted from the host is less than the reference capacity, the selected memory block is one of memory blocks designated as an open status block, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim element precludes the step from practically being performed in the mind. For example, “when the capacity of data transmitted from the host is less than the reference capacity, the selected memory block is one of memory blocks designated as an open status block” in the context of this claim encompasses the user using a result of the comparison to make an alternative selection. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea. Step 2A – Prong 2: Integrated into a Practical Application? This judicial exception is not integrated into a practical application. In particular, the claim additionally recites a memory system including a memory device including memory blocks and a controller configured to control the memory device which is merely generally linking the use of the judicial exception to a particular technological environment, and does not meaningfully limit how the mental process is performed or how it is used in a practical solution (see MPEP 2106.05(h)). Additionally, other elements recite storing a reference capacity, outputting an address of the selected memory block; and programming, by the memory device, the data to the selected memory block based on the address and a command received from the controller. The storing a reference capacity outputting an address of a selected block, and programming data to a selected block are insignificant extra-solution activity, as they recite known operations and features at a high level of generality. The additional elements do not meaningfully limit how the mental process is performed or how it is used in a solution (see MPEP 2106.05(g)). Accordingly, the additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. Step 2B: Claim provides an Inventive Concept? The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to Step 2A, the additional limitations are generally linking the judicial exception to a particular technological environment, and insignificant extra-solution activity and don’t impose any meaningful limits on practicing the abstract idea. Further, in regards to Step 2B, the additional computer functions have been recognized to be well-understood, routine, and conventional functions when they are claimed in a merely generic manner or as insignificant extra-solution activity (see MPEP 2106.05(d)(II)). The additional elements of a memory device with blocks and a controller which controls the memory device is merely generally linking the use of the judicial exception to a particular technological environment, and cannot provide an inventive concept. The additional element of outputting an address of a selected memory block covers well-understood, routine, and conventional functions known in the art, as shown by HAN, U.S. Pub. No. 20020013879; Lee et al., U.S. Pub. No. 20130097365; and AMAKI et al., U.S. Pub. No. 20190079861. The additional elements of storing a reference capacity and outputting a command for programming data to a selected memory block covers well-understood, routine, and conventional functions of storing data in memory (see MPEP 2106.05(d)(II)(iv)), which is recited in a merely generic manner, and does not provide an inventive concept. The additional elements have been considered both individually and as an ordered combination in the significantly more consideration. The claim is ineligible. Claim 17 recites: The method according to claim 16, wherein the reference capacity is set to a value less than a total capacity of one of the memory blocks. The limitation is merely limiting a particular range of a value used in the mental process, and is part of the judicial exceptions. 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 1-3, 5, 7-12, 14-17 are rejected under 35 U.S.C. 103 as being unpatentable over Lee et al., U.S. Pub. No. 20130097365 (hereinafter “Lee”) in view of BOITEI, U.S. Pub. No. 20170052719 (hereinafter “Boitei”) further in view of KIM, U.S. Pub. No. 20220236914 (hereinafter “Kim”). Regarding claim 1: Lee teaches A controller comprising: a programmed capacity table including information on a capacity of data programmed to memory blocks included in a memory device; ([0024], Lee teaches a table of open blocks or blocks available for storage of additional data. The table having open blocks is interpreted to be the claimed programmed capacity table including information on a capacity of data programmed to memory blocks.). a block selector configured to… compare a capacity of data to be written with the reference capacity, search for a free status block in response to the capacity of data stored exceeding the reference capacity, select the free status block as a selected memory block when the free status block is present, and (Fig. 5 and [0050-0057], Lee teaches a process by which a controller receives a write request and determines if an open block is available to write the data into. The determination involves selecting if an open block that can write the data exists, and if not, selecting a new unused block to store the data instead. Furthermore, in [0048], Lee teaches an embodiment where if the remaining free space in an open block is not large enough to perform a write operation, ie. the data to be written exceeds a reference capacity, the memory controller may open a different block. Combining the ideas, Lee teaches a block selector that compares the capacity of data to be written by referencing the capacity available to write, and selects an unused free block when the capacity exceeds the reference capacity.) output an address of the selected memory block; and a command generator configured to output a command for programming the data to be programmed to the selected memory block. ([0055] and [0057], Lee teaches that when a block is selected, the controller writes the data to the block selected as part of the determinations. Since the controller writes to a particular targeted block in the memory, the outputting of a write with a targeted block is interpreted to be the outputting the address and outputting a command of a selected memory block for programming the data.) While Lee teaches tables that store capacity information of open blocks, Lee does not appear to explicitly disclose store a reference capacity, wherein the reference capacity is set based on a specific capacity of data programmed to the memory blocks. However, Boitei teaches store a reference capacity, wherein the reference capacity is set based on a specific capacity of data programmed to the memory blocks. ([0032], Boitei teaches that a storage drive may have a page map table which represents the memory status including an amount of valid/invalid and free pages for each memory block, which means that there is a stored reference capacity set based on a specific capacity of data programmed to the memory blocks.). Lee and Boitei are analogous art because they are from the same field of endeavor, memory system management. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee and Boitei to achieve the combined result of the memory system which uses a table which includes information on a capacity of data programmed to each memory block in the device. One of ordinary skill in the art would have been motivated to make this modification in order to facilitate operations that would require information about the status of each block, such as GC, as discussed in Boitei [0030-0031], which also suits the needs of Lee to determine if there is enough remaining free space in a block to write to, as discussed in Lee [0048]. While Lee broadly talks about the amount of data being written being part of the process, Lee/Boitei does not appear to explicitly disclose a capacity of write data stored in a buffer memory. However, Kim teaches a capacity of write data stored in a buffer memory ([0076], Kim teaches that a controller may store program data of a program command in a buffer/cache, and then later storing the data in the buffer/cache into the memory blocks. Kim also teaches that the location in the memory device where a controller may store program data may be any of an empty memory block, an open memory block, or free memory block.). Lee/Boitei and Kim are analogous art because they are from the same field of endeavor, memory management systems. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee/Boitei and Kim to achieve the result of a controller with a programmed capacity table including information on a capacity of data programmed to memory blocks included in a memory device, which compares the capacity of data stored in a buffer memory with a reference capacity to select either free blocks or open blocks, with the command generator configured to output the command for programming the data in the buffer memory into the selected memory block. One of ordinary skill in the art would have been motivated to make this modification in order to support operations performed by the memory system and the controller by storing temporary or transactional data for performing normal operations as discussed in Kim [0068]. Regarding claim 2: The combination of Lee, Boitei, and Kim teaches all limitations of claim 1, from which claim 2 depends. Lee/Boitei/Kim further teaches the buffer memory includes at least one of a dynamic RAM (DRAM), a static RAM (SRAM), and a NAND flash memory ([0068-0069], Kim teaches that a memory, which contains the buffer, may be a DRAM or SRAM). One of ordinary skill in the art would have been motivated to make this modification as they are one of many possible well-known memory technologies as shown in Kim [0051]. Regarding claim 3: The combination of Lee, Boitei, and Kim teaches all limitations of claim 1, from which claim 3 depends. Lee/Boitei/Kim further teaches the programmed capacity table includes information on a capacity of data programmed to each of the memory blocks. ([0032], Boitei teaches that a storage drive may have a page map table which represents the memory status including an amount of valid/invalid and free pages for each memory block.). One of ordinary skill in the art would have ben motivated to make this modification for the same reasons as in claim 1. Regarding claim 5: The combination of Lee, Boitei, and Kim teaches all limitations of claim 1, from which claim 5 depends. Lee/Boitei/Kim further teaches the reference capacity is set to a value less than a total capacity of one of the memory blocks. ([0043], Lee teaches that an open block, is a block that has been programmed with partial data, and is available for storing additional data. As discussed with respect to claim 1, the reference capacity is interpreted to be the space for additional writing in a block, and in the case of an open block, would be less than the total capacity of the block, as part of the block is already in use.). Regarding claim 7: Lee teaches A memory system comprising: a memory device including memory blocks; and ([0004], Lee teaches that a typical flash memory architecture arranges groups of cells into blocks.) a controller configured to control the memory device in response to a request from a host, wherein the controller is configured to ([0026], Lee teaches a memory controller that includes various elements that manage various part of the operation of a flash memory system, including a translation when a host sends particular addresses.). compare a capacity of data to be written with the reference capacity, search for a free status block in response to the capacity of data stored exceeding the reference capacity, select the free status block as a selected memory block when the free status block is present, and (Fig. 5 and [0050-0057], Lee teaches a process by which a controller receives a write request and determines if an open block is available to write the data into. The determination involves selecting if an open block that can write the data exists, and if not, selecting a new unused block to store the data instead. Furthermore, in [0048], Lee teaches an embodiment where if the remaining free space in an open block is not large enough to perform a write operation, ie. the data to be written exceeds a reference capacity, the memory controller may open a different block. Combining the ideas, Lee teaches a block selector that compares the capacity of data to be written by referencing the capacity available to write, and selects an unused free block when the capacity exceeds the reference capacity.) output an address of the selected memory block; ([0055] and [0057], Lee teaches that when a block is selected, the controller writes the data to the block selected as part of the determinations. Since the controller writes to a particular targeted block in the memory, the outputting of a write with a targeted block is interpreted to be the outputting the address of a selected memory block for programming the data.) While Lee teaches tables that store capacity information of open blocks, Lee does not appear to explicitly disclose store a reference capacity, wherein the reference capacity is set based on a specific capacity of data programmed to the memory blocks. However, Boitei teaches store a reference capacity, wherein the reference capacity is set based on a specific capacity of data programmed to the memory blocks. ([0032], Boitei teaches that a storage drive may have a page map table which represents the memory status including an amount of valid/invalid and free pages for each memory block, which means that there is a stored reference capacity set based on a specific capacity of data programmed to the memory blocks.). Lee and Boitei are analogous art because they are from the same field of endeavor, memory system management. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee and Boitei to achieve the combined result of the memory system which uses a table which includes information on a capacity of data programmed to each memory block in the device. One of ordinary skill in the art would have been motivated to make this modification in order to facilitate operations that would require information about the status of each block, such as GC, as discussed in Boitei [0030-0031], which also suits the needs of Lee to determine if there is enough remaining free space in a block to write to, as discussed in Lee [0048]. While Lee broadly talks about the amount of data being written being part of the process, Lee/Boitei does not appear to explicitly disclose a capacity of write data stored in a buffer memory. However, Kim teaches a capacity of write data stored in a buffer memory ([0076], Kim teaches that a controller may store program data of a program command in a buffer/cache, and then later storing the data in the buffer/cache into the memory blocks. Kim also teaches that the location in the memory device where a controller may store program data may be any of an empty memory block, an open memory block, or free memory block.). Lee/Boitei and Kim are analogous art because they are from the same field of endeavor, memory management systems. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee/Boitei and Kim to achieve the result of a controller with a programmed capacity table including information on a capacity of data programmed to memory blocks included in a memory device, which compares the capacity of data stored in a buffer memory with a reference capacity to select either free blocks or open blocks, and outputs the address of the selected block. One of ordinary skill in the art would have been motivated to make this modification in order to support operations performed by the memory system and the controller by storing temporary or transactional data for performing normal operations as discussed in Kim [0068]. Regarding claim 8: The combination of Lee, Boitei, and Kim teaches all limitations of claim 7, from which claim 8 depends. Lee/Boitei/Kim further teaches the reference capacity is set to a value less than a total capacity of one of the memory blocks included in the memory device. ([0043], Lee teaches that an open block, is a block that has been programmed with partial data, and is available for storing additional data. As discussed with respect to claim 7, the reference capacity is interpreted to be the space for additional writing in a block, and in the case of an open block, would be less than the total capacity of the block, as part of the block is already in use.). Regarding claim 9: The combination of Lee, Boitei, and Kim teaches all limitations of claim 7, from which claim 9 depends. Lee/Boitei/Kim further teaches when the capacity of the data is greater than the reference capacity, select one of the memory blocks designated as the free status block. ([0048] and [0054], Lee teaches that when the remaining free space in a current block is not large enough to perform a requested write operation, the memory controller may choose to open a new, different block. Furthermore, as shown in [0007], using a new block means using an unused block, which is interpreted to be the claimed select one of the memory blocks designated as the free status block.) Regarding claim 10: The combination of Lee, Boitei, and Kim teaches all limitations of claim 7, from which claim 10 depends. Lee/Boitei/Kim further teaches when the capacity of the data is less than the reference capacity, select one of the memory blocks designated as an open status block. ([0037], Lee teaches a program operation writing data to an area of unused pages of a block, where the block has existing data, when the requested amount of data is smaller than the unused page size.) Regarding claim 11: Lee teaches A method of operating a memory system including a memory device including memory blocks and a controller configured to control the memory device, the method comprising: ([0004], Lee teaches that a typical flash memory architecture arranges groups of cells into blocks. Furthermore, in [0026], Lee teaches a memory controller that includes various elements that manage various part of the operation of a flash memory system, including a translation when a host sends particular addresses.) comparing a capacity of data to be written with the reference capacity, searching for a free status block in response to the capacity of data stored exceeding the reference capacity, selecting the free status block as a selected memory block when the free status block is present, and (Fig. 5 and [0050-0057], Lee teaches a process by which a controller receives a write request and determines if an open block is available to write the data into. The determination involves selecting if an open block that can write the data exists, and if not, selecting a new unused block to store the data instead. Furthermore, in [0048], Lee teaches an embodiment where if the remaining free space in an open block is not large enough to perform a write operation, ie. the data to be written exceeds a reference capacity, the memory controller may open a different block. Combining the ideas, Lee teaches a block selector that compares the capacity of data to be written by referencing the capacity available to write, and selects an unused free block when the capacity exceeds the reference capacity.) outputting, by the controller, an address of the selected memory block to the memory device, and programming, by the memory device, the data to the selected memory block based on the address and a command received from the controller ([0055] and [0057], Lee teaches that when a block is selected, the controller writes the data to the block selected as part of the determinations. Since the controller writes to a particular targeted block in the memory, the outputting of a write with a targeted block is interpreted to be the outputting the address of a selected memory block for programming the data.) While Lee teaches tables that store capacity information of open blocks, Lee does not appear to explicitly disclose storing a reference capacity, wherein the reference capacity is set based on a specific capacity of data programmed to the memory blocks. However, Boitei teaches storing a reference capacity, wherein the reference capacity is set based on a specific capacity of data programmed to the memory blocks. ([0032], Boitei teaches that a storage drive may have a page map table which represents the memory status including an amount of valid/invalid and free pages for each memory block, which means that there is a stored reference capacity set based on a specific capacity of data programmed to the memory blocks.). Lee and Boitei are analogous art because they are from the same field of endeavor, memory system management. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee and Boitei to achieve the combined result of the memory system which uses a table which includes information on a capacity of data programmed to each memory block in the device. One of ordinary skill in the art would have been motivated to make this modification in order to facilitate operations that would require information about the status of each block, such as GC, as discussed in Boitei [0030-0031], which also suits the needs of Lee to determine if there is enough remaining free space in a block to write to, as discussed in Lee [0048]. While Lee broadly talks about the amount of data being written being part of the process, Lee/Boitei does not appear to explicitly disclose a capacity of write data stored in a buffer memory. However, Kim teaches a capacity of write data stored in a buffer memory ([0076], Kim teaches that a controller may store program data of a program command in a buffer/cache, and then later storing the data in the buffer/cache into the memory blocks. Kim also teaches that the location in the memory device where a controller may store program data may be any of an empty memory block, an open memory block, or free memory block.). Lee/Boitei and Kim are analogous art because they are from the same field of endeavor, memory management systems. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee/Boitei and Kim to achieve the result of a controller with a programmed capacity table including information on a capacity of data programmed to memory blocks included in a memory device, which compares the capacity of data stored in a buffer memory with a reference capacity to select either free blocks or open blocks, with the command generator configured to output the command and address for programming the data in the buffer memory into the selected memory block. One of ordinary skill in the art would have been motivated to make this modification in order to support operations performed by the memory system and the controller by storing temporary or transactional data for performing normal operations as discussed in Kim [0068]. Regarding claim 12: The combination of Lee, Boitei, and Kim teaches all limitations of claim 11, from which claim 12 depends. Lee/Boitei/Kim further teaches the reference capacity is set to a value less than a total capacity of one of the memory blocks. ([0043], Lee teaches that an open block, is a block that has been programmed with partial data, and is available for storing additional data. As discussed with respect to claim 11, the reference capacity is interpreted to be the space for additional writing in a block, and in the case of an open block, would be less than the total capacity of the block, as part of the block is already in use.). Regarding claim 14: The combination of Lee, Boitei, and Kim teaches all limitations of claim 11, from which claim 14 depends. Lee/Boitei/Kim further teaches when the capacity of the data is greater than the reference capacity, the selected memory block is one of memory blocks designated as the free status block. ([0048] and [0054], Lee teaches that when the remaining free space in a current block is not large enough to perform a requested write operation, the memory controller may choose to open a new, different block. Furthermore, as shown in [0007], using a new block means using an unused block, which is interpreted to be the claimed select one of the memory blocks designated as the free status block.) Regarding claim 15: The combination of Lee, Boitei, and Kim teaches all limitations of claim 11, from which claim 15 depends. Lee/Boitei/Kim further teaches when the capacity of the data is less than the reference capacity, the selected memory block is one of memory blocks designated as an open status block. ([0037], Lee teaches a program operation writing data to an area of unused pages of a block, where the block has existing data, when the requested amount of data is smaller than the unused page size.) Regarding claim 16: Lee teaches A method of operating a memory system including a memory device including memory blocks and a controller configured to control the memory device, the method comprising: ([0004], Lee teaches that a typical flash memory architecture arranges groups of cells into blocks. Furthermore, in [0026], Lee teaches a memory controller that includes various elements that manage various part of the operation of a flash memory system, including a translation when a host sends particular addresses.) comparing a capacity of data to be written with the reference capacity, searching for a free status block in response to the capacity of data stored exceeding the reference capacity, selecting the free status block as a selected memory block when the free status block is present, and (Fig. 5 and [0050-0057], Lee teaches a process by which a controller receives a write request and determines if an open block is available to write the data into. The determination involves selecting if an open block that can write the data exists, and if not, selecting a new unused block to store the data instead. Furthermore, in [0048], Lee teaches an embodiment where if the remaining free space in an open block is not large enough to perform a write operation, ie. the data to be written exceeds a reference capacity, the memory controller may open a different block. Combining the ideas, Lee teaches a block selector that compares the capacity of data to be written by referencing the capacity available to write, and selects an unused free block when the capacity exceeds the reference capacity.) outputting, by the controller, an address of the selected memory block to the memory device, and programming, by the memory device, the data to the selected memory block based on the address and a command received from the controller ([0055] and [0057], Lee teaches that when a block is selected, the controller writes the data to the block selected as part of the determinations. Since the controller writes to a particular targeted block in the memory, the outputting of a write with a targeted block is interpreted to be the outputting the address of a selected memory block for programming the data.) when the capacity of data transmitted from the host is less than the reference capacity, the selected memory block is one of memory blocks designated as an open status block. ([0037], Lee teaches a program operation, requested by the host, writing data to an area of unused pages of a block, where the block has existing data, when the requested amount of data is smaller than the unused page size.) While Lee teaches tables that store capacity information of open blocks, Lee does not appear to explicitly disclose storing a reference capacity, wherein the reference capacity is set based on a specific capacity of data programmed to the memory blocks. However, Boitei teaches storing a reference capacity, wherein the reference capacity is set based on a specific capacity of data programmed to the memory blocks. ([0032], Boitei teaches that a storage drive may have a page map table which represents the memory status including an amount of valid/invalid and free pages for each memory block, which means that there is a stored reference capacity set based on a specific capacity of data programmed to the memory blocks.). Lee and Boitei are analogous art because they are from the same field of endeavor, memory system management. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee and Boitei to achieve the combined result of the memory system which uses a table which includes information on a capacity of data programmed to each memory block in the device. One of ordinary skill in the art would have been motivated to make this modification in order to facilitate operations that would require information about the status of each block, such as GC, as discussed in Boitei [0030-0031], which also suits the needs of Lee to determine if there is enough remaining free space in a block to write to, as discussed in Lee [0048]. While Lee broadly talks about the amount of data being written being part of the process, Lee/Boitei does not appear to explicitly disclose a capacity of write data stored in a buffer memory. However, Kim teaches a capacity of write data stored in a buffer memory ([0076], Kim teaches that a controller may store program data of a program command in a buffer/cache, and then later storing the data in the buffer/cache into the memory blocks. Kim also teaches that the location in the memory device where a controller may store program data may be any of an empty memory block, an open memory block, or free memory block.). Lee/Boitei and Kim are analogous art because they are from the same field of endeavor, memory management systems. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee/Boitei and Kim to achieve the result of a controller with a programmed capacity table including information on a capacity of data programmed to memory blocks included in a memory device, which compares the capacity of data stored in a buffer memory with a reference capacity to select either free blocks or open blocks, with the command generator configured to output the command and address for programming the data in the buffer memory into the selected memory block. One of ordinary skill in the art would have been motivated to make this modification in order to support operations performed by the memory system and the controller by storing temporary or transactional data for performing normal operations as discussed in Kim [0068]. Regarding claim 17: The combination of Lee, Boitei, and Kim teaches all limitations of claim 16, from which claim 17 depends. Lee/Boitei/Kim further teaches the reference capacity is set to a value less than a total capacity of one of the memory blocks. ([0043], Lee teaches that an open block, is a block that has been programmed with partial data, and is available for storing additional data. As discussed with respect to claim 16, the reference capacity is interpreted to be the space for additional writing in a block, and in the case of an open block, would be less than the total capacity of the block, as part of the block is already in use.). Claim 4 is rejected under 35 U.S.C. 103 as being unpatentable over Lee et al., U.S. Pub. No. 20130097365 (hereinafter “Lee”) in view of BOITEI, U.S. Pub. No. 20170052719 (hereinafter “Boitei”) further in view of KIM, U.S. Pub. No. 20220236914 (hereinafter “Kim”) further in view of Hudson et al., U.S. Pub. 20140033213 (hereinafter “Hudson”). Regarding claim 4: The combination of Lee, Boitei, and Kim teaches all limitations of claim 1, from which claim 4 depends. While Lee teaches the selecting a free or open block based on how much memory is requested to be written compared to the size of the programmable area of a block, Lee/Boitei/Kim does not appear to disclose handling a special case where there are no free blocks and the data to-be-written is greater than a reference capacity, and therefore does not teach when the capacity of the data is greater than the reference capacity and no memory block designated as the free status block is present among the memory blocks, the block selector is configured to select a memory block designated as an open status block. However, Hudson teaches when the capacity of the data is greater than the reference capacity and no memory block designated as the free status block is present among the memory blocks, the block selector is configured to select a memory block designated as the open status block ([0043-0044], Hudson teaches that when more memory space is needed to complete an operation, if there are no empty blocks available, then a partially used block is acquired instead to complete the operation. The empty blocks of Hudson correspond to the free blocks of Lee/Boitei/Kim, the partially used or partially empty blocks of Hudson correspond to the open blocks of Lee/Boitei/Kim, and the condition of there being insufficient memory space to complete the operation of Hudson corresponds to the comparing the capacity of data stored in the buffer to be written to the available space on a block being insufficient to write the data into the block of Lee/Boitei/Kim.). Lee/Boitei/Kim and Hudson are analogous art because they are from the same field of endeavor, memory system management. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee/Boitei/Kim and Hudson to achieve the combined result of the controller of claim 1, which typically selects an open block if the data fits in the block, or a free block if the data does not fit in the open blocks, to, in the case where there are no free blocks but the data would not fit into one open block, to select an additional open block to complete the writing. One of ordinary skill in the art would have been motivated to make this modification in order to facilitate the execution of tasks that may require more than a single initial block of memory, as discussed in Hudson [0043], in the special case where the general case taught by Lee/Kim would not be applicable. Claims 6, 13 are rejected under 35 U.S.C. 103 as being unpatentable over Lee et al., U.S. Pub. No. 20130097365 (hereinafter “Lee”) in view of BOITEI, U.S. Pub. No. 20170052719 (hereinafter “Boitei”) further in view of KIM, U.S. Pub. No. 20220236914 (hereinafter “Kim”) further in view of OGAWA, U.S. Pub. No. 20160274792 (hereinafter “Ogawa”). Regarding claim 6: The combination of Lee, Boitei, and Kim teaches all limitations of claim 1, from which claim 6 depends. While Lee teaches selecting a memory block from among the memory blocks dedicated as the open status block for writing, Lee/Boitei/Kim does not appear to explicitly disclose the block selector is configured to select a memory block having a largest programmable space from among the memory blocks designated as an open status block. However, Ogawa teaches the block selector is configured to select a memory block having a largest programmable space from among the memory blocks ([0037], [0039], and [0159], Ogawa teaches a system which preferentially selects blocks with the largest number of free regions as write destinations, which is interpreted as selecting a memory block having the largest programmable space among memory blocks.). Lee/Boitei/Kim and Ogawa are analogous art because they are from the same field of endeavor, memory system management. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee/Boitei/Kim and Ogawa to achieve the combined result of a system which has a block selector that can select write locations among open or free blocks, to preferentially select memory blocks with the largest programmable space among memory blocks designated as open blocks. One of ordinary skill in the art would have been motivated to make this modification in order to reduce fragmentation of data and in turn, reduce access performance to the memory, as discussed in Ogawa [0037]. Regarding claim 13: The combination of Lee, Boitei, and Kim teaches all limitations of claim 11, from which claim 13 depends. While Lee teaches selecting a memory block from among the memory blocks dedicated as the open status block for writing, Lee/Boitei/Kim does not appear to explicitly disclose the selected memory block is a memory block having the largest programmable space, among the memory blocks designated as an open status block. However, Ogawa teaches the block selector is configured to select a memory block having a largest programmable space from among the memory blocks ([0037], [0039], and [0159], Ogawa teaches a system which preferentially selects blocks with the largest number of free regions as write destinations, which is interpreted as selecting a memory block having the largest programmable space among memory blocks.). Lee/Boitei/Kim and Ogawa are analogous art because they are from the same field of endeavor, memory system management. Therefore, it would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the teachings of Lee/Boitei/Kim and Ogawa to achieve the combined result of a system which has a block selector that can select write locations among open or free blocks, to preferentially select memory blocks with the largest programmable space among memory blocks designated as open blocks. One of ordinary skill in the art would have been motivated to make this modification in order to reduce fragmentation of data and in turn, reduce access performance to the memory, as discussed in Ogawa [0037]. 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 KAITLYN HUNG PHAM whose telephone number is (571)272-6333. The examiner can normally be reached M/Tu/Th/F 8:00-6:00 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, Rocio Del Mar Perez-Velez can be reached at 571-270-5935. 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. /K.H.P./Examiner, Art Unit 2133 /ROCIO DEL MAR PEREZ-VELEZ/Supervisory Patent Examiner, Art Unit 2133
Read full office action

Prosecution Timeline

Nov 27, 2024
Application Filed
Nov 28, 2025
Non-Final Rejection mailed — §101, §103, §112
Jan 29, 2026
Examiner Interview Summary
Jan 29, 2026
Applicant Interview (Telephonic)
Feb 19, 2026
Response Filed
May 04, 2026
Final Rejection mailed — §101, §103, §112 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12681661
NON-VOLATILE MEMORY WITH OPERATION ADJUSTMENT BASED ON OPEN BLOCK RATIO AND CYCLING
2y 7m to grant Granted Jul 14, 2026
Patent 12681900
DESTAGING METADATA CHANGES FROM IN-MEMORY BUCKETS TO PERSISTENT BUCKETS OF VARIABLE SIZE
2y 2m to grant Granted Jul 14, 2026
Patent 12656947
PERFORMING SELECT INPUT/OUTPUT REQUESTS WHILE IN PROTECTED MEMORY STATES
2y 6m to grant Granted Jun 16, 2026
Patent 12554636
MEMORY SYSTEM AND METHOD OF CONTROLLING MEMORY SYSTEM
1y 5m to grant Granted Feb 17, 2026
Study what changed to get past this examiner. Based on 4 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
100%
Grant Probability
99%
With Interview (+0.0%)
2y 3m (~7m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 3 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month