Court Opinion

ID: 9877877
Source: CourtListenerOpinion
Date Created: 2023-09-27 16:29:12.010168+00
Date Added: 2024-06-11T07:47:28.939713
License: Public Domain

Dissenting opinion filed by Circuit Judge HUGHES.
*1255STOLL, Circuit Judge.
Visual Memory, LLC appeals the district court’s dismissal of its patent infringement complaint against NVIDIA Corporation. The district court held that Visual Memory’s U.S. Patent No. 5,953,740 is drawn to patent-ineligible subject matter, and therefore its complaint failed to state a claim under Federal Rule of Civil Procedure 12(b)(6). We conclude instead that the ’740 patent claims an improvement to computer memory systems and is not directed to an abstract idea. Accordingly, we reverse the district court and remand for further proceedings.
I.
The ’740 patent teaches that computer systems frequently use a three-tiered memory hierarchy to enhance performance. The three tiers include: 1) a low-cost, low-speed memory, such as a magnetic disk, for bulk storage of data; 2) a medium-speed memory that serves as the main memory; and 3) an expensive, high-speed memory that acts as a processor cache memory. ’740 patent col. 1 ll. 54-64. Because the cache memory is the most- expensive, it is typically smaller than the main memory and cannot always store all the data required by the processor. The memory hierarchy alleviates the limitations imposed by the cache’s size because it allows code and non-code data1 to be transferred from the main memory to the cache during operation to ensure that the currently executing program has quick access to. the required data. Replacement algorithms determine which data should be transferred from the main memory to the cache and which data in the cache should be replaced. As a result, the code and non-code, data to be executed by the processor are continually grouped into the cache, thereby facilitating rapid access for the currently executing program.
These prior, art memory systems lacked versatility because they were designed and optimized based on the specific type of processor selected for use in that system. Designing a different memory system for every processor type is. expensive, and substituting any other type of processor into the system would decrease its efficiency, Memory systems could be designed to operate .with multiple types of processors, but the design tradeoffs often diminished the performance of one . or all of the computers. • > -
The ’740 patent purports to overcome these deficiencies, by creating a memory system with programmable operational characteristics that can be tailored for use with multiple different processors without the accompanying reduction in performance. It discloses a main memory 12 and three separate caches: internal cache 16, pre-fetch cache 18, and write buffer cache 20. Id. at col. 3 ll. 34-53. A schematic of the ’740 patent’s memory system is shown below in Figure 1:
*1256[[Image here]]
The three caches possess programmable operational characteristics that are programmable based on the type of processor connected to the memory system. When the system is turned on, information about the type of processor is used to self-configure the programmable operational characteristics. For example, depending on the type of processor, internal cache 16 can store both code and non-code data, or it can store only code data. Id. at col. 4 ll. 30-35. Similarly, write buffer cache 20 can be programmed to buffer data “solely from a bus master other than the system processor,” or to buffer “data writes by any bus master including the system processor.” Id. at col. 4 ll. 35-43. By separating the functionality for the caches and defining those functions based on the type of processor, the patented system can “achieve or exceed the performance of a system utilizing a cache many times larger than the cumulative size of the subject caches.” Id. at col. 4 ll. 24-26.
Using a programmable operational characteristic based on the processor type can also improve the main memory. Fast page mode is a well-known technique for speeding up access to main memory. In fast page mode, a row in a memory page is accessed without having to continually respecify the row address, thereby reducing access time. A register associated with the main memory holds the page address of the most recently accessed page. The ’740 patent’s main memory constitutes an advance over the prior art fast page mode memory because it is divided into pages containing either code or non-code data, and “the system provides a bias towards code pages or non-code pages depending upon the type of processor connected to the system.” Id. at col. 4 ll. 55-58. For one processor type, the register will hold the address of the most recently accessed code page; for another processor type, the register will hold the address of the most recently accessed non-code page. The specification discloses that combining the selective open page bias with the fast page mode offers faster access to main memory and increases system performance. Id. at col. 5 ll. 6-8.
Taken together, the “multiple mode operation” of the ’740 patent confers a substantial advantage by “allow[ing] different types of processors to be installed with the [same] subject memory system without *1257significantly compromising their individual performance.” Id. at col. 5 ll. 25-29. The ’740 patent’s claims reflect these technological improvements. For example, claim 1 recites:
1. A computer memory system connectable to a processor and having one or more programmable operational characteristics, said characteristics being defined through configuration by said computer based on the type of said processor, wherein said system is connectable to said processor by a bus, said system comprising:
a main memory connected to said bus; and
a cache connected to said bus;
wherein a programmable operational characteristic of said system determines a type of data stored by said cache.
Id. at col. 6 ll. 28-38. The dependent claims further define the programmable operational characteristic, i.e., determining whether the cache stores both code and non-code data (claim 2) and whether the cache buffers data from both the bus master and the processor (claim 3). Independent claim 6 recites the fast page mode embodiment.
Visual Memory sued NVIDIA for infringement of the ’740 patent. Believing the claims to be directed to patent-ineligible subject matter, NVIDIA filed a motion to dismiss for failure to state a claim pursuant to Federal Rule of Civil Procedure 12(b)(6).
The district court granted NVIDIA’s motion. Under step one of the Alice test, the court concluded that the claims were directed to the “abstract idea of categorical data storage,” which humans have practiced for many years. Visual Memory LLC v. NVIDIA Corp., No. 15-789, 2016 WL 3041847, at *4 (D. Del. May 27, 2016). The court’s step-two analysis found no inventive concept because the claimed computer components—a main memory, cache, bus, and processor—were generic and conventional. The ’740 patent’s programmable operational characteristics did not provide the inventive concept, according to the court, because they represent generic concepts that determine the type of data to be stored by the cache, and the patent fails to explain the mechanism for accomplishing the result. Id. at *7.
Visual Memory appeals the district court’s decision. We have jurisdiction pursuant to 28 U.S.C. § 1295(a)(1).
II.
We apply regional circuit law when reviewing motions to dismiss for failure to state a claim, FairWarning IP, LLC v. Iatric Sys., Inc., 839 F.3d 1089, 1092 (Fed. Cir. 2016), and the Third Circuit “review[s] de novo a district court’s grant of a motion to dismiss for failure to state a claim under . Federal Rule of Civil Procedure 12(b)(6).” Ballentine v. United States, 486 F.3d 806, 808 (3d Cir. 2007). We review de novo any determination that a claim is directed to patent-ineligible subject matter. Enfish, LLC v. Microsoft Corp., 822 F.3d 1327, 1334 (Fed. Cir. 2016).
Section 101 defines the scope of patent-eligible subject matter as “any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof.” 35 U.S.C. § 101. To this broad universe of eligible subject matter, the Supreme Court has long-recognized an exception: laws of nature, natural phenomena, and abstract ideas are not patent-eligible because they represent “the basic tools of scientific and technological work.” Ass’n for Molecular Pathology v. Myriad Genetics, Inc., — U.S. —, 133 S.Ct. 2107, 2116, 186 L.Ed.2d 124 (2013) (quoting Mayo Collaborative Servs. v. Prometheus Labs., Inc., *1258566 U.S. 66, 71, 132 S.Ct. 1289, 182 L.Ed.2d 321 (2012)). Permitting patent protection for these ideas could' thwart the purpose of the patent laws because it “might tend to impede innovation more than it would tend to promote it.” Alice Corp. Pty. v. CLS Bank Int’l, — U.S. —, 134 S.Ct. 2347, 2354, 189 L.Ed.2d 296 (2014) (quoting Mayo, 566 U.S. at 71, 132 S.Ct. 1289).
The “framework, for distinguishing patents that, claim laws of nature, natural phenomena, and abstract ideas from those that claim patent-eligible applications of those concepts” comprises two steps. Id. at 2355. The first step requires courts to “determine whether the claims at issue are directed to one of those patent-ineligible concepts.” Id. If they are, the court must then analyze whether the claim elements, either individually or as an ordered combination, contain an “inventive concept” that “ ‘transform[s] the nature of the claim’ into a patent-eligible application.” Id. (quoting Mayo, 566 U.S. at 72, 78, 132 S.Ct. 1289).
Our analysis begins with Alice step one. Although the two steps in the Alice framework “involve overlapping scrutiny of the content of the claims,” the “Supreme Court’s formulation makes clear that the first-stage filter is a meaningful one, sometimes ending the § 101 inquiry.” Elec. Power Grp., LLC v. Alstom S.A., 830 F.3d 1350, 1353 (Fed. Cir. 2016). In this regard, we must articulate with specificity what the claims are directed to, Thales Visionix Inc. v. United States, 850 F.3d 1343, 1347 (Fed. Cir. 2017), and “ask whether the claims are directed to an improvement to computer functionality versus being directed to an abstract idea.” Enfish, 822 F.3d at 1335 (“[S]ome improvements in computer-related technology when appropriately claimed are undoubtedly not abstract, such as a .chip architecture, an LED .display, and the like.”).
Two recent cases inform our evaluation of whether the claims are “directed to”- an abstract idea. In Enfish, we held claims reciting a self-referential table for a computer database were patent-eligible under Alice step one because the claims were directed to an improvement in the computer’s functionality. Id. at 1336. We explained that “the plain focus of the claims is on an improvement to computer functionality itself, not on economic or other tasks for which a computer is used in its ordinary capacity.” Id. The specification described the benefits of using a self-referential table—faster searching .and more effective data storage—and highlighted the differences between the.claimed self-referential table and a conventional database structure. Id. at 1333, 1337. Based on this, we rejected the district court’s characterization of the claims as being “directed to the abstract idea of ‘storing, organizing, and retrieving memory in a logical table.’ ” Id. at 1337. We emphasized that the key question is “whether the focus of the claims is on the specific asserted improvement in computer capabilities (i.e., the self-referential table for a computer database) or, instead, on a process that, qualifies as an ‘abstract idea’ for which computers are invoked merely as a tool.” Id. at 1335-36. Moreover, if was appropriate to consider the technological improvement embodied in the claims at step one, we explained, because Alice does not “broadly hold that all improvements in computer-related technology are inherently abstract and, therefore, must be considered at step two.” Id. at 1335.
Similarly, in Thales, we determined that claims reciting , a .unique configuration of inertial sensors and the use of a mathematical equation for calculating the location and orientation of an object relative to a. moving platform were patent-eligible under Alice step one. Inertial sensors in pri- *1259or art systems measured motion relative to the earth and were prone to computational errors. Thales, 850 F.3d at 1345. The patented system achieved greater accuracy than these prior art systems by measuring inertial changes of the tracked object relative to the moving platform’s reference frame. Id. We disagreed with the Court of Federal Claims’ conclusion that the claims were directed to the abstract idea of using mathematical equations to determine the position of a moving object relative to a moving reference frame. Rather, we concluded that the claims were directed to “systems and methods that use inertial sensors in a non-conventional manner to reduce errors in measuring the relative position and orientation of a moving object on a moving reference frame.” Id. at 1348-49. .
With these guideposts in mind, and cognizant of the difficulty inherent in delineating the contours of an abstract idea, we turn to the claims at issue here. Our review of the ’740 patent claims demonstrates that they are directed to an improved computer memory system, not to the abstract idea of categorical data storage. Claim 1 requires a memory system “having one or more programmable operational characteristics, said characteristics being defined through configuration by said computer based on the type of said processor,” and “determin[ing] a type of data stored by said cache.” ’740 patent col. 6 11. 29-38. Dependent claims 2 and 3 narrow the cache’s programmable operational characteristic to storing certain types of data (“only code data or ... both code data and non-code data”) and buffering data from certain sources (“buffering of data solely from said bus master or ... both from said bus master and said pro.-cessor”), respectively. Id. at col. 611. 39-51. Claim 6 recites the fast page mode embodiment with a programmable operational characteristic, and dependent claim 7 defines the programmable operational characteristic as the type of data to be stored. Id. at col. 7 11. 3-26. None of the claims recite all types and all forms of categorical data storage.
The specification explains that multiple benefits flow from the ’740 patent’s improved memory system. As an initial matter, the specification discloses that a memory system with programmable operational characteristics defined by the processor connected to the memory system permits “different types of processors to be installed with the subject memory system without significantly compromising their individual performance.” Id. at col. 5 11. 25-29. Although prior art memory systems possessed the flexibility to operate with multiple different processors, this one-size-fits-all approach frequently caused a tradeoff in processor performance. Id. at col. 2 11. 47-52. The ’740 patent’s teachings obviate the need to design a separate memory system for each type of processor, which proved to be costly and inefficient, and, at the same time, avoid the performance problems of prior art memory systems. See J.A. 771. Finally, in addition to enabling interoperability with multiple different processors, the ’740 patent specification explains that the selective definition of the functions of the cache memory based on processor type results in a memory system that can outperform a prior art memory system that is armed with “a cache many times larger than the cumulative size of the subject caches.” ’740 patent col. 4 11. 21-26.
As with Enfish’s .self-referential tqble and the motion tracking system in Thales, the claims here are directed to a technological improvement: an enhanced computer memory system. The ’740 patent’s claims focus on a “specific asserted improvement. in computer capabilities”'—the *1260use of programmable operational characteristics that are configurable based on the type of processor—instead of “on a process that qualifies as an ‘abstract idea’ for which computers are invoked merely as a tool.” Enfish, 822 F.3d at 1336. And like the patents at issue in Enfish and Thales, the specification discusses the advantages offered by the technological improvement. Accordingly, this is not a case where the claims merely recite the “use of an abstract mathematical formula on any general purpose computer,” “a purely conventional computer implementation of a mathematical formula,” or “generalized steps to be performed on a computer using conventional computer activity.” Id. at 1338 (collecting cases where claims were directed to patent-ineligible subject matter).
It is for this reason that the district court’s reliance on the patent-ineligible claims in Content Extraction & Transmission LLC v. Wells Fargo Bank, 776 F.3d 1343 (Fed. Cir. 2014) and In re TLI Communications LLC Patent Litigation, 823 F.3d 607 (Fed. Cir. 2016) was misplaced. In Content Extraction, we reviewed a series of patents claiming a method of using a computer and a scanner to extract data from hard copy documents, recognizing specific information in the extracted data, and storing that information in memory. Alice clarified that adding a computer cannot spare a claim that otherwise would be directed to an abstract idea, so we concluded that these claims were directed to “the basic concept of data recognition and storage.” Content Extraction, 776 F.3d at 1347. In TLI Communications, the invention involved assigning “classification data,” such as timestamps or dates, to digital images, sending the images to a server, extracting the classification data, and having the server take the classification data into consideration when storing the digital images. We held that the claims were “directed to the abstract idea of classifying and storing digital images in an organized manner.” TLI Commc’ns, 823 F.3d at 613. Although the claims recited the use of a phone and a server to carry out the claimed method, the claims did not “describe a new telephone, a new server, or a new physical combination of the two” and were “not directed to a specific improvement to computer functionality.” Id. at 612.
The claims in Contract Extraction and TLI Communications were not directed to an improvement in computer functionality, which separates the claims in those cases from the claims in the current case. As discussed above, the claims in the ’740 patent recite an allegedly new, improved, and more efficient memory system. No analogous improvement is claimed in Content Extraction or TLI Communications.
NVIDIA responds by arguing that the claims are directed to no more than “a desired result or outcome in the context of generic computer components and functionality.” Appellee Br. 23-24. According to NVIDIA, the “programmable operational characteristic” is a purely functional feature that simply describes “allowing data to be stored based on its characteristics.” Id. at 22. The claims, however, do not simply require a “programmable operational characteristic.” Even the broadest claim, claim 1, requires a memory system with a main memory and a cache memory, where the memory system is configured by a computer to store a type of data in the cache memory based on the type of processor connected to the memory system.
Similarly, the dissent contends that the claimed programmable operational characteristic is “nothing more than a black box,” that “the patent lacks any details about how [the invention’s purpose] is achieved,” and that “because the ’740 patent does not *1261describe how to implement the ‘programmable operational characteristic’ and requires someone else to supply the innovative programming effort, it is not properly described as directed to an improvement in computer systems.” Dissenting Op. 1263. There are three flaws with this conclusion.
First, the patent includes a microfiche appendix having a combined total of 263 frames of computer code. See J.A. 25-283. The dissent assumes that this code would not teach one of ordinary skill in the art the “innovative programming effort” required for a computer to configure a programmable operational characteristic of a cache memory (e.g., whether to store only code data or code and non-code data) based on the type of processor connected to the memory system. Such an assumption is improper when reviewing a dismissal under Rule 12(b)(6), where all factual inferences must be drawn in favor of the non-moving party. See, e.g., Erickson v. Pardus, 551 U.S. 89, 93-94, 127 S.Ct. 2197, 167 L.Ed.2d 1081 (2007).
Second, whether a patent specification teaches an ordinarily skilled artisan how to implement the claimed invention presents an enablement issue under 35 U.S.C. § 112, not an eligibility issue under § 101. As we have explained, “[ejnablement is a legal determination of whether a patent enables one skilled in the art to make and use the claimed invention.” Hybritech Inc. v. Monoclonal Antibodies, Inc., 802 F.2d 1367, 1384 (Fed. Cir. 1986). Moreover, the implementation details of how to configure a programmable operational characteristic of a memory system may well fall within the routine knowledge of one of ordinary skill in the art, and “a patent need not teach, and preferably omits, what is well known in the art.” Id.
Third, the dissent assumes that the “innovative” effort in the ’740 patent lies in the programming required for a computer to configure a programmable operational characteristic of a cache memory. This assumption is inconsistent with the patent specification itself. The specification makes clear that the inventors viewed their innovation as the creation of “a memory system which is efficiently operable with different types of host processors,” ’740 patent col. 2 11. 65-67, and the patent discloses how to implement such a memory system. Specifically, as demonstrated above, both the specification and the claims expressly state that this improved memory system is achieved by configuring a programmable operational characteristic of a cache memory based on the type of processor connected to the memory system. For example, the claims indicate that the programmable operational characteristic is “defined through configuration by said computer based on the type of said processor.”2 See, e.g., id. at col. 6 11. 30-32. The specification further explains that, in one example, “[f]or a system employing a 386 or 386sx system processor, internal cache 16 holds only code data, whereas for a system employing a 486 processor, internal cache 16 holds both code and non-code data.” Id. at col. 4 11. 32-35. Configuring the memory system based on the type of processor connected to the memory system is the improvement in computer technology to which the claims are directed. Alice requires no more from the claims or the specification to support our conclusion that the claims are not directed to an abstract idea. This conclusion is particularly proper on a mo*1262tion to dismiss under Rule 12(b)(6), where all factual inferences drawn from the specification must be weighed in favor of Visual Memory, the non-moving party.
To be sure, the concept of categorical data storage underlies the ’740 patent’s claims in that claim 1 requires 'a programmable operational characteristic that “determines a type of data stored by said cache.” But this is not enough to doom a claim under § 101 because the claims aré not so limited, and “all inventions at some level embody, use, reflect, rest upon, or apply laws of nature, natural phenomena, or abstract ideas.” Mayo, 566 U.S, at 71, 132 S.Ct. 1289; see also Alice, 134 S.Ct. at 2364 (“[A]n invention is not rendered ineligible for patent simply because it involves an abstract concept.” (emphasis added)). Nor is the ’740 patent’s use of conventional computer components, by itself, fatal to patent eligibility where the claims “are directed to an improvement in the functioning of a computer.” Enfish, 822 F.3d at 1338.
Because we conclude that the claims of the ’740 patent are not' directed to ’ an abstract idea, we need not proceed to step two of the Alice test.
III.
We express no opinion on the ultimate question of validity. Prior art might very well invalidate the ’740 patent’s claims under §§ 102 or 103; alternatively, challenges under § 112 could prove successful. These questions, however, are not before us. Our ruling is limited to a conclusion that the claims of the ’740 patent are not directed to patent-ineligible subject matter under § 101.
We have considered the parties’ remaining arguments and find them unpersuasive. Because the district court erred in dismissing Visual Memory’s complaint on the ground that .the ’740 patent claimed patent-ineligible subject matter, we reverse. The case is remanded for further proceedings.
REVERSED AND REMANDED
Costs
Costs to Appellant.

. The 740 patent defines code data to include instructions, whereas non-code data does not. 740 patent col, 3 ll. 37-41.

. The detail required by the claim language reassures us that, contrary to the dissent's assertion, we are not expressing the claims’ basic concept in a way that is untethered from the claim language. Dissenting Op. 1262-63. ■