The question of what software is patent-eligible subject matter is still evolving. The Federal Circuit in Visual Memory v. NVIDIA, recently weighed in with another guidepost on the way to patent eligibility.
Claim 1 reads:
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; an
a cache connected to said bus;
wherein a programmable operational characteristic of said system determines a type of data stored by said cache.
In the lower court decision, the district court concluded that the “abstract idea of categorical data storage” was something that humans had been doing for many years. For this reason, the claim ran afoul of the Supreme Court’s Alice rationale that claims cannot “tend to impede innovation more than it would tend to promote it.” This captures the challenges that courts and USPTO examiners currently face from the limited guidance given in the Supreme Court’s Alice decision.
The Federal Circuit rejected the district court’s reasoning in a split decision. The reasoning was mostly limited to the facts of the case, “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.” The court expanded on this to conclude, with reference to its earlier Enfish and Thales cases, “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.”
The split decision, unfortunately, adds limited clarity for future cases, since the dissenting opinion expresses what others on the Federal Circuit still believe, “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.”