Summary
finding that terms such as "executable remote messaging code" were not means plus function where such terms were "modified by language that describes the code's functioning within the invention, i.e., performs interception, performs invalidation, and performs remote messaging"
Summary of this case from Kit Check, Inc. v. Health Care Logistics, Inc.Opinion
CIVIL ACTION NO. H-12-1688
01-14-2014
MEMORANDUM OPINION ON CLAIM CONSTRUCTION
This is a patent infringement suit filed by SuperSpeed, L.L.C. ("SuperSpeed") against Google, Inc. ("Google"), involving United States Patent Nos. 5,577,226 ("'226 patent") and 5,918,244 ("'244 patent"). Both patents were applied for and received by SuperSpeed's predecessor in interest, EEC Systems, Inc. ("EEC"). The '226 patent is the parent application to the '244 patent, and both patents claim priority to U.S. Application No. 08/238,815, filed on May 6, 1994. The plaintiff, SuperSpeed, and the defendant, Google, disagree about the meaning of several terms used in the patents and, therefore, ask the court to construe the disputed terms. See Markman v. Westview Instruments, Inc., 116 S. Ct. 1384, 1387 (1996) ("the construction of a patent, including terms of art within its claim, is exclusively within the province of the court.").
In support of its preferred constructions, SuperSpeed has filed SuperSpeed, LLC's Opening Brief Regarding Claim Construction ("SuperSpeed's Opening Brief") (Docket Entry No. 84), SuperSpeed, LLC's Opening Brief Regarding Claim Construction ("SuperSpeed's Opening Brief") (Docket Entry No. 100), SuperSpeed, LLC's Reply Brief Regarding the Claim Construction of U.S. Patent Nos. 5,577,226 & 5,918,244 ("SuperSpeed's Reply Brief") (Docket Entry No. 107), and SuperSpeed, LLC's Reply Brief Regarding Claim Construction ("SuperSpeed's Reply Brief") (Docket Entry No. 110). In support of its preferred constructions, Google has filed Google Inc.'s Opening Claim Construction Brief ("Google's Opening Brief") (Docket Entry No. 85), Google Inc.'s Opening Claim Construction Brief for U.S. Patent No. 5,577,226 ("Google's Opening Brief") (Docket Entry No. 101), Google Inc.'s Responsive Claim Construction Brief ("Google's Responsive Brief") (Docket Entry No. 106), and Google Inc.'s Reply Brief Regarding the Claim Construction of U.S. Patent Nos. 5,577,226 and 5,918,244 ("Google's Reply Brief") (Docket Entry No. 108).
Although Docket Numbers 84 and 100 share the same title, Docket Entry No. 84 addresses terms from the '244 patent while Docket Entry No. 100 addresses terms from the '226 patent.
The parties have also presented a Joint Claim Construction and Prehearing Statement (Docket Entry No. 66), Google's Corrected Proposed Constructions and Evidence (Docket Entry No. 78), Second Joint Claim Construction and Prehearing Statement (Docket Entry No. 99), and a Joint Claim Construction Chart (Docket Entry No. 111-1), pursuant to which the parties have agreed to the construction of the following terms:
Terms to be Construed | Agreed Construction |
Cache driver: | A software program that creates or controls a cache. |
Executable interception code: | Software that performs interception. |
Executable invalidate code: | Software that performs invalidation. |
Intercepting: | To stop, deflect, or interrupt the progress or intended course of. |
Invalidate data: | To indicate the modification of previously cached |
Network: | Communication facilities that link points at which computers or devices may be connected. |
Means for reading data from the cache when the read instruction relates to addresses corresponding to data in the cache: | Subject to 3 5 U.S.C. § 112, ¶ 6; Function: Reading data from the cache when the read instruction relates to addresses corresponding to data in the cache; Corresponding structure: The "read data" and "read cache hit" program flow, steps, and data structures disclosed or referred to by Figs. 5c, 5e, and 5i, col. 17, 1.46 - col. 19, 1.10; and col. 20, 1.60-col. 21, 1.20 of the '244 patent. |
Means for writing data into the cache when the read instruction relates to addresses that do not correspond to any data in the cache: | Subject to 35 U.S.C. § 112, ¶ 6 ; Function: Writing data into the cache when the read instruction relates to addresses that do not correspond to any data in the cache; Corresponding structure: The "read data" and "read miss" program flow, steps, and data structures disclosed or referred to by Figs. 5c, 5e, and 5f-5h, col. 17, 1.46-col. 19, 1.10; and col. 19, 1.17-col. 20, 1.58 of the '244 patent, and equivalents thereof. |
Write instruction: | an operation that initiates a transfer of data to an I/O device |
See Table of Agreed Terms in SuperSpeed's Opening Brief, Docket Entry No. 84, p. 6 (stating that the parties have agreed to this definition for "invalidate data"). See also Google's Responsive Brief, Docket Entry No. 106, p. 16 (same).
On November 7, 2013, the court held a hearing on the claim construction issues. After carefully considering the parties' arguments, the evidence, and the applicable law, the court construes the disputed claim terms as stated below.
I. Background
SuperSpeed alleges that Google infringes the '226 and the '244 patents. Both of the patents-in-suit have been the subject of prior litigation: SuperSpeed v. Oracle Corporation, 4:04-cv-3409, and SuperSpeed v. IBM Corporation, 2:07-cv-89. In both of these prior cases Markman hearings were held and claim construction orders were issued that addressed some of the terms now at issue. See SuperSpeed v. Oracle Corporation 447 F. Supp. 2d 672 (S.D. Tex. 2006), and SuperSpeed v. IBM Corporation, 2009 WL 383255 (E.D. Tex. February 11, 2009).
See Exhibits C and D to SuperSpeed's Opening Brief, Docket Entry No. 84.
II. Legal Standard for Claim Construction
In Markman, 116 S. Ct. at 1387, the United States Supreme Court held that the construction of patent claims is a matter of law exclusively for the court. Accordingly, when the parties dispute the meaning of particular claim terms, the court should consider the parties' proposed definitions, but must independently assess the claims, the specification, and if necessary the prosecution history and relevant extrinsic evidence, and declare the meaning of the disputed terms. Exxon Chemical Patents, Inc. v. Lubrizol Corp., 64 F.3d 1553, 1556 (Fed. Cir. 1995), cert. denied, 116 S. Ct. 2554 (1996).
Courts begin claim construction inquiries by ascertaining the "ordinary and customary meaning" of the disputed claim terms. Phillips v. AWH Corporation, 415 F.3d 1303, 1312-13 (Fed. Cir. 2005) (en banc), cert. denied, 126 S. Ct. 1332 (2006) (quoting Vitronics Corp. v. Conceptronic, Inc., 90 F.3d 1576, 1582 (Fed. Cir. 1996)). "[T]he ordinary and customary meaning of a claim term is the meaning that the term would have to a person of ordinary skill in the art in question at the time of the invention, i.e., as of the effective filing date of the patent application." Id. at 1313. "[T]he person of ordinary skill in the art is deemed to read the claim term not only in the context of the particular claim in which the disputed term appears, but in the context of the entire patent, including the specification." Id.
In some cases, the ordinary meaning of claim language as understood by a person of skill in the art may be readily apparent even to lay judges, and claim construction in such cases involves little more than the application of the widely accepted meaning of commonly understood words. . . . In such circumstances, general purpose dictionaries may be helpful. In many cases that give rise to litigation, however, determining the ordinary and customary meaning of the claim requires examination of terms that have a particular meaning in a field of art. Because the meaning of a claim term as understood by persons of skill in the art is often not immediately apparent, and because patentees frequently use terms idiosyncratically, the court looks to "those sources available to the public that show what a person of skill in the art would have understood disputed claim language to mean." . . . Those sources include "the words of the claims themselves, the remainder of the specification, the prosecution history, and extrinsic evidence concerning relevant scientific principles, the meaning of technical terms, and the state of the art."Id. at 1314 (citations omitted).
Ascertaining a term's ordinary and customary meaning is the starting point for claim construction, but may not be the ending point. For example, a term may not carry its ordinary and customary meaning "if the patentee acted as his own lexicographer and clearly set forth a definition of the disputed claim term in either the specification or prosecution history." CCS Fitness, Inc. v. Brunswick Corp., 288 F.3d 1359, 1366 (Fed. Cir. 2002). See Hormone Research Foundation, Inc. v. Genentech, Inc., 904 F.2d 1558, 1563 (Fed. Cir. 1990), cert. dismissed. 111 S. Ct. 1434 (1991) ("It is a well-established axiom in patent law that a patentee is free to be his or her own lexicographer . . . and thus may use terms in a manner contrary to or inconsistent with one or more of their ordinary meanings."). Additionally, a claim term may be interpreted more narrowly than it otherwise would if "the patentee distinguished the term from prior art on the basis of a particular embodiment, expressly disclaimed subject matter, or described a particular embodiment as important to the invention." CCS Fitness, 288 F.3d at 1366-67. See Thorner v. Sony Computer Entertainment America, L.L.C., 669 F.3d 1362, 1365 (Fed. Cir. 2012) (explaining that only two exceptions exist to the general rule that terms carry their ordinary and customary meaning: "(1) when a patentee sets out a definition and acts as his own lexicographer, or (2) when the patentee disavows the full scope of a claim term either in the specification or during prosecution"). Moreover, "a claim term will cover nothing more than the corresponding structure or step disclosed in the specification, as well as equivalents thereto, if the patentee phrased the claim in step- or means-plus-function format." Id. (citing 35 U.S.C. § 112, ¶ 6).
There are two types of evidence upon which courts rely in conducting claim construction inquiries: (1) intrinsic evidence (e.g., the language of the claim itself, the patent specification, and the prosecution history of the patent) and (2) extrinsic evidence (evidence external to the patent and prosecution history such as dictionaries, treatises, and expert and inventor testimony). Phillips, 415 F.3d at 1317 (citing Vitronics, 90 F.3d at 1583). The court is not required to consider these sources in any particular order; "what matters is for the court to attach the appropriate weight to be assigned to those sources in light of the statutes and policies that inform patent law." Id. at 1324.
A. Intrinsic Evidence
The language of the claim itself is "'of primary importance [] in the effort to ascertain precisely what it is that is patented.'" Phillips, 415 F.3d at 1312 (quoting Merrill v. Yeomans, 94 U.S. 568, 570 (1876)). This is "[b]ecause the patentee is required to 'define precisely what his invention is.'" Id. (quoting White v. Dunbar, 7 S. Ct. 72, 75 (1886)). Courts, therefore, carefully consider the context within which a particular term is used in an asserted claim, as well as how the term is used in other claims within the same patent. "Because claim terms are normally used consistently throughout the patent, the usage of a term in one claim can often illuminate the meaning of the same term in other claims." Id. at 1314.
While the claim language itself should be the court's primary focus, other intrinsic sources can be helpful. For example, the written description, or specification "is always highly relevant to the claim construction analysis" and can be either dispositive or "the single best guide to the meaning of a disputed term." Id. at 1315 (quoting Vitronics, 90 F.3d at 1582). While "[i]t is therefore entirely appropriate for a court, when conducting claim construction, to rely heavily on the written description for guidance as to the meaning of the claims," id. at 1317, it is important that the specification be used only to interpret the meaning of a claim, not to confine patent claims to the embodiments described therein. See Dow Chemical Co. v. United States, 226 F.3d 1334, 1342 (Fed. Cir. 2000) ("[A]s a general rule claims of a patent are not limited to the preferred embodiment . . . or to the examples listed within the patent specification."). Only if the patentee describes a particular embodiment as "important to the invention" may the court narrow the meaning of a claim to a single or preferred embodiment. See Toro Co. v. White Consolidated Industries, Inc., 199 F.3d 1295, 1301 (Fed. Cir. 1999). See also CCS Fitness, 288 F.3d at 1366-67.
The patent's prosecution history is also considered intrinsic evidence and should be considered when offered for purposes of claim construction. Phillips, 415 F.3d at 1317. The prosecution history "consists of the complete record of the proceedings before the PTO and includes the prior art cited during the examination of the patent." Id. "[T]he prosecution history can often inform the meaning of the claim language by demonstrating how the inventor understood the invention and whether the inventor limited the invention in the course of prosecution, making the claim scope narrower than it would otherwise be." Id. Since, however, "the prosecution history represents an ongoing negotiation between the PTO and the applicant . . . it often lacks the clarity of the specification and thus is less useful for claim construction purposes." Id.
B. Extrinsic Evidence
If the intrinsic evidence does not resolve the ambiguity in a particular claim term, the court may look to extrinsic evidence to help it reach a conclusion as to the term's meaning. See Phillips, 415 F.3d at 1317; Vitronics, 90 F.3d at 1583. The court may look to dictionaries, especially technical dictionaries, and treatises "if the court deems it helpful in determining 'the true meaning of language used in the patent claims.'" Phillips, 415 F.3d at 1318 (quoting Markman, 52 F.3d at 980). The court, however, must always be mindful that extrinsic evidence may only supplement or clarify -- not displace or contradict -- the intrinsic evidence. See id. at 1319 ("[E]xtrinsic evidence may be useful to the court, but it is unlikely to result in a reliable interpretation of patent claim scope unless considered in the context of the intrinsic evidence."). "[H]eavy reliance on the dictionary divorced from the intrinsic evidence risks transforming the meaning of the claim term to the artisan into the meaning of the term in the abstract, out of its particular context, which is the specification." Id. at 1321.
C. Means-Plus-Function Claims
The patents-in-suit include claim limitations that one or both parties argue fall within the scope of § 112, ¶ 6, which allows a patentee to express a claim limitation as "a means or step for performing a specified function without the recital of structure, material, or acts in support thereof." 35 U.S.C. § 112(f). Whether a claim invokes § 112, ¶ 6 is an exercise in claim construction and, therefore, a question of law. Personalized Media Communications, LLC v. International Trade Commission, 161 F.3d 696, 702 (Fed. Cir. 1998). Use of the term "means" triggers a rebuttable presumption that § 112, ¶ 6 governs the construction of the claim, while absence of the term "means" creates a rebuttable presumption that § 112, ¶ 6 does not apply. See TriMed, Inc. v. Stryker Corp., 514 F.3d 1256, 1259 (Fed. Cir.), cert. denied, 129 S. Ct. 144 (2008); TIP Systems, LLC v. Phillips & Brooks/Gladwin, Inc., 529 F.3d 1364, 1374 (Fed. Cir.), cert. denied, 129 S. Ct. 629 (2008) (citing CCS Fitness, 288 F.3d at 1369). The Federal Circuit "has consistently held that 'means-plus-function claiming applies only to purely functional claims that do not provide the structure that performs the recited function.'" Welker Bearing Co. v. PHD, Inc., 550 F.3d 1090, 1095-96 (Fed. Cir. 2008) (quoting Phillips, 415 F.3d at 1311). Generic terms "mechanism," "means," "element," and "device" typically do not connote sufficiently definite structure [to avoid means-plus-function treatment], unless they are modified such that they have a specifically understood meaning in the art. Id. at 1096 (citing Massachusetts Institute of Technology and Electronics for Imaging, Inc. ("MIT") v. Abacus Software, 462 F.3d 1344 (Fed. Cir. 2006) (finding that "colorant selection mechanism" did not have a sufficiently defined meaning in the art to avoid means-plus-function construction but that "aesthetic correction circuitry" did). The presumptions arising from the presence or absence of the term "means" are strong ones that can only be overcome by a preponderance of the evidence. See Inventio AG v. ThyssenKrupp Elevator Americas Corp., 649 F.3d 1350, 1356 (Fed. Cir. 2011) ("presumption flowing from the absence of the term "means" is a strong one that is not readily overcome"); Apex Inc. v. Raritan Computer, Inc., 325 F.3d 1364, 1372 (Fed. Cir.), cert. denied, 124 S. Ct. 922 (2003) ("If the party who must bring forth evidence fails to proffer sufficient evidence to meet its burden, the presumption, either for or against the application of § 112, ¶ 6, prevails.").
Section 112(f) provides:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
Once a court has concluded that a claim is subject to § 112, ¶ 6, construing the claim requires the court to identify both the claimed function and the corresponding structure in the written description, i.e., the specification, needed to perform that function. Micro Chemical, Inc. v. Great Plains Chemical Co., Inc., 194 F.3d 1250, 1258 (Fed. Cir. 1999). The Federal Circuit has explained that "structure disclosed in the specification is the 'corresponding' structure only if the specification or prosecution history clearly links or associates that structure to the function recited in the claim." Medical Instrumentation and Diagnostics Corp. v. Elekta AB, 344 F.3d 1205, 1210 (Fed. Cir. 2003), cert. denied, 124 S. Ct. 1715 (2004) (citing B. Braun Med. Inc. v. Abott Labs, 124 F.3d 1419, 1424 (Fed. Cir. 1997)). "The duty of a patentee to clearly link or associate structure with the claimed function is the quid pro quo for allowing the patentee to express the claim in terms of function under section 112, paragraph 6." Id. at 1211 (citing Budde v. Harley-Davidson, Inc., 250 F.3d 1369, 1377 (Fed. Cir. 2001)).
III. Construction of Disputed Claim Terms
The parties dispute the construction of three terms used in the '226 patent, and ten terms used in the '244 patent. The disputed terms in the '226 patent are: (1) "accelerating access," (2) "data structure," and (3) "communicating over the network individually with each computer." The disputed terms in the '244 patent are: (1) "I/O device," (2) "cache," "caches" and "caching," (3) "caching system," (4) "computer communication channel," (5) "caching data from selected ones of said I/O devices," (6) "executable remote message code," (7) "saving a remote connection address for each of the communication channels," (8) "means for intercepting a read instruction to one of said plurality of I/O devices from the computer on which said cache driver resides," and "means for intercepting a write instruction to one of said plurality of I/O devices from the computer on which said cache driver resides," (9) "means for using the computer communication channels," and (10) "executable . . . code." The court addresses each disputed term below.
A. Terms from the '226 Patent
1. "Accelerating Access"
Disputed Term | Patent | SuperSpeed's Construction | Google's Cons truction |
"accelerating access" | '226 claim 27 | (1) No construction needed; (2) Increasing the speed of access. | reducing operational latencies by caching I/O data |
The term "accelerating access" appears in the preamble of claim 27 of the '226 patent. SuperSpeed argues that "increasing access" needs no construction because where, as here, the preamble merely states the purpose or intended use for the invention, it is not limiting. Alternatively, SuperSpeed argues that the term should be given its ordinary and customary meaning: "increasing the speed of access." SuperSpeed argues that Google's proposed construction improperly seeks to limit the term because the patentee has neither acted as its own lexicographer nor disavowed the full scope of the term's meaning.
SuperSpeed's Opening Brief, Docket Entry No. 100, pp. 2-3.
Asserting that "the entirety of the specification demonstrates that accelerating access by caching data is a limitation of the invention, and is needed to give life, meaning, and vitality to the claims," Google argues that "accelerating access" used in the preamble of claim 27 of the '226 patent should be construed to mean "reducing operational latencies by caching I/O data." Google argues that its proposed construction is supported by the patent title, abstract, background, and summary of the invention, and that in Poly-America, L.P. v. GSE Lining Technology, Inc., 383 F.3d 1303, 1310 (Fed. Cir. 2004), the Federal Circuit held the preamble to be limiting under similar circumstances.
Google's Responsive Brief, Docket Entry No. 106, p. 22. See also Google's Opening Brief, Docket Entry No. 101, pp. 3-7.
Id.
Whether, and thus how, a preamble is limiting is determined by reviewing the claim as a whole and the entire patent to ascertain whether the preamble recites essential structure, whether the drafter used both the preamble and the body of the claim to define the claim, and whether limitations in the body of the claim rely upon or derive antecedent meaning from the preamble. See Storage Technology Corp. v. Cisco Systems, Inc., 329 F.3d 823, 831 (Fed. Cir. 2003) ("Whether to treat a preamble as a claim limitation is determined on the facts of each case in light of the claim as a whole and the invention described in the patent."). While there is no simple test for determining when a preamble limits claim scope, the Federal Circuit has set forth some general principles to guide that inquiry. "Generally, the preamble does not limit the claims. . . . However, the preamble may be limiting 'when the claim drafter chooses to use both the preamble and the body to define the subject matter of the claimed invention.'" Allen Engineering Corp. v. Bartell Industries, Inc., 299 F.3d 1336, 1346 (Fed. Cir. 2002) (citations omitted). The preamble may be construed as limiting "if it recites essential structure or steps, or if it is 'necessary to give life, meaning, and vitality' to the claim." Catalina Marketing International, Inc. v. Coolsavings.com , Inc., 289 F.3d 801, 808 (Fed. Cir. 2002) (quoting Pitney Bowes, Inc. v. Hewlett-Packard Co., 182 F.3d 1298, 1305 (Fed. Cir. 1999)). "Conversely, a preamble is not limiting 'where a patentee defines a structurally complete invention in the claim body and uses the preamble only to state a purpose or intended use for the invention.'" Id. (quoting Rowe v. Dror, 112 F.3d 473, 478 (Fed. Cir. 1997)). The Federal Circuit has held that the preamble has no separate limiting effect if, for example, it "merely gives a descriptive name to the set of limitations in the body of the claim that completely set forth the invention." IMS Technology, Inc. v. Haas Automation, Inc., 206 F.3d 1422, 1434 (Fed. Cir.), cert. dismissed, 121 S. Ct. 24 (2000).
In light of these principles the court is not persuaded by Google's argument that the term "accelerating access" should be construed to mean "reducing operational latencies by caching I/O data." The term appears only in the preamble of claim 27:
A method for accelerating access to data on a network comprising the steps of:The term "accelerating access" does not appear in any of the other claims, or in the specification. The term "accelerating access" is a descriptive term used to introduce the steps stated in the body of claim 27 by noting that, together, those steps are intended to accelerate, i.e., increase the speed of, access to data on a network. See Storage Technology, 329 F.3d at 831 (preamble term "policy caching method" did not limit claims because it served only as a "convenient label for the invention as a whole"); IMS Technology, 206 F.3d at 1434 (holding that "[t]he phrase 'control apparatus' in the preamble merely gives a descriptive name to the set of limitations in the body of the claim"). Because the descriptor "accelerating access" does not embody an essential characteristic or component of the invention, the use of this term in the preamble of claim 27 is neither part of the invention's essential structure nor necessary to give life, meaning, and vitality to the claims. Google cites no authority for reading limitations into a patent from use of a descriptive term in the preamble of a claim. Nor does Google argue that claim 27 describes a structurally incomplete device, or that any language in the body of that claim suggests that the term "accelerating access" limits that claim to "reducing operational latencies by caching I/O data." Instead, Google cites Poly-America, 383 F.3d at 1303, in support of its argument that the term "accelerating access" used in the preamble of claim 27 is necessary to give life, meaning, and vitality to the '226 patent.
creating a data structure in the computer for each of a plurality of I/O devices connected to said network for which data may be cached by said computer, each said data structure including a list of all computers on said network that permit caching with respect to the I/O device corresponding to said data structure;
intercepting a write instruction to one of said plurality of I/O devices from said computer; and
communicating over the network individually with each computer in the list of computers in the data structure corresponding to said one of said I/O devices to invalidate data in caches on the network corresponding to said one of said plurality of I/O devices.
'226 Patent, 28:13-30, Exhibit A to First Amended Complaint, Docket Entry No. 64-1, p. 64.
In Poly-America the patentee developed a "blown-film process" for creating textured landfill liners. Id. at 1306. The patented liner was "created by a blowing agent that erupts during the extrusion process," resulting in a textured outer surface for grip and smooth edges for improving integrity. Id. Defendant GSE argued that Ploy-America's patent was invalid as anticipated "in view of a similar liner called Friction Seal that was manufactured via a cast process." Id. at 1309. The question before the court was whether the term "blown-film," found solely in the preamble of the patent's only independent claim, stated a purpose or intended use of the invention, or whether it disclosed a fundamental characteristic of the claimed invention differentiating it from other liners. Observing that the patent's specification contained multiple references to the invention as a "blown-film" liner, that "blown-film" was used repeatedly to describe the preferred embodiments, and that the patentee distinguished the prior art on this basis, the court found that "blown-film" was a "fundamental characteristic" of the invention that was properly construed as limiting. Id. at 1310. In contrast, the term "accelerating access" is not used in the specification, the summary of the invention, or in the description of the preferred embodiment in the '226 patent. Moreover, the patentee did not distinguish the patented invention from prior art on the basis of its ability to accelerate access to certain data. Thus, "accelerating access" used in the preamble of claim 27 of the '226 patent is not analogous to the term "blown-film" analyzed in Poly-America.
Although Google objects to SuperSpeed's proposal to construe "accelerating access" to mean "increasing the speed of access," the excerpts from the specification on which Goolge relies to support its proposed construction all show that increasing the speed of access to certain data is, indeed, one of the purposes for the patented invention. Accordingly, the court construes "accelerating access" to mean "increasing the speed of access."
See Google's Opening Brief, Docket Entry No. 101, p. 5 (citing the abstract for its explanation that caching is done so that "[r]ead access for disk I/O data that is contained within the RAM is returned much faster than would occur if the disk I/O device was accessed directly;" and citing the summary of the invention for explaining that "[t]he data is returned at the faster computer main memory access speed, showing the speed advantage of using a disk cache mechanism").
2. "Data Structure[s]"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"Data Structure[s]" | '226 claims 1-2, 6, 16 17, 27, and 36 | (1) No construction needed; (2) Ordered group of information. | Software construct in the computer where the cache resides |
The term "data structure[s]" appears throughout the specification as well as in claims 1-2, 6, 16-17, 27, and 36 of the '226 patent. Nevertheless, the parties' dispute over "data structure[s]" focuses on this term's use in claim 27. SuperSpeed argues that "data structure[s]" needs no construction because data structures were well known at the time of the invention, and the use of this term in the claims and specification are consistent with this meaning. Alternatively, SuperSpeed argues that the term should be given its ordinary and customary meaning: "ordered group of information." Google argues that its proposed construction is proper because "the weight of the intrinsic evidence shows that the claimed 'data structure' must be implemented in software," and because "[t]he 'data structure' must also be located within the computer where the cache, not the I/O device resides." SuperSpeed argues that Google's proposed construction improperly seeks to limit the term because (1) "it cannot be said that the data structure in the claims exists only 'in the computer where the cache resides;'" and (2) Google's attempt to add a software limitation is unnecessarily redundant and confusing since no one contends that the method described in claim 27 encompasses physical structures being built inside a computer. The dispute between the parties is whether a "data structure" can be an "ordered group of information" or must be a "software construct," and whether the "data structure" must be in the computer where the cache resides.
See Google's Responsive Brief, Docket Entry No. 106, p. 24; and SuperSpeed's Reply Brief, Docket Entry No. 107, p. 24.
SuperSpeed's Opening Brief, Docket Entry No. 100, p. 6 (citing Microsoft Press Computer Dictionary 110 (2d ed. 1994) (defining data structure as "an organizational scheme, such as a record or an array, applied to data so that it can be interpreted and so that specific operations can be performed upon that data;" and IBM Dictionary of Computing 177 (10th ed. 1993) (defining data structure as the "syntactic structure of symbolic expressions and their storage allocation characteristics").
SuperSpeed's Opening Brief, Docket Entry No. 100, p. 6.
See Google's Opening Brief, Docket Entry No. 101, p. 8.
Id.
SuperSpeed's Opening Brief, Docket Entry No. 100, p. 6.
SuperSpeed's Reply Brief, Docket Entry No. 107, p. 24.
It is undisputed that the patented invention is a disk caching technique using software. Therefore, Google's proposal to construe "data structure" to mean a "software construct" would be redundant and confusing. Google's proposal to define "data structure" to limit its situs to the computer where the cache resides is merely an improper attempt to limit the scope of the claims in which this term appears. Google acknowledges that
'226 Patent, 1:5-10, Exhibit A to First Amended Complaint, Docket Entry No. 64-1, p. 51.
[t]he primary challenge to Google's proposal is a citation to the specification showing that some "data structures [can be] within the Open VMS system." . . . SuperSpeed argues that this is evidence of a data structure that "is not contained in the cache." However, Google's construction does not require a data structure located in a cache, but rather only clarifies that the data structure is on the computer where the cache resides. In fact, SuperSpeed's citation is consistent with Google's construction because the Open VMS system is also on the computer where the cache resides.
Google's Responsive Brief, Docket Entry No. 106, p. 24.
Claim 27 of the '226 patent already provides that a "data structure" is created "in the computer." As SuperSpeed points out:
Google's own arguments demonstrate the redundancy of [such a limitation]. Google states that "the [claim] makes clear that the data structure is in the computer where the cache resides." (Doc. No. 101, at 9.) Precisely because the claim language is "clear," there is no need to repeat the limitation.The court agrees. Moreover, since Google agreed at the November 7, 2013, hearing that the plain and ordinary meaning of "data structure[s]" is preferable to SuperSpeed's alternative proposed construction, the court concludes that "data structure[s]" requires no construction.
SuperSpeed's Reply Brief, Docket Entry No. 107, p. 24 (citing '226 Patent 28:18-19).
3. "Communicating Over the Network Individually with Each Computer"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"Communicating over the network individually with each computer" | '226 claim 27 | (1) No construction needed; (2) Using the computer to send a targeted message to each computer. | Using the network to send separate messages targeted to each computer. |
The term "communicating over the network individually with each computer" appears in claim 27 of the '226 patent. The parties agree that this term refers to "using the network to send . . . a message/messages . . . to each computer." The dispute about this term centers on whether to include a qualifier in the definition; SuperSpeed proposes "targeted," while Google proposes "separate." Because this term is a phrase that does not contain any terms of art but, instead, words whose ordinary and customary meaning are clear, the court concludes that this term requires no construction.
B. Terms from the '244 Patent
1. "I/O Device"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"I/O Device" | '226 claims 6-8, 10, 20, 25, 27, 31, and 34 '244 claims 1, 6 7, 15, 20, 25, 31, 32, and 37 | (1) "disk or other persistent storage mechanism;" (2) "disk or other persistent storage" | "disk or other persistent storage device" |
The term "I/O device" is used throughout both the '226 and '244 patents. "I/O" in the term "I/O Device" is an abbreviation for Input/Output. The parties agree that the construction of "I/O Device" should include "disk or other persistent storage." The only dispute is whether the construction should include the term "devices" or "mechanisms." This issue was not addressed in the Oracle or the IBM cases because in both of those cases SuperSpeed either suggested or agreed to constructions that included the word "device." Asserting that "[t]here is no benefit to defining a term with that same term," SuperSpeed cites the IEEE Dictionary definition of "device" in support of its proposed construction: "a mechanism or piece of equipment designed to serve a purpose or perform a function." SuperSpeed argues that "[s]uch a definition clarifies the meaning of 'I/O device' without awkwardly defining the term with the term." Since even the IEEE Dictionary definition of "device" on which SuperSpeed relies treats that term as interchangeable with "mechanism" the court is not persuaded that construing the word "device" to mean "mechanism" provides needed clarity and is, instead, persuaded that the term "device" needs no construction. Thus the disputed term "I/O Device" is construed to mean "disk or other persistent storage device."
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 11 (citing Exhibit C at 13 (showing that both SuperSpeed and Oracle suggested constructions that included the term "device"); and Exhibit D at 7 (showing that SuperSpeed and IBM agreed that "'I/O device' means disk or other persistent storage device")).
Id.
Id. (citing The IEEE Standard Dictionary of Electrical and Electronics Terms (Sixth Edition, 1996), p. 279)).
Id.
2. "Cache," "Caches," and "Caching"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"cache" | '226 and '244 | "a portion of system main memory used for temporary storage of data" | (n), a portion of system main memory used for temporary storage of I/O device data; (v), to store I/O device data in a cache |
"caches" | '226 and '244 | no construction needed | same as above |
"caching" | '226 and '244 | no construction needed | same as above |
The terms "cache," "caches," and "caching" appear throughout both the '226 and '244 patents. The parties agree that "cache" is a portion of system main memory used for temporary storage of data, but disagree as to whether "cache" applies only to data from an I/O device. In the Oracle case the parties agreed that "cache" meant "a portion of system main memory (e.g. RAM) used for temporary storage of data." SuperSpeed argues that it proposes a materially identical construction here, and that its construction is both consistent with the term's use throughout the patents and with the IEEE Dictionary, which defines "cache" as "[a] small portion of high-speed memory used for temporary storage of frequently-used data, instructions, or operands."
Id. at 7 (citing Exhibit C, December 19, 2005, Order entered in SuperSpeed Software, Inc. v. Oracle Corp., Civil Action No. H-04-3409, p. 7).
Id. at 8 (citing Exhibit E, The IEEE Standard Dictionary of Electrical and Electronics Terms (Sixth Edition, 1996), p. 124)).
Google argues that the qualifier "I/O device" should be added to the definition of "cache," "caches," and "caching" because both the intrinsic and extrinsic evidence show that the data stored in the invention's cache is I/O device data. As intrinsic evidence supporting its proposed construction Google cites excerpts from the specification, none of which refer to "I/O device" but, instead, to "disk." Google cites the Detailed Description of the Preferred Embodiment including especially Figures 1A and 1B, which show a "disk I/O device" connected to the cache driver. Relying on these excerpts from the specification and the description of the preferred embodiment, Google argues that "the specification of the '244 patent limits the invention to caching from an I/O device by explaining that 'the invention' of the claim is for 'disk caching.'" Citing the prosecution record for the '244 patent, Google argues that the applicant repeatedly distinguished prior art by stating that the invention caches data from I/O devices not from other sources such as a shared main memory. As extrinsic evidence supporting its proposed construction, Google cites the IBM case where "[t]he parties . . . stipulated [that] . . . '[c]ache' as used as a noun means 'a portion of system main memory used for temporary storage of I/O data in a cache,' and as used as a verb means 'to store I/O data in a cache.'" Thus, Google argues that its proposed construction of the terms "cache," "caches," and "caching," as limited to "I/O device data" is preferable to SuperSpeed's proposed construction, which is not so limited.
Google's Opening Brief, Docket Entry No. 85, p. 12 (citing '244 Patent, 2:23-27, 2:37-41, and 2:46-51).
Id. (citing '244 Patent, 2:23-27, 2:37-41, and 2:46-51, 3:18-26 and Figs. 1A-1B, Exhibit B to First Amended Complaint, Docket Entry No. 64-2, pp. 51-52).
Id. at 11.
Id. at 12-13.
Memorandum Opinion and Order entered in SuperSpeed, L.L.C. v. International Business Machines Corp., Civil Action No. 2-07-cv-89, E.D. Texas at p. 7, Exhibit B to Google's Opening Brief, Docket Entry No. 85.
Google's contention that the specification of the '244 patent supports its proposal to limit the meaning of the terms "cache," "caches," and "caching" by adding the qualifier "I/O device" to their definitions is based on excerpts from the '244 patent's specification that neither define the disputed terms nor clearly and unmistakably disclaim the full scope of their ordinary and customary meaning, which Google acknowledges is not limited to the caching of "I/O device data." Moreover, including "I/O device data" in the definition of "cache," "caches," and "caching," is not supported by the claims in which these terms are used. For example, Claims 15 and 25 of the '244 patent refer in pertinent part to "a plurality of cache drivers . . . for creating a cache in the memory of the computer in which the cache driver resides for caching data from selected ones of said I/O devices." If a cache inherently stored only "I/O device data," as Google proposes, then Claims 15 and 25 of the '244 patent would not need to state that the data cached comes from an I/O device, and this limitation of those claims would be redundant. See Phillips, 415 F.3d at 1314 ("[T]he claim in this case refers to 'steel baffles,' which strongly implies that the term 'baffles' does not inherently mean objects made of steel. This court's cases provide numerous similar examples in which the use of a term within the claim provides a firm basis for construing the term."). Moreover, the term "I/O device" is, itself, a disputed term. The addition of a disputed term to the definition of "cache," "caches," and "caching," would make the court's construction of these terms dependent on its construction of another disputed term, a practice that the Federal Circuit discourages. See ACTV, Inc. v. Walt Disney Co., 346 F.3d 1082, 1090 (Fed. Cir. 2003).
See Google's Opening Brief, Docket Entry No. 85, p. 15 (identifying data from '"pseudo disk I/O devices' such as RAMdisk" as another type of data that can be stored in a cache).
The parties agree that the terms "cache," "caches," and "caching," refer to "a portion of system main memory for temporary storage of data." Despite Google's assertions to the contrary, SuperSpeed did not agree to a materially different definition in the IBM case. There, the parties agreed that the term "cache" meant "a portion of system main memory used for temporary storage of I/O data in a cache," not -- as Google proposes -- "a portion of system main memory used for temporary storage of I/O device data in a cache." Because the ordinary and customary meaning of the disputed terms does not include the source of the data cached and because the source of the data being cached is stated in the claims, the court finds that the proper construction of the disputed term "cache" when used as a noun means "a portion of system main memory used for temporary storage of data;" "caches" is the plural of "cache," and "caching" as the verb form of "cache."
See SuperSpeed's Opening Brief, Docket Entry No. 84, p. 7; Google's Opening Brief, Docket Entry No. 85, p. 10; Google's Responsive Brief, Docket Entry No. 106, p. 4.
See SuperSpeed's Reply Brief, Docket Entry No. 107, p. 7. See also Memorandum Opinion and Order entered in SuperSpeed, L.L.C. v. International Business Machines Corp., Civil Action No. 2-07-cv-89, E.D. Texas at p. 7, Exhibit B to Google's Opening Brief, Docket Entry No. 85-2.
3. "Caching System"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"caching system" | '244 Title and Abstract | (1) no construction needed as the preamble is not limiting; (2) "a related group of elements that provides caching" | "cache coherency system" |
The term "caching system" appears in the preamble for each claim of the '244 patent. SuperSpeed argues that "caching system" needs no construction because it appears in the preamble, and the preamble is not limiting. SuperSpeed explains that the term needs no construction because (1) there is no suggestion in the prosecution history that the inventor added the phrase "caching system" to overcome the prior art; (2) the drafters did not rely on the term "caching system" to define or refine the scope of the asserted claims; and (3) the term "caching system" is simply a descriptive name for the invention that is fully set forth in the bodies of the claims. Alternatively, SuperSpeed argues that if the term requires construction then it should be construed to mean "a related group of elements that provides caching."
SuperSpeed's Reply Brief, Docket Entry No. 107, p. 3.
Google argues that the term "caching system" should be construed to mean "cache coherency system." In support of this argument Google cites intrinsic evidence consisting of the patent title, the language of claims 15 and 25, the abstract, and the prosecution history of the '244 patent. Asserting that the title of the '244 patent is "Method and System for Coherently Caching I/O Devices Across a Network," Google argues that the claims therein are directed to a cache coherency system, not just a system for the temporary storage of data as SuperSpeed's alternative construction connotes. Google argues that its proposed construction is supported by the language of claims 15 and 25 of the '244 patent, which describe use of channels to communicate with cache drivers resident on other computers in the network, and interception of write commands that trigger one cache driver to send messages to invalidate data to the caches of any computer that is caching the same data. Google argues that "[i]f coherency were not an issue, there would be no need for the cache drivers of different computers to communicate with one another, nor would there need to be an invalidate message sent to invalidate data resident in other caches on the network." Google argues that the abstract of the '244 patent supports its proposed construction because it states that "[t]he cache operates across a network of computers systems, maintaining cache coherency for the disk I/O devices." Google argues that the prosecution history supports its proposed construction because in a preliminary amendment sent to the PTO on May 30, 1996, the applicant not only changed the title of the patent from "cache for use on a network" to "a method and system for coherently caching I/O devices across a network," but also stated that
Google's Opening Brief, Docket Entry No. 85, p. 9.
Id.
Id. (quoting Abstract, '244 Patent).
"by devising cache drivers that set up communication channels between themselves across the computer network, the cache drivers are able to remotely communicate with one another and maintain cache coherency" . . . [C]ache coherency is maintained despite the variety of computer architectures supported on the network.Google also argues that when distinguishing the invention from prior art the inventor again stated that the communication channels set up by the cache drivers of the invention were essential for the caching system to maintain cache coherency in a mixed architecture system. Google argues that this intrinsic evidence shows that its construction reflects what the inventors actually purport to have invented, namely, a cache coherency system and that SuperSpeed's alternative construction attempts to broaden the invention to any system for caching.
Google's Responsive Brief, Docket Entry No. 106, p. 4 (quoting Exhibit A, Preliminary Amendment of May 6, 1994, p. 13, Docket Entry No. 106-1, p. 5).
Id. (citing Communication from Robert Asher dated October 22, 1996, Docket Entry No. 85-3 at SS0052102 and SS0052104).
Id. at 3.
In light of the principles for determining when preamble terms are limiting described in § III.A.1, above, the court is not persuaded by Google's argument that the term "caching system" should be construed to mean a "cache coherency system." The word "coherently" appears only in the title of the '244 patent, and the word "coherency" appears only once in the abstract. Neither of these two words appear in any of the claims or elsewhere in the specification. Google cites no authority for reading limitations into a patent from use of a descriptive term in the title, and the Federal Circuit has held that the title of a patent is nearly irrelevant to claim construction. Pitney Bowes, 182 F.3d at 1312.
While the abstract does use the phrase "cache coherency," the context in which that phrase is used shows that maintaining cache coherency is only one of several purposes or intended uses for the invention. When read in its entirety the abstract shows that other purposes include increasing the speed at which data can be accessed by minimizing network traffic and increasing the efficiency of memory use by allowing data to be held in three cache "buckets," and by allowing the user of the cache to specify not only the size of I/O access allocated to each of the three cache "buckets," but also the total amount of main memory used by the cache at any one time. Thus, the description provided in the abstract shows that while maintaining cache coherency is one purpose of the cache system, it is not the only purpose. Nor is the court persuaded that Google's references to the prosecution history support its proposed construction. The two references cited show that the ability to maintain cache coherency is an essential feature of any caching system. The applicant distinguished the present invention on the basis of its ability to maintain cache coherency on a mixed architecture network, i.e., a network consisting of computers with more than one type of operating system.
The term "caching system" is a descriptive term used to introduce the limitations stated in the bodies of the claims by noting that, together, those limitations constitute a "caching system." See Storage Technology, 329 F.3d at 831 (preamble term "policy caching method" did not limit claims because it served only as a "convenient label for the invention as a whole"); IMS Technology, 206 F.3d at 1434 (holding that "[t]he phrase 'control apparatus' in the preamble merely gives a descriptive name to the set of limitations in the body of the claim"). Because the descriptor "caching system" does not embody an essential component of the invention, the use of this term in the preambles is neither part of the invention's essential structure nor necessary to give life, meaning, and vitality to the claims. Indeed, Google argues neither that the claims of the '244 patent describe a structurally incomplete device nor that any language in the bodies of the claim language suggests that the term "caching system" limits those claims to a cache coherency system. Instead, Google cites MEMS Technology Berhad v. International Trade Commission, 447 Fed. Appx. 142, 153-54 (Fed. Cir. 2011), in support of its argument that the term "caching system" used in the preambles is "necessary to give life, meaning, and vitality to the claim[s of the '244 patent]."
Google's Reply Brief, Docket Entry No. 108, pp. 1-2.
In MEMS Technology, 447 Fed. Appx. at 153, the parties disputed whether the term "package" used in the preamble added a limitation "not otherwise present in the claim body." The specification made clear that the essence of the invention was the containment of components in a package, but this characteristic of the invention was absent from the claims. As such, the Federal Circuit held that the use of the term "microelectromechanical system package" in the preamble added a limitation that was necessary to give meaning to the claim because the "package" term added a limitation that was not otherwise present in the claim body. Id. MEMS Technology is inapposite because at issue there was whether a term included in the preamble limited the claim, while at issue here is whether a term not included in the preamble should be read into the preamble in order to make the preamble limiting. Google cites no authority for reading a limitation implied by the title and/or the abstract into claim preambles, and the court is not persuaded that use of the term "coherently" in the title or the term "coherency" in the abstract supports Google's argument that the term "coherency" should be read into the preambles of the claims in the '244 patent. Since Google does not dispute that SuperSpeed's suggested construction, "a related group of elements that provides caching," reflects the ordinary meaning of "caching system," the court is persuaded that SuperSpeed's construction is preferable to Google's. Thus, the court construes the disputed term "caching system" to mean "a related group of elements that provides caching."
4. "Computer Communication Channel"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"computer communication channel" | '244 claims 5, 15, 17, 19, 25, 28, and 30-31 | uniquely identifiable path handling the transfer of data | private connection between a local cache driver and a remote cache driver |
The term "computer communication channel" appears in claims 5, 15, 17, 19, 25, 28, and 30-31 of the '244 patent. The parties agree that a computer communication channel handles the transfer of data. SuperSpeed argues that its proposed construction properly limits the term to uniquely identifiable paths for those transfers, while Google's proposed construction improperly limits the term to "private" connections between "a local cache driver and a remote cache driver." Quoting Aventis Pharma S.A. v. Hospira, Inc., 675 F.3d 1324, 1330 (Fed. Cir. 2012), SuperSpeed argues that a disputed term should be given a narrow interpretation "only . . . when a patentee sets out a definition and acts as [its] own lexicographer, or [] when the patentee disavows the full scope of a claim term either in the specification or during prosecution." See also Thorner, 669 F.3d at 1365 (explaining that Federal Circuit will only interpret a claim term more narrowly than its ordinary meaning under two circumstances: "(1) when a patentee sets out a definition and acts as his own lexicographer, or (2) when the patentee disavows the full scope of a claim term either in the specification or during prosecution").
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 14.
Id. at 14.
SuperSpeed contends that the narrow definition proposed by Google is inappropriate because the patentee has neither assigned a particular meaning to the term "computer communication channel" nor limited the scope of that term in the specification. SuperSpeed also argues that the IEEE Dictionary's definition of "communication channel" as "[a] facility that permits signaling between terminals" is consistent with language in both the claims and the specification, i.e., "[i]n the context of the patents-in-suit . . . 'signaling' consists of the transfer of data between two points, which accords with SuperSpeed's proposed construction of 'uniquely identifiable data path handling the transfer of data.'" SuperSpeed contends that the "private connection" limitation in Google's proposed construction breaches the plain and ordinary meaning rule because the word "private" does not appear anywhere in the '244 patent and only appears in the file history in the context of the prior art. Consequently, SuperSpeed argues that the term "private" should not be read into this term.
Id.
Id. at 15.
Google argues that its proposed construction for "computer communication channel" properly defines the scope of the term within the context of the intrinsic records, including statements and amendments made by SuperSpeed during the reexamination of a grandchild patent of the patents-in-suit, i.e., U.S. Patent No. 7,017,013 ("'013 patent"), while SuperSpeed's proposed construction "injects more uncertainty and improperly broadens this claim term to cover all networked communications by introducing the vague and ambiguous phrase 'uniquely identifiable data path' into its proposed construction." In support of this argument, Google asserts that "[t]he portions of the '244 specification that SuperSpeed indicates support its construction do not discuss 'identifiable' [or uniquely identifiable] communication channels." Google explains that according to the '244 patent, a communication channel is set up when the cache software on one computer identifies another computer on the network running the cache software. According to Google, the cache software, also known as the "cache driver," polls the system for remote computers with a cache driver. When a remote computer with a cache driver is found a single communication channel between the two cache systems is established. Thereafter, the software disables polling for the same remote system again, ensuring that only one connection is formed between the two cache systems. Google contends that the disclosure of the computer communication channel element is not so much an identifiable data path as it is a single communication channel between cache drivers, wherein each cache driver forms a single private channel with each other cache driver on the network. Although Google fails to cite any evidence from within the '244 patent for identifying the communication channel formed as "private" Google's recognition and acknowledgment that there is only one communication channel formed between two cache drivers supports SuperSpeed's proposed construction that "computer communication channel" means a uniquely identifiable, i.e., single, path handling transfer of data. Accordingly, the disputed term "computer communication channel" is construed to mean a "uniquely identifiable data path handling the transfer of data."
Google's Opening Brief, Docket Entry No. 85, p. 18.
Id. at 18-19.
Id. at 19 (citing '244 Patent, Col 7:60-65, Exhibit B to First Amended Complaint, Docket Entry No. 64-2, p. 54).
5. "Caching Data from Selected Ones of Said I/O Devices"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"caching data from selected ones of said I/O Devices" | '244 claims 15, 25, and 37 | (1) no construction needed; (2) caching data from certain I/O devices or caching data from one or more I/O devices | "caching data from user specified I/O devices" |
The term "caching data from selected ones of said I/O devices" appears in claims 15, 25, and 37 of the '244 patent. The court has separately construed "caching" and "I/O device," so the only portion of this term that requires construction is "selected ones." SuperSpeed argues that its proposed construction is preferable to Google's because the term "selected ones" needs no construction or because its construction is consistent with the specification and its use throughout the claims to refer to "one or more" I/O devices or communication channels. Thus, SuperSpeed proposes that "selected ones" be construed to mean "one or more." Alternatively, SuperSpeed argues that
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 12. See also SuperSpeed's Reply Brief, Docket Entry No. 107, p. 14 (citing Exhibit E, the '244 Patent, at 26:63 and 27:9).
SuperSpeed's Reply Brief, Docket Entry No. 107, p. 14.
Google's briefing also raises a workable alternative. Google explains that "the use of the phrase 'selected ones,' indicates that the patentee intended for only data from certain I/O devices, chosen from [a] plurality connected to a network, be cached." (Doc. No. 85, at 18 (emphasis added).) SuperSpeed agrees, and believes that "one or more" captures that selection. To make that clear, SuperSpeed proposes as an alternative construction the very language Google suggests: "caching data from certain I/O devices."
Id. (quoting Google's Opening Brief, Docket Entry No. 85, p. 18).
Google, seeks to read into the term the limitation "user specified I/O devices," meaning that the I/O devices must be selected by a "user." Asserting that "[t]he only disclosure in the '244 patent and its prosecution history for how that selection is accomplished is by the user," Google argues that "[n]o other means of selection is disclosed or taught." Quoting the specification, Google argues that "[i]n accordance with the embodiment of the invention, the computer user has control over which disks on the computer system will be included in the caching and which disks on the computer system are to be excluded from the caching." Google argues that the specification also teaches that by default all of the disk I/O devices initially identified are stopped from being cached "until the user selectively includes this disk I/O device in the set of cached disks by the appropriate CACHE user command." Thus, Google argues that "[i]t is clear from the context of the specification that the "selected ones" of I/O devices are devices selected by a computer user. As additional support for its proposed construction, Google argues that SuperSpeed expressed a "clear intention to limit claim scope" by stating that in "the embodiment to the invention, the computer user, has control over which disks on the computer system will be included in the caching and which disks on the computer system are to be excluded from caching." Google concludes that its construction is grounded in evidence showing that selection requires user choice.
Google's Opening Brief, Docket Entry No. 85, p. 16.
Id.
Id. at 17 (quoting Exhibit A, the '244 Patent, at 1:62-65).
Id. (quoting Exhibit A, the '244 Patent, at 6:36-47).
Google's Responsive Brief, Docket Entry No. 106, p. 6 (citing Docket Entry No. 85, and Exhibit I thereto, the '244 Patent, at 1:62-65).
Asserting that the terms "user" and "user specified" do not appear in the claims, SuperSpeed argues that Google's proposed construction is an improper attempt to limit the invention based on a description of the preferred embodiment in the specification. SuperSpeed also argues that Google's proposed construction ignores a key distinction between the patented technology and the prior art, i.e., use of targeted invalidations. SuperSpeed argues that Google's proposed construction would be improper because "[e]ven assuming that the preferred embodiment was the only possible embodiment (it is not), the specification also contemplates situations where I/O devices are selected or excluded by the software, absent any input from the user." As evidence of this SuperSpeed argues that Claim 15 of the '244 patent shows that term refers to targeted as opposed to broadcast invalidations. The fourth limitation of Claim 15 describes "caching selected ones of said I/O devices," while the fifth limitation describes "send[ing] a message to invalidate data through selected ones of the communication channels to the caches of any computer that is caching said one of said plurality of I/O devices." SuperSpeed argues that
SuperSpeed's Reply Brief, Docket Entry No. 107, p. 14.
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 12.
[n]othing in the claims or specification indicates that these communication channels are "user specified" or even that a user could specify a particular communications channel. It would make no sense for "selected ones" to mean one thing in limitation four and something completely different in limitation five.SuperSpeed explains that
[t]ogether, [these claims] describe a system where only certain I/O devices are cached and invalidation messages are targeted only to certain computers (i.e., those user computers that are caching a given I/O device). [SuperSpeed insists that] "[w]hat matters is not what performs the selection, but whether selection occurs at all. SuperSpeed's proposed construction accurately captures this nuance, while Google's mistakes a characteristic of one of the invention's embodiments for the invention itself.
SuperSpeed's Reply Brief, Docket Entry No. 107, p. 16.
Id. at 15.
SuperSpeed also argues that user-specified is not a requirement of the claims. SuperSpeed explains that although the specification's "presently preferred embodiment" gives the user some (but not total) control over which I/O devices the invention caches, nothing about the claim language indicates that this is the only possible manner in which the invention can select I/O devices. In other words, SuperSpeed argues that the system, and not solely the user, will identify which I/O device(s) to cache. As evidence of this, SuperSpeed points to Figure 4A, which identifies conditions under which the system will select against caching data from I/O devices even if those devices have been selected by a user.
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 13.
Id.
Because the term "selected ones" is used twice in Claim 15, once in reference to I/O devices, and once in reference to communication channels, Google's suggested construction would create inconsistency within the claim limitations by requiring the term "selected ones" to be construed to mean "user specified" when used in reference to I/O devices, but not when used in reference to communication channels. Google's proposed construction would require "selected ones" to mean one thing in the fourth limitation of claim 15 and something else in the fifth limitation. Such contradictory constructions should be avoided. See Phillips. 415 F.3d at 1314 ("Because claim terms are normally used consistently throughout the patent, the usage of a term in one claim can often illuminate the meaning of the same term in other claims."). The fact that the specification states that the preferred embodiment allows a computer user to control which disks on the computer system will be included in the caching does not support Google's proposed construction because I/O devices are not limited to disks, but are, instead, "disks and other persistent storage devices." Since, moreover, Google has acknowledged that "the use of the phrase 'selected ones,' indicates that the patentee intended for only data from certain I/O devices, chosen from [a] plurality connected to a network, be cached," and since SuperSpeed has agreed that use of the qualifier "certain" would reasonably resolve the dispute about the term at issue, the court construes the disputed term "caching data from selected ones of said I/O Devices" to mean "caching data from certain I/O devices."
Google's Opening Brief, Docket Entry No. 85, p. 18.
6. "Executable Remote Messaging Code"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"executable remote messaging code" | '244 claims 1, 4, 6, 15, 19, and 25 | (1) "software that enables remote messaging; (2) software capable of using a computer communication channel | "software that performs remote messaging" |
The term "executable remote messaging code" appears in claims 1, 4, 6, 15, 19, and 25 of the '244 patent. The parties agree that the term refers to software, but disagree as to whether that software "enables" or "performs" remote messaging. In regard to other similarly worded terms, i.e., "executable interception code" and "executable invalidate code," the parties have agreed that use of the term "executable . . . code" means software that performs the identified action, i.e., the parties agree that "executable interception code" means "software that performs interception," and that "executable invalidate code" means "software that performs invalidation." Nevertheless, SuperSpeed argues that "executable remote messaging code" should be construed to mean "software that enables remote messaging" instead of "software that performs remote messaging." In support of its proposed construction, SuperSpeed argues that
Joint Claim Construction and Prehearing Statement, Docket Entry No. 66, p. 2. See also Joint Claim Construction Chart, Exhibit A to Joint Claim Construction Chart, Docket Entry No. 111-1.
[t]he patent teaches that "executable remote messaging code" can "form[] computer communication channel[s]," Exhibit B, at 28:5-7, and that those channels are used to "send a message to each of the remote cache drivers," id. at 3:41-42. The specification therefore contemplates that "executable remote messaging code" is not limited to performing messaging (as Google suggests); rather, it can create the channels through which those messages are sent.
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 16.
Google counters that the claims and preferred embodiment described in the specification of the '244 patent show that "executable remote messaging code" is software that performs remote messaging by (1) forming computer communication channels; (2) saving a remote connection address for each communication channel formed; and (3) using the communication channels to send cache-related messages. SuperSpeed does not dispute that the "executable remote messaging code" performs remote messaging; but SuperSpeed argues that because "executable remote messaging code" forms computer communication channels that are used to send caching-related messages that "executable remote messaging code" is not limited to performing remote messaging.
Google's Opening Brief, Docket Entry No. 85, pp. 21-22 (citing the specification (3:35-44) and Claims 15 and 25 of the '244 Patent)).
SuperSpeed's argument is belied, however, by its failure to show how "executable remote messaging code" could possibly form communication channels or save remote addresses without performing remote messaging. According to the specification of the '244 patent, a communication channel is formed when the cache software on one computer identifies another computer on the network running the cache software, the program routines "message receive" and "someone found us" are called, and the remote connection addresses are saved within the software. The specification, therefore, makes clear that "executable remote messaging code" is software that performs remote messaging between cache drivers. The conclusion that "executable remote messaging code" is software that performs remote messaging is corroborated by the parties' agreement that in other contexts use of the term "executable . . . code" means software that performs an identified action. See Phillips, 415 F.3d at 1314 ("claim terms are normally used consistently throughout the patent"). For these reasons the court construes "executable remote messaging code" to mean "software that performs remote messaging."
'244 patent at 7:48-8:20, Exhibit B to First Amended Complaint, Docket Entry No. 64-2, p. 54.
Joint Claim Construction and Prehearing Statement, Docket Entry No. 66, p. 2. See also Joint Claim Construction Chart, Exhibit A to Joint Claim Construction Chart, Docket Entry No. 111-1.
7. "Saving a Remote Connection Address for Each of the Communication Channels"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"saving a remote connection address for each of the communication channels" | '244 claims 1, 15, and 25 | (1) no construction needed; (2) "saving the character or group of characters representing each of the communication channels" | "Locally storing the network location of a remote computer associated with a remote cache driver for each private connection between the local cache driver and the remote cache driver." |
The term "saving a remote connection for each of the communication channels" appears in claims 1, 15, and 25 of the '244 patent. SuperSpeed argues that no express construction is needed to explain this term. Alternatively, SuperSpeed argues that the term "remote connection address" should be construed to mean "character or group of characters representing each of the communication channels." In support of this argument SuperSpeed cites the IEEE Dictionary's definition for "address" as a "number, character or group of character[s] that identifies a given device or storage location." SuperSpeed argues that the court should reject Google's proposed construction because it attempts to insert three separate limitations that are not supported by the intrinsic or the extrinsic evidence but, instead, are imported from the preferred embodiment described in the specification. SuperSpeed argues that Google improperly insists that (1) "saving" refers only to "locally storing;" (2) "connection address" refers only to a specific "network location" and the "remote connection address for [a] communication channel" cannot be the address for the communication channel but, instead, must be the address of a remote computer associated with a remote cache driver; and (3) "computer communication channel" means "private connection between the local cache driver and the remote cache driver," i.e., the construction that Google suggested for that disputed term, which the court addressed in § III.B.4, above. Asserting that the claims and specification are agnostic about where remote connection addresses are saved, SuperSpeed argues that Google's first two proposed limitations represent an improper attempt to limit the scope of these terms to the preferred embodiment described in the specification.
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 17.
Id. (citing Exhibit E, The IEEE Standard Dictionary of Electrical and Electronics Terms (Sixth Edition, 1996), p. 124)).
Google argues that "the parties' dispute centers on what is saved with respect to the communication channels and where that information is saved." Asserting that the claims describe communications between cache drivers resident on network computers, Google argues that what is saved is a list of remote computers, and that the list of remote computers is stored locally, i.e., within the cache driver resident on each computer.
Google's Opening Brief, Docket Entry No. 85, p. 26.
Id. at 27.
The claim language requires the "executable remote messaging code" to save remote connection addresses. Google neither provides a definition for "storing" nor states why "storing" explains "saving." Nor has Google persuaded the court that the saving must occur "locally." As evidenced by step 100 of Fig. 2C and the accompanying description at 7:48-8:20, the patent contemplates that both the local and the remote cache drivers will save the connection address, meaning that the saving is done both locally and remotely. Moreover, Google's proposal to limit use of the word "address" to "network location" finds no support in the excerpts from the specification that Google cites because the specification makes clear that the information saved is information needed to connect to another computer system, not to that computer's location on the network. For the reasons stated in § III.B.4, above, the court construed "computer communication channel" to mean a "uniquely identifiable data path handling the transfer of data," not a "private connection between the local cache driver and the remote cache driver." The court concludes that the term "saving a remote connection address for each of the communication channels" requires no construction.
See '244 patent Fig. 2C and 7:48-8:20, Exhibit B to First Amended Complaint, Docket Entry No. 64-2, p. 9 (Fig. 2C) and p. 54 (accompanying description).
Google's Opening Brief, Docket Entry No. 85, p. 27 ("According to the preferred embodiment . . . the message is sent to the particular remote . . . system specified in the remote connection. . . The . . . list thus contains a list of the remote computers associated with each computer communication channel so that messages may be sent to that specified location.").
8. "Means for Intercepting a Read Instruction to One of Said Plurality of I/O Devices" and "Means for Intercepting a Write Instruction to One of Said Plurality of I/O Devices"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"means for intercepting a read instruction to one of said plurality of I/O devices from the computer on which said cache driver resides;" "means for intercepting a write instruction to one of said plurality of I/O devices" | '244 claims 7, 20, and 32 '244 claims 6, 15, and 31 | Function: Intercepting a read (or write) instruction to one of said plurality of I/O devices from the computer on which said cache driver resides Correspondinq Structure: A computer executing a software algorithm that replaces the I/O entry point for an I/O device with the entry point to the cache driver. | Function: Interceptinq a read (or write) instruction to one of said plurality of I/O devices from the computer on which said cache driver resides Correspondinq Structure: The "io intercept global" program flow, steps, and data structures disclosed or referred by Fig. 2B and 6:24-65 of the '244 patent. |
The two terms referenced above will be discussed together because they relate to intercepting either a read or write instruction, and because the constructions proposed by both parties are the same for both terms. The parties agree that these two terms are mean-plus-function claims and that the recited functions should be given the meaning "intercepting a read instruction to one of said plurality of I/O devices from the computer on which said cache driver resides," and "intercepting a write instruction to one of said plurality of I/O devices from which said cache driver resides," respectively. The parties disagree about the corresponding structure. SuperSpeed argues that the corresponding structure should be "a computer executing a software algorithm that replaces the I/O entry point for an I/O device with the entry point to the cache driver," while Google argues that the corresponding structure should be "the 'io intercept global' program flow, steps and data structures disclosed or referred to by Fig. 2B and 6:24-65 of the '244 patent."
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 27.
Google's Opening Brief, Docket Entry No. 85, pp. 28-30.
SuperSpeed argues that the parties' dispute was raised in the IBM case and resolved by Judge Everingham who held the corresponding structure to be "a computer executing a software algorithm that replaces the I/O entry point for an I/O device with the entry point to the cache driver." Citing Harris Corp. v. Ericsson, 417 F.3d 1241, 1254 (Fed. Cir. 2005), for its construction of "time domain processing means" as "a microprocessor programmed to carry out a two-step algorithm in which the processor calculates generally non-discrete estimates and then selects the discrete value closest to each estimate," SuperSpeed argued that its summary of the part of the algorithm that "intercepts" in the patent suffices as recited means corresponding to the function. Finding SuperSpeed's argument persuasive, Judge Everingham reasoned that SuperSpeed's construction provided sufficient detail to satisfy the requirements of the holding in Harris, 417 F.3d at 1254. Although the '226 -- not the '244 -- patent was at issue in that case, the detailed description of the preferred embodiment provided by the '244 patent contains identical language to that on which Judge Everingham relied:
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 28 (citing Exhibit D, Memorandum Opinion and Order at p. 18). See SuperSpeed, 2009 WL 383255, *10.
When an I/O device is found to be one of the disk device types supported by the cache software of the invention (70), the program intercepts the I/O entry point for the I/O device (74) by replacing it with an entry into the program routine "process io" (400, FIG. 5A) within the cache software of the invention. A TCB (16, FIG. 1B) disk control structure for the disk I/O device is built (76). . .See SuperSpeed, 2009 WL 383255, *10 (quoting the same language from the '226 patent). As it did in the IBM case, SuperSpeed argues that this language shows that Google's proposed construction is too broad because the "io intercept global" subroutine includes structure that is not linked to the claimed invention, and that it is too narrow because it ignores the "i/o intercept device" subroutine, which relates to subsequent interceptions once the cache driver is operational. SuperSpeed argues that its proposed "construction is broad enough to accurately reflect that the 'means for intercepting' includes structure for intercepting read or write instructions after the cache driver is initialized."
‘244 Patent 6:36-43, Exhibit B to First Amended Complaint, Docket Entry No. 64-2, p. 53.
SuperSpeed's Opening Brief, Docket Entry No. 84, pp. 28-29.
Id. at 29.
Citing Aristocrat Technologies Australia PTY Ltd. v. International Game Technology, 521 F.3d 1328, 1334 (Fed. Cir.), cert. denied, 129 S. Ct. 754 (2008), Google argues that SuperSpeed's structure construction is improper because it simply describes the outcome of the interception algorithm, i.e., replacing the I/O entry point instead of identifying the algorithm itself. In Aristocrat the court found that language Aristocrat argued was the equation only described "the result of practicing the . . . function. That is, the equation is not an algorithm that describes how the function is performed, but is merely a mathematical expression that describes the outcome of performing the function." Id. In the IBM case Judge Everingham rejected this same argument and distinguished Aristocrat by explaining that "replacing the I/O entry point with an entry point into a different routine" is not the result of the algorithm, it is how the algorithm performs the function of intercepting the instruction." SuperSpeed, 2009 WL 383255, *10. Google does not dispute this conclusion. Instead, Google argues that
[i]t is clear from the specification that it is not any software algorithm that replaces the I/O entry point with any other entry point, but rather that the "io intercept global" program replaces the I/O entry point with the "process io" entry point. The steps of this algorithm are clearly described in the specification and illustrated in Figure 2B of the '244 patent. . . [T]he '244 patent discloses a specific algorithm for carrying out the recited function, and the term must be limited to it.Because like Judge Everingham this court is persuaded that replacing the I/O entry point with an entry point into a different routine is not the result of the algorithm but is, instead, how the algorithm performs the function of intercepting the instruction, the court concludes that the corresponding structure for the two terms is: "a computer executing a software algorithm that replaces the I/O entry point for an I/O device with the entry point to the cache driver."
Google's Opening Brief, Docket Entry No. 85, p. 29.
9. "Means for Using the Computer Communication Channels to Invalidate Data in the Caches of Any Computer that is Caching Said One of Said Plurality of I/O Devices"
Disputed Term | Patent | SuperSpeed's Construction | Google's Construction |
"means for using the computer communication channels to invalidate data in the caches of any computer that is caching said one of said plurality of I/O devices" | '244 claim 31 | Function: Usinq the computer communication channels to invalidate data in the caches of any computer that is caching said one of said plurality of I/O devices. Structure: A computer executing software algorithm that sends a message indicating the invalidity of certain data found on an I/O device to the cache software on remote computers that are caching data from the given I/O device and its equivalents | Function: Usinq the computer communication channels to invalidate data in the caches of any computer that is caching said one of said plurality of I/O devices. Structure: The "write invalidate" and "invalidate disk" program flow, steps, and data structures disclosed or referred by Figs. 5L, 5M, 5P and 22:28-24:14 of the '244 Patent |
The parties agree the term "means for using the computer communication channels to invalidate data in the caches of any-computer that is caching said one of said plurality of I/O devices" is a mean-plus-function claim limitation and that the recited function means "using the computer communication channels to invalidate data in the caches of any computer that is caching said one of said plurality of I/O devices." The parties disagree, however, on the corresponding structure. SuperSpeed proposes that the corresponding structure should be "a computer executing software algorithm that sends a message indicating the invalidity of certain data found on an I/O device to the cache software on remote computers that are caching data from the given I/O device and its equivalents." In support of its proposal SuperSpeed asserts that the specification of the '226 patent teaches:
SuperSpeed's Opening Brief, Docket Entry No. 84, pp. 28-29.
The cache driver (10) maintains remote message communication channels (18) with other cache drivers loaded on other computers that can access a common set of disks (12). Whenever the Op&nVMS system (14) changes the data on the disk (12), fox example by doing a write data access to the disk (12), the cache driver (10) uses its remote message communication channels (18) to send a message to each of the remote cache drivers in the list contained in the TCB (16) disk control structure. . . . The [remote] cache driver (10) would use this incoming message to invalidate any possible previously locally cached data for the area on the remotely connected disk (12) that has been changed by the remote OpenVMS system.SuperSpeed thus argues that "the specification teaches that the computer executes aspects of the cache driver software to send an invalidate message to other networked computers that are also caching certain data from an I/O device."
Id. at 30 (quoting '226 patent, Exhibit B to First Amended Complaint, Docket Entry No. 64-2, at 3:34-50, and citing id. at 5:36-41, 23:48-54, Fig. 5M, boxes 638-640).
Id.
Google argues that the corresponding structure should be "the 'write invalidate,' and 'invalidate disk' program flows, steps and data structures disclosed or referred to by Figs. 5L, 5M, 5N, and 5P, and 22:28-24:14 of the '244 patent." In support of its proposed construction Google argues that "it is plain from the '244 specification, as shown in Figures 5M and 5P, that the means for using the computer communication channels to invalidate data is disclosed as the 'write invalidate' and 'invalidate disk' program flows." Google argues that the structure it has identified is the precise algorithm used by the cache driver of the invention for performing the recited function, while SuperSpeed has only proposed a summary description.
Google's Opening Brief, Docket Entry No. 85, p. 29.
Id. at 31 (citing '244 patent at 23:37-24:14, Exhibit B to First Amended Complaint, Docket Entry No. 64-2, p. 62).
SuperSpeed counters that Google's proposed construction is too broad because it not only includes structure for using the communication channels but also for performing the actual invalidation. In support of its argument SuperSpeed points out that this term was addressed in the IBM case, where the court rejected as "too broad" nearly the same structure that Google is proposing here. Google does not deny that the structure it has identified provides the means not only for using the communication channels but also for performing the actual invalidation. SuperSpeed's structure describes the structure that is needed to use the communication channels to send an invalidate message in terms that are sufficiently descriptive under Harris, 417 F.3d at 1254, the court concludes that the corresponding structure for this term is: "a computer executing a software algorithm that sends a message indicating the invalidity of certain data found on an I/O device to the cache software on remote computers that are caching data from the given I/O device and its equivalents."
SuperSpeed's Opening Brief, Docket Entry No. 84, p. 29 (citing Exhibit D, Memorandum Opinion and Order at p. 23). See SuperSpeed, 2009 WL 383255, *12.
10. "Executable . . . Code"
Google argues that the following five terms, each lacking "means" or "means for" language, and each using "executable . . . code" should be construed according to 35 U.S.C. § 112, ¶ 6 as means-plus-function claims: (a) "Executable remote messaging code that forms a computer communication channel with any other of said computers on said network via which messages relating to caching may be communicated with cache drivers on any of said computers on said network;" and (b) "Executable remote messaging code that forms a computer communication channel with a cache driver on any of the other computers on said network via which messages relating to caching may be communicated;" (c) "Executable remote messaging code further saving a remote connection address for each of the communication channels;" (d) "Executable invalidate code that sends a message to invalidate data through selected ones of the communication channels to the caches of any computer that is caching said one of said plurality of I/O devices;" and (e) "Executable interception code for intercepting a write instruction to one of said plurality of I/O devices." Citing MIT, 462 F.3d at 1344, Google argues that all of these uses of the construct "executable . . . code" should be construed as means-plus-function claims because "executable . . . code" is used as a synonym for "means" and, consequently, does not recite sufficiently definite structure. As evidence of this, Google points out that
See Google's Opening Brief, Docket Entry No. 85, pp. 23-26; SuperSpeed's Reply Brief, Docket Entry No. 107, pp. 25-28, especially p. 25 n.7; Google's Reply Brief, Docket Entry No. 108, p. 7 ("SuperSpeed correctly identifies the dispute here, namely whether or not several terms of the patents-in-suit should be construed as means-plus-function claim terms under 35 U.S.C. § 112, ¶ 6."); Joint Claim Construction Chart, Exhibit A to Joint Claim Construction Chart, Docket Entry No. 111-1.
. . . Claim 15 of the '244 patent recites "executable interception code for intercepting a write instruction" . This same concept is also recited in Claim 31 stating a "means for intercepting a write instruction . . ." The language is identical but for the fact that "code" and "means" are used interchangeably.
Google's Reply Brief, Docket Entry No. 108, p. 8 (citing '244 patent at 27:5-7 and 28:37-38, Exhibit B to First Amended Complaint, Docket Entry No. 64-2, p. 64).
"Means-plus-function claiming applies only to purely functional limitations that do not provide the structure that performs the recited function." Phillips, 415 F.3d at 1311. "[A] claim term that does not use 'means' [or 'means for'] will trigger the rebuttable presumption that § 112, ¶ 6 does not apply." CCS Fitness, 288 F.3d at 1369. This presumption "is a strong one that is not readily overcome." DePuy Spine, Inc. v. Medtronic Sofamor Danek, Inc., 469 F.3d 1005, 1023 (Fed. Cir. 2006), cert. denied, 128 S. Ct. 58 (2007). In MIT, 462 F.3d at 1356, the Federal Circuit stated:
"We have seldom held that a limitation not using the term 'means' must be considered to be in means-plus-function form," and "the circumstances must be [unusual] to overcome the presumption". . . . [I]n considering whether a claim term recites sufficient structure to avoid application of section 112 ¶ 6, we have not required the claim term to denote a specific structure. Instead, we have held that it is sufficient if the claim term is used in common parlance or by persons of skill in the pertinent art to designate structure, even if the term covers a broad class of structures and even if the term identifies the structures by their function.In MIT the court used these principles to analyze two terms: "colorant selection mechanism" and "aesthetic correction circuitry." The court's analysis was controlled by two factors: (1) whether term was "generic" and, if so, (2) whether the supporting claim language sufficiently defined the otherwise generic term.
The Court held that the first term, "colorant selection mechanism" was a generic term in which "mechanism" was synonymous with "means." Id. at 1354 ("The generic terms 'mechanism,' 'means,' 'element' and 'device,' typically do not connote sufficiently definite structure [to avoid § 112, ¶ 6]."). Because "colorant selection," which modified "mechanism," was "not defined in the specification and ha[d] no dictionary definition, and there [wa]s no suggestion that [it had] a generally understood meaning in the art," the Court held that the term "colorant selection mechanism" should be construed pursuant to § 112, ¶ 6. Id. Applying the same standard to "aesthetic correction circuitry" the Court reached a different result. Unlike the generic term "mechanism," the Court found that other courts and contemporaneous dictionary definitions treated the term "circuitry" as connoting structure. Id. at 1355. The Court found that the modifier "aesthetic correction" describing "the function of the circuit, connoted sufficient structure to one of ordinary skill in the art to avoid § 112, ¶ 6 treatment." Id. at 1355. Applying these same two factors to "executable . . . code," the court concludes that this term, too, provides sufficient structure to one of ordinary skill in the art to avoid § 112, ¶ 6 treatment.
Here, the parties agree that "executable interception code" means "software that performs interception," and that "executable invalidate code" means "software that performs invalidation." For the reasons stated in § III.B.6, above, the court has already decided that "executable remote messaging code" means "software that performs remote messaging." Nevertheless, Google argues that the word "code" is a generic term that serves essentially as a placeholder for the word "means," which does not actually claim any definite or limiting structure. Google also argues that the modifiers "executable interception," "executable invalidate," and "executable remote messaging," do not remedy this deficiency and fail to add sufficient structure to the generic term "code" because these modifiers are not defined in the specification and have no generally understood meaning. Thus, Google argues that the claims using the "executable . . . code" construct is subject to 3 5 U.S.C. § 112, ¶ 6 because they do not identify sufficient structure to a person of ordinary skill in the art.
Joint Claim Construction and Prehearing Statement, Docket Entry No. 66, p. 2.
--------
The court finds that the disputed "executable . . . code" terms are not subject to § 112, ¶ 6. The Federal Circuit has recognized a "strong" presumption that claim language lacking the word "means" is not subject to § 112, ¶ 6, and Google has failed to overcome that presumption. Google argues that "code" is a generic term but has not cited any cases in which a court has so held. In contrast, SuperSpeed has cited several cases in which courts have addressed similar arguments and held that "executable code" and similar terms such as "executable software" and "computer code" recite sufficient structure to avoid § 112, ¶ 6. See. e.g.. Mirror Worlds, LLC v. Apple, Inc., 742 F. Supp. 2d 875, 894 (E.D. Tex. 2010), aff'd 692 F.3d 1351 (Fed. Cir. 2012), cert. denied, 133 S. Ct. 2856 (2013) ("executable code is structure"); Aloft Media, LLC v. Adobe Systems, Inc., 570 F. Supp. 2d 887, 897-98 (E.D. Tex. 2008) ("when the structure-connoting term 'computer code' is coupled with a description of the computer code's operation . . . sufficient structural meaning is conveyed to persons of ordinary skill in the art"); RLS, Inc. v. Allscripts Healthcare Solutions, Inc., 2013 WL 3772472, *14-*15 (S.D. Tex. July 16, 2013) (recognizing "executable software" as sufficient structure). Moreover, in each of the terms at issue, "executable . . . code" is modified by language that describes the code's functioning within the invention, i.e., performs interception, performs invalidation, and performs remote messaging. For these reasons the court concludes that Google has failed to rebut the "strong presumption" that lack of the word "means" in the claims at issue removes them from the purview of 3 5 U.S.C. § 112, ¶ 6, and that the "executable . code" terms recited here describe sufficient structure to avoid § 112, ¶ 6. See Aloft Media, 570 F.2d at 897-98 ("when the structure connoting term 'computer code' is coupled with a description of the computer code's operation . . . sufficient structural meaning is conveyed to persons of ordinary skill in the art").
IV. ORDER
For the reasons stated above, the court adopts the following constructions for the disputed terms of the '226 and '244 patents:
Disputed Term | Patent | Construction |
accelerating access | '226 | increasing the speed of access |
data structure | '226 | no construction required |
communicating over the network individually with each computer | '226 | no construction required |
I/O device | '244 | disk or other persistent storage |
cache | '244 | a noun meaning a portion of system main memory used for temporary storage of data |
caches | '244 | plural of "cache" |
caching | '244 | verb form of "cache" |
caching system | '244 | a related group of elements that provides caching |
computer communication channel | '244 | uniquely identifiable path handling the transfer of data |
caching data from selected ones of said I/O devices | '244 | caching data from certain I/O devices |
executable remote message code | '244 | software that performs remote messaging |
saving a remote connection address for each of the communication channels | '244 | no construction required |
means for intercepting a read instruction to one of said plurality of I/O devices from the computer on which said cache driver resides | '244 | Function: Interceptinq a read instruction to one of said plurality of I/O devices from the computer on which said cache driver resides Correspondinq Structure: A computer executing a software algorithm that replaces the I/O entry point for an I/O device with the entry point to the cache driver |
means for intercepting a write instruction to one of said plurality of I/O devices from the computer on which said cache driver resides | '244 | Function: Interceptinq a write instruction to one of said plurality of I/O devices from the computer on which said cache driver resides Correspondinq Structure: A computer executing a software algorithm that replaces the I/O entry point for an I/O device with the entry point to the cache driver |
Disputed Term | Patent | Construction |
means for using the computer communication channels | '244 | Function: Usinq the computer communication channels to invalidate data in the caches of any computer that is caching said one of said plurality of I/O devices Structure: A computer executinq software algorithm that sends a message indicating the invalidity of certain data found on an I/O device to the cache software on remote computers that are caching data from the given I/O device and its equivalents |
executable . . . code | '244 | not subject to 35 U.S.C. § 112, ¶ 6 |
SIGNED at Houston, Texas, on this 14th day of January, 2014.
__________
SIM LAKE
UNITED STATES DISTRICT JUDGE