Cache Data Types: Patent Eligibility

Patent – Patently-O 2017-08-16

cacheAbstractVisual Memory v. NVIDIA (Fed. Cir. 2017)

In a split opinion, the Federal Circuit has sided with the patentee and reversed a the district court judgment that Visual Memory’s patent claims improperly encompass an abstract idea.  The opinion filed by Judge Stoll was joined by Judge O’Malley.  Judge Hughes wrote in dissent.

Claim 1 of asserted U.S. Patent No. 5,953,740 is directed to a “computer memory system” that includes a “main memory” and also a “cache” both connected to a bus that can then be connected to a processor.  The inventive element, is that the cache’s operation is programmable – allowing it to work efficiently with different processors.  The claim particularly requires “a programmable operational characteristic of said system determines a type of data stored by said cache.”  In the words of the court, “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.”

Claim 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.

After Visual Memory sued NVIDIA, the defendant filed a R.12(b)(6) motion to dismiss for failure to state a claim. In granting that motion, the district court ruled that the patent was directed to the “abstract idea of categorical data storage” – something humans have been doing for many years.  In Alice Step 2, the court found that the cache, bus, and processor were all conventional and the claimed “programmable operational characteristics” were merely vaguely described “generic computer elements. Quoting Intellectual Ventures v. Capital One, 792 F.3d 1363, 1367 (Fed. Cir. 2015).

On appeal, the court began with a strawman conclusion that “none of the claims recite all types and all forms of categorical data storage.”  Of course, none of the Supreme Court abstract idea cases involve claims that entirely covered the scope of the stated abstract idea.

The meat of the court’s argument is also its conclusion:

As with Enfish’s self-referential table and the motion tracking system in Thales, the claims here are directed to a technological improvement: an enhanced computer memory system.

As in those cases, the court here looked to the specification to find particular technological improvements that underlay the invention.  Here, for instance “[t]he specification explains that multiple benefits flow from the ’740 patent’s improved memory system.”

Judge Hughes dissent agrees that the key inventive element is that the claims require the potential for a change in the type of data stored in cache depending upon the processor connected.  However, Judge Hughes points out that the claims do not spell out details of that process but rather “the patent lacks details about how” this so-called inventive element is actually achieved.

I disagree, therefore, with the majority that combining the black box of a “programmable operational characteristic” with conventional computer equipment constitutes a specific improvement in computer memory systems. Because the ’740 patent does not describe 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.

Hughes in Dissent. The majority responds to Judge Hughes by arguing (1) the patent application includes an appendix of 200+ pages of computer code for actually implementing the process; and (2) the fact that the patent might not enable the invention is not a 101 issue – it is an enablement issue. [I leave off the third argument that was weaker.]

The decision here is obviously panel dependent, meaning that the area remains in flux and disruption.

= = = = =

200 pages of code: Neither party appeared to have any real problem with fact that the decision was on the pleadings prior to any discovery or weighing of facts at issue in the case.  However, the majority highlight the 200+ pages of computer code submitted with the application with a suggestion that those pages might include further descriptive information.  That possibility then, according to the court, should preclude a judgement on the pleadings since “all factual inferences must be drawn in favor of the non-moving party.  I think the court is onto something here, although any serious consideration of this approach must also include the higher “plausibility” requirement when making those inferences.