Nazomi Communications Inc v. Nokia Corporation et al
Filing
441
Order Construing Claims of 7,080,362 and 7,225,436 patents. Signed by Judge Whyte on 6/14/2013. (rmwlc2, COURT STAFF) (Filed on 6/14/2013)
1
2
3
4
5
UNITED STATES DISTRICT COURT
6
NORTHERN DISTRICT OF CALIFORNIA
7
8
9
SAN JOSE DIVISION
NAZOMI COMMUNICATIONS,
INC.,
10
Plaintiff,
11
12
Case No. C-10-04686 RMW (related)
ORDER CONSTRUING CLAIMS OF U.S.
PATENT NOS. 7,080,362 AND 7,225,436
v.
NOKIA CORPORATION et al.,
13
Defendants.
14
15
16
NAZOMI COMMUNICATIONS,
INC.,
Plaintiff,
17
18
19
20
v.
SAMSUNG
TELECOMMUNICATIONS
AMERICA, L.L.C. et al.,
Defendants.
21
22
23
24
25
26
27
28
On November 28, 2012, the court held a claim construction hearing for the purpose of
construing disputed terms as described below. At issue in this claim construction is the scope of
two of Nazomi Communications Inc.'s patents. Nazomi generally argues for broad dictionary
definitions of the terms used in the patents, while the defendants insist that the patent
specifications disclose and define a more limited invention. For the reasons explained below, the
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-1-
1
court generally agrees with the defendants' narrower proposed constructions of the disputed
2
terms.
I.
3
4
BACKGROUND
Nazomi brings this patent infringement action against various technology companies,
5
alleging infringement of claims 1, 15, 17, 22, 26, 48, 66, 67, 68, 69, and 70 of U.S. Patent No.
6
7,080,362 (the '362 patent), and claims 1, 5, 12, and 14 of U.S. Patent No. 7,225,436 (the '436
7
patent) both continuations of U.S. Patent No. 6,332,215 (the '215 parent patent). The '362 patent
8
and '215 parent patent, both titled "Java Virtual Machine Hardware for RISC and CISC
9
Processors," and the '436 patent, titled "Java Hardware Acceleration Using Microcode Engine,"
10
all relate to technology which uses hardware for accelerating the execution of stack-based
11
instructions like Java bytecodes. The specifications for the '215 patent and '362 patent are
12
essentially identical. The '436 patent also has the same disclosure but adds additional features. In
13
this case, Nazomi claims that many of defendants' consumer products infringe its patents by using
14
microprocessors with specialized hardware to accelerate the execution of Java programs.
15
A.
The Technology
16
This case concerns technology for processing different types of machine code, or
17
"instruction sets," within the hardware of a computer. In particular, the patents relate to hardware
18
to accelerate the processing of "stack-based" as opposed to "register-based" instructions. A
19
"stack" and a "register" are different ways of storing data in memory and necessitate different
20
types of associated instructions to manipulate that memory in order to execute a program. Java
21
bytecodes and other stack-based instructions will not operate on a register-based system unless
22
the system first translates them to refer to registers instead of a stack or otherwise processes them.
23
On a typical computer with a register-based processor, a program is just a series of
24
instructions stored as 1s and 0s (most systems are 32-bits, which means a single instruction is
25
made up of 32 1s and 0s). When a computer executes a program, the instructions that make up
26
the program go through the well-defined process of the Central Processing Unit (CPU) pipeline
27
known as the "fetch-decode-execute" cycle. First, the processor fetches the instruction in
28
memory. Second, a decode unit converts the 1s and 0s of the instruction into hundreds if not
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-2-
1
thousands of control signals. Third, these control signals manipulate the registers and other logic
2
gates in the processor to perform the data manipulation or mathematical calculation indicated by
3
the instruction. Finally, the results of the manipulation are written back into a register as needed.
4
See Dr. Babb Decl. at ¶ 11 (filed under seal); Decl. of Stephen Steele at ¶¶ 22-28, dkt. no. 405 ex.
5
3. 1
6
B.
The Patented Invention
7
The patents relate to a method of accelerating the execution of stack-based instructions on
8
register-based processors. See '362 and '436 patents, Background and Summary of the Invention.
9
The prior art teaches that the way to execute stack-based instructions, like a Java bytecode, on a
10
register-based processor is by converting the stack-based instructions into register-based
11
instructions in software. Id. The patents accelerate this process by adding new hardware
12
elements that speed-up the conversion process and the execution of the instructions. Id.
Many register-based systems use a Java Virtual Machine—a software program—to
13
14
translate Java bytecodes into register-based instructions. This approach provides flexibility, but
15
slows overall execution speed. The patented invention "removes the bottleneck which previously
16
occurred when the Java Virtual Machine is run in software . . . [by implementing] at least part of
17
the Java Virtual Machine in hardware as the hardware Java accelerator." '362 Patent col.2 ll.10-
18
17. The '436 patent builds on this general invention by disclosing a way of more efficiently
19
handling interrupts—computer commands that require a shift from stack-based instructions to
20
register-based instructions and then back again. '436 patent col.2 ll.5-59. The '436 patent also
21
discloses a parallel decode unit that translates multiple bytecodes concurrently into a lesser
22
number of register-based instructions. Id. col.6 ll.20-25.
23
24
25
26
27
1
The remainder of this Order cites to the docket for case number C-10-04686, the first filed case,
but identical copies of these documents were also filed in C-10-05545 as well.
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-3-
1
C.
Procedural History
Courts have previously considered and construed terms in patents related to Nazomi's
2
3
alleged inventions. In Nazomi Communications, Inc. v. Arm Holdings, PLC ("Nazomi 2002" to
4
distinguish it from the present cases), Nazomi and ARM disputed whether ARM's Jazelle
5
Revision 3 design infringed the '215 parent patent. See No. C-02-02521-JF (N.D. Cal. 2002).
6
Initially, the district court construed "instruction" and granted summary judgment of
7
noninfringement based upon its construction. Nazomi 2002 I, 2003 WL 24054503 (N.D. Cal.
8
Sept. 30, 2003). The Federal Circuit vacated and remanded, finding that the court's analysis was
9
inadequate. Nazomi 2002 II, 403 F.3d 1364 (Fed. Cir. 2005). Thereafter, the district court
10
conducted a detailed analysis of the term "instruction." Nazomi 2002 III, 2006 WL 2578374
11
(N.D. Cal. Sept. 6, 2006). Nazomi objected to the court's construction and appealed to the
12
Federal Circuit, but conceded that under the district court's construction of "instruction," Jazelle
13
Revision 3 based processors "would not infringe the '215 parent patent, literally or under the
14
doctrine of equivalents." Nazomi 2002, Resp. to Def.'s Summ. J. Mot., dkt. no. 259 at 3 (Jan. 19,
15
2007). The Federal Circuit affirmed the district court's construction, which ended the case.
16
Nazomi 2002 IV, 266 F. App'x 942, 942 (Fed. Cir. 2008).
17
In this case, Nazomi brings claims based upon the children of the '215 parent patent
18
against consumer product manufacturers that make products using processors incorporating
19
ARM's Jazelle Revision 3 design. ARM has intervened on behalf of defendants, and in addition
20
to arguing for particular claim constructions for the disputed terms addressed in this Order, it has
21
filed for summary judgment on behalf of all of the defendants.
II.
22
LEGAL STANDARD
Claim construction is exclusively within the province of the court. Markman v. Westview
23
24
Instruments, Inc., 517 U.S. 370, 387 (1996). "It is a 'bedrock principle' of patent law that 'the
25
claims of a patent define the invention to which the patentee is entitled the right to exclude.'"
26
Phillips v. AWH Corp., 415 F.3d 1303, 1312 (Fed. Cir. 2005) (en banc) (internal citation omitted).
27
Claim terms "are generally given their ordinary and customary meaning," defined as "the
28
meaning . . . the term would have to a person of ordinary skill in the art in question . . . as of the
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-4-
1
effective filing date of the patent application." Id. at 1313 (internal citation omitted). The skilled
2
artisan reads the claim term "in the context of the entire patent . . . including the specification."
3
Id. See also Multiform Desiccants, Inc. v. Medzam, Ltd., 133 F.3d 1473, 1477 (Fed. Cir. 1998).
4
In determining the meaning of a disputed claim limitation, the intrinsic evidence, including the
5
claim language, written description, and prosecution history, is the most significant. Phillips, 415
6
F.3d at 1315-17. The court reads claims in light of the specification, which is "the single best
7
guide to the meaning of a disputed term." Id. at 1315. Furthermore, "the interpretation to be
8
given a term can only be determined and confirmed with a full understanding of what the
9
inventors actually invented and intended to envelop with the claim." Id. at 1316 (quoting
10
Renishaw PLC v. Marposs Societa' per Azioni, 158 F.3d 1243, 1250 (Fed. Cir. 1998)). The words
11
of the claims must be understood as the inventor used them as revealed by the patent and
12
prosecution history. Id.
13
Although extrinsic evidence is less significant than the intrinsic record, the court may also
14
reference extrinsic evidence to "shed useful light on the relevant art." Id. at 1317 (quoting C.R.
15
Bard, Inc. v. U.S. Surgical Corp., 388 F.3d 858, 862 (Fed. Cir. 2004)). "[T]echnical dictionaries
16
may provide [help] to a court 'to better understand the underlying technology' and the way in
17
which one of skill in the art might use the claim terms. . . . Such evidence . . . may be considered
18
if the court deems it helpful in determining 'the true meaning of language used in the patent
19
claims.'" Id. at 1318 (internal citations omitted).
20
Nazomi asserts, and defendants do not dispute, that for the purposes of these patents, a
21
person of ordinary skill in the art at the time of the invention would have either: (1) a bachelor of
22
science in computer engineering, electrical engineering, or computer science with about three
23
years of work experience in the field of computer architecture; or (2) a master's of science in
24
computer engineering, electrical engineering, or computer science with about a year of work
25
26
27
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-5-
1
experience in the field of computer architecture. Pl.'s Opening Claim Construction Br. at 1, Dkt.
2
No. 402 ("Pl.'s Br."). There is no term whose construction turns on the level of skill in the art.
3
The court construes the five disputed terms that the parties identified as the "most
4
important" to the resolution of the case." 2 The first term, "instructions," was at issue in the prior
5
Nazomi lawsuit, Nazomi 2002, involving the '215 parent patent. The term "instruction" (in the
6
singular) is also disputed with respect to U.S. Patent No. 6,338,160 (the '160 patent), in Case No.
7
C-10-05545 concurrently before this court. The court's construction of "instructions"
8
significantly affects the construction of the other terms. In particular, the parties dispute whether
9
the patent requires translation of stack-based instructions into register-based instructions. Jazelle
10
3 processors are capable of executing both stack- and register-based instructions, but do not
11
translate stack-based instructions into register-based instructions. Instead, the Jazelle 3 processor
12
takes stack-based instructions and converts them directly into control signals. These control
13
signals then control the registers and execute logic to execute the instructions. Under Nazomi's
14
proposed claim constructions, the '362 and '436 patents cover this conversion from stack-based
15
instructions to register-based control signals. Defendants propose a narrower construction that
16
does not cover their products.
III.
17
18
19
20
21
A.
24
25
26
27
"Instructions"
Nazomi's Proposed Construction
Program commands interpreted or compiled
into machine language.
22
23
CLAIM CONSTRUCTION
Defendants' Proposed Construction
Either a stack-based instruction that is to be
translated into a register-based instruction, or a
register-based instruction that is input to the
CPU pipeline.
The term "instructions" appears in every claim at issue. Nazomi proposes that the term
means "program commands interpreted or compiled into machine language" while the defendants
2
The parties actually dispute additional terms, but under the Patent Local Rules the parties must
identify 10 terms that are the "most significant to the resolution of the case," Patent L.R. 4-3(c),
and five of the terms identified are from U.S. Patent No. 6,338,160 (the '160 patent) and thus not
discussed in this order.
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-6-
1
argue it should be "either a stack-based instruction that is to be translated into a register-based
2
instruction, or a register-based instruction that is input to the CPU pipeline." The defendants'
3
proposal is the construction adopted by the district court in Nazomi 2002 and affirmed by the
4
Federal Circuit for the '215 parent patent, which is the parent of both the '362 and '436 patents,
5
the two patents-at-issue here. As explained below, the court generally should interpret the terms
6
in a family of patents consistently. Furthermore, collateral estoppel requires that this court adopt
7
the same construction for "instructions" in the '362 and '436 patents that Judge Fogel and the
8
Federal Circuit did for the '215 parent patent. Finally, the claims and specifications of the patents
9
support defendants' construction.
10
1.
11
The Claims Must Be Construed the Same in Related Patents
Whenever possible, courts must construe claim terms consistently within a patent.
12
Southwall Techs., Inc. v. Cardinal IG Co., 54 F.3d 1570, 1579 (Fed. Cir. 1995). Courts should
13
also construe the same term consistently across related patents. Mycogen Plant Sci., Inc. v.
14
Monsanto Co., 252 F.3d 1306, 1311 (Fed. Cir. 2001), vacated on other grounds, 535 U.S. 1109
15
(2002); see also Toshiba Corp. v. Lexar Media, Inc., No. C-02-5273 MJJ, 2005 WL 6217120
16
(N.D. Cal. Jan. 24, 2005) ("Where patents-in-suit share the same disclosures, common terms are
17
construed consistently across all claims in both patents."); PCTEL, Inc. v. Agere Sys., Inc., No. C-
18
03-2474 MJJ, 2005 WL 2206683 (N.D. Cal. Sept. 8, 2005) (same).
19
In Nazomi 2002, the court determined the meaning of "instruction" with respect to the '215
20
parent patent. 2006 WL 2578374, aff'd, 266 Fed. Appx. 935. The district court construed
21
"instruction" to mean "either a stack-based instruction that is to be translated into a register-based
22
instruction, or a register-based instruction that is input to the CPU pipeline." Id. at *8. The court
23
also held that an instruction must be upstream of the decode stage of the CPU pipeline and cannot
24
be the control signal that is the output of the decode stage. Id. The disclosures in '215 parent
25
patent are essentially identical to those in the '362 patent. Compare the '215 parent patent figs.1-
26
7D and cols.1-7 with the '362 patent figs.1-7D and cols.1-7. Similarly, the '436 patent contains
27
the '215 parent patent's disclosures as well as additional disclosures. Compare the '215 parent
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-7-
1
patent figs. 1-7D and cols.1-7 with the '436 patent figs.1-7D and cols.1-7. Because a court should
2
construe the same term the same across related patents, the court finds that the same construction
3
should apply to the '362 and '436 patents.
2.
4
5
6
Collateral Estoppel
Similarly, collateral estoppel requires that "instructions" be construed the same here as it
was in Nazomi 2002. In order to establish collateral estoppel:
7
(1) the issue at stake must be identical to the one alleged in the prior
litigation; (2) the issue must have been actually litigated [by the
party against whom preclusion is asserted] in the prior litigation;
and (3) the determination of the issue in the prior litigation must
have been a critical and necessary part of the judgment in the earlier
action.
8
9
10
11
Trevino v. Gates, 99 F.3d 911, 923 (9th Cir. 1996); see also Bayer AG. v. Biovail Corp., 279 F.3d
12
1340, 1345 (Fed. Cir. 2002) (holding that the law of the regional circuit determines the standard
13
for collateral estoppel). Collateral estoppel can apply to common issues in actions involving
14
different but related patents. See, e.g., Amgen, Inc. v. Genetics Inst., Inc., 98 F.3d 1328, 1329-32,
15
(Fed. Cir. 1996) (affirming summary judgment where a prior case had decided issues about a
16
different patent with the same specification). Nazomi argues that the issues at stake are not
17
identical, but does not contest that the issues were actually litigated or that the determination was
18
a necessary part of the judgment. See Pl.'s Responsive Claim Construction Br. 3-10, Dkt. No. 412
19
("Pl.'s Reply"). Therefore, the only question is whether the issues at stake are identical.
20
Here the parties are asking the court to construe the same term already twice construed by
21
other judges with respect to related patents. In Nazomi 2002, the Federal Circuit directed the
22
district court to look to the specification for the inventor's intended meaning for "instructions,"
23
finding that the inventor defined "instructions" in an indirect manner. Nazomi 2002 II, 403 F.3d
24
at 1369. On remand, the district court looked to the '215 parent patent specification and construed
25
"instructions." The Federal Circuit affirmed the district court's construction, in large part by
26
looking to the specification. Nazomi 2002 IV, 266 F. App'x at 940. The issue before this court is
27
the same because the patents share common disclosures. The '362 patent's specification and
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-8-
1
drawings are essentially identical to those in the '215 parent patent. The '436 patent contains all
2
of the drawings of the '215 parent patent and much of the specification, plus additional material.
3
Nazomi objects that there are significant differences between the claims of the patents that
4
suggest different meanings and thus the issues are not identical. Although it is true that the
5
claims of these patents differ, the language in the claims must be understood in light of the
6
teachings of the specifications, which are essentially identical. The specification should be the
7
source of the definition of unclear terms in the claims, not a general dictionary definition such as
8
Nazomi proposes. See Phillips, 415 F.3d at 1320-21. Because all of the patents share a common
9
specification and the "specification is the single best guide to the meaning of a disputed term," id.
10
at 1321 (internal quotations omitted), the claim construction issue before this court is identical to
11
the one already decided in Nazomi 2002. Therefore, collateral estoppel applies.
3.
12
13
Stack-Based Instructions Must Be Translated
The court must interpret a term "with the full understanding of what the inventors actually
14
invented and intended to envelop with the claim." Phillips, 415 F.3d at 1316. Even where the
15
claims of a patent might otherwise imply a broader claimed invention, if the specification as a
16
whole defines the invention more narrowly, it limits the claims to that narrower definition. See
17
C.R. Bard, Inc. v. U.S. Surgical Corp., 388 F.3d 858, 863 (Fed. Cir. 2004). The summary of the
18
invention is a good place to look for such limiting statements on the patent as a whole. Id.
19
Generally, the description of a single embodiment in the specification should not alone limit
20
broad claim language. See Absolute Software, Inc. v. Stealth Signal, Inc., 659 F. 3d 1121 (Fed.
21
Cir. 2011); Osteonics Corp. v. Wright Med. Tech., Inc., 540 F.3d 1337, 1345 (Fed. Cir. 2008).
22
However, where the specification describes an embodiment as the "primary objective" of the
23
invention, describes it as the "present invention," states that it is the invention, or otherwise
24
clearly and consistently uses a term in a more limited manner, the specification can limit
25
otherwise broad language. See id.; Verizon Services v. Vonage Holdings, 503 F.3d 1295, 1308
26
(Fed. Cir. 2007); Alloc, Inc. v. Int'l Trade Comm'n, 342 F.3d 1361, 1368 (Fed. Cir. 2003).
27
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
-9-
This case is similar to Verizon Services v. Vonage Holdings, where the Federal Circuit
1
2
limited the scope of the patent to how it described the invention in the Disclosure of the Invention
3
section. 503 F.3d at 1308 (Fed. Cir. 2007). The court held that where a patent "describes the
4
features of the 'present invention' as a whole, [the] description limits the scope of the invention."
5
Id. Similarly, in C.R. Bard v. U.S. Surgical, the court found that the summary of the invention
6
and the rest of the specification unequivocally defined the patent more narrowly than the claim
7
language otherwise indicated, thus requiring the narrower claim construction. C.R. Bard, 388
8
F.3d at 863-66.
Similar to Verizon and C.R. Bard, the specifications of the '362 and '436 patent clearly
9
10
limit the scope of the claimed invention to executing stack-based instructions by translating them
11
into register-based instructions. First, the summaries of both patents contain a description of the
12
"present invention," which requires translating bytecodes into native instructions. '362 patent
13
col.2 ll.7-8; '436 patent col.2 ll.6-8. The summaries emphasize that the primary advantage of the
14
patented invention over the prior art is to "translate Java™ bytecodes into native instructions."
15
'362 patent at col.2 ll.14; '436 patent at col.2 ll.7-8.
16
Second, the rest of the patents' specifications so consistently describe the invention as a
17
hardware apparatus used to translate stack-based instructions into register-based instructions that
18
the inventor could not be said to have intended to claim anything else. The '362 patent repeatedly
19
refers to its invention and purpose as translating stack-based instructions into register-based
20
native instructions. See, e.g., '362 col.2 ll.6-8 ("The present invention generally relates to a
21
Java™ hardware accelerator which can be used to quickly translate bytecodes into native
22
instructions."); id. at col.2 ll.25-28 ("[T]he hardware accelerators of the present invention are not
23
limited for use with Java™ language and can be used with any stack-based language that is to be
24
converted to register-based native instructions."); id. at col.4 ll.8-9 ("The instructions translations
25
unit is used to convert Java bytecodes to native instructions."); id. at col.5 ll.64-65 ("The Java
26
translating machine translates the Java bytecode into a native instruction."). Similarly, the '436
27
patent, which covers the same general invention, also clearly describes the patent as translating
28
stack- to register-based instructions. See, e.g., '436 Patent at col.2 ll.6-8 ("The present invention
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 10 -
1
generally relates to Java hardware accelerators used to translate Java bytecodes into native
2
instructions."); id. col.2 ll.19-22 ("Another embodiment of the present invention comprises a
3
hardware accelerator to convert stack-based instructions into register-based instructions."); id.
4
col.2 ll.43-47 ("Yet another embodiment of the present invention comprises a hardware
5
accelerator operably connected to a central processing unit, the hardware accelerator adapted to
6
convert stack-based instructions into register-based instructions.").
7
4.
Nazomi argues that the patent is not limited to translating stack-based instructions to
8
9
Nazomi's "Some or All" Argument
register-based instructions because language in the '362 and '436 patents describe the invention as
10
capable of doing "some or all" of a list of tasks which includes "translating bytecodes to native
11
instructions." '362 patent col.3 ll.10-19; '436 patent col.4 ll.1-15. In other words, according to
12
Nazomi, the patented hardware accelerator is not necessarily required to be able to translate
13
bytecodes to native instructions. However, such an interpretation of the "some or all" language is
14
nonsensical and ignores what the patent is all about. If the hardware accelerator does not do
15
translating of bytecodes to native instructions, it would not relate to what the "SUMMARY OF
16
THE INVENTION" says the invention relates to. "The present invention generally relates to a
17
Java hardware accelerator which can be used to quickly translate Java bytecodes into native
18
instructions." Id. at col.2 ll.6-8.
The reasonable meaning of the list of tasks of which the invention can do "some or all" is
19
20
that it can do the task of translating bytecodes to native instructions and may also be able to do
21
some or all of the other listed tasks.
22
5.
Construction of "Instructions"
For the reasons stated above, the court construes "instructions" as: "either stack-based
23
24
instructions that are to be translated into register-based instructions, or register-based instructions
25
that are input to the CPU pipeline." In either case the "instructions" must be upstream of the
26
decode stage of the CPU pipeline. As used in the claims of the patent, "instructions" cannot mean
27
the control signals that are the output of the decode stage.
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 11 -
1
B.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Nazomi's Proposed Construction
Processing the stack-based instructions
including generating a second output:
Receiving stack-based instructions and
generating a decoded output that is input to the
execution unit.
Defendants' Proposed Construction
Processing the stack-based instructions
including generating a second output: The
stack-based instructions are translated into
register-based instructions (the second output).
Second output: a decoded output that is input
to the execute unit when stack-based
instructions are processed in a hardware
accelerator mode.
Second output: register-based instructions.
The parties ask the court to construe the limitation in claim 1 of the '362 patent that states
"processing the stack-based instruction including generating a second output" and, in particular,
"second output." '362 patent col.7 ll.54-55. As Nazomi stated in its reply brief, the "primary
dispute between the parties with regards to this claim element is essentially the same dispute
with regard to 'instruction.'" Pl.'s Reply at 10. Because the processing of stack-based
instructions requires translating them into register-based instructions, see Part III.A.3 supra, and
for the reasons explained below, the "processing" described in the phrase "processing the stackbased instruction including generating a second output," must include: (1) the translation of the
stack-based instructions into register-based instructions, and (2) the fetch and decode of the
register-based instructions to convert them into control signals.
Claim 1 of the '362 patent recites two parallel limitations, the second of which is at issue
in this construction. '362 patent col.7 ll.49-58. Because of the similarity of language in the two
limitations, the first limitation is essential to understanding the second. The claim requires:
1. "processing the register-based instructions including generating
a first output, and processing the first output in an execution unit
using the data from the first register file"
23
24
2. "processing the stack-based instructions including generating a
second output, and processing the second output in the execution
unit using the operands from the first register file."
25
26
27
28
"Processing the Stack-Based Instructions including Generating a Second Output" /
"Second Output"
Id. (emphasis added). The key to construing the claim is the first and second outputs, which are
the inputs to the execution unit. The court finds that the first and second outputs must be of the
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 12 -
1
same type, otherwise the execution unit would be required to take multiple types of output as an
2
input, which would require needlessly redundant hardware.
3
The input to the execution unit is either processed register-based instructions (first output)
4
or processed stack-based instructions (second output). The only processing of register-based
5
instructions discussed in the patent is the decoding that converts register-based instructions into
6
control signals. Therefore, the first output must be control signals.
7
On the other hand, the patent teaches that stack-based instructions undergo two types of
8
processing. First, they are translated into register-based instructions, and second those register-
9
based instructions are decoded into control signals. Because, as explained below, the outputs
10
(also the inputs to the execution unit) must be the same, the second output must also be control
11
signals.
12
If the second output were register-based instructions, then the execution unit would have
13
to include a decode unit to process those instructions into control signals. However, according to
14
the first claim limitation, the decoding of register-based instructions in the decode unit happens
15
outside of the execution unit. If the second output were register-based instructions, there would
16
be two identical decode units right next to each other, one immediately outside the execution
17
unit and another immediately inside. Thus, the only reasonable construction is that the second
18
output is control signals.
19
Therefore, the "second output" is construed as "control signals." And "processing the
20
stack-based instruction including generating a second output" is construed to mean: "the
21
processing of stack-based instructions by translating them into register-based instructions and
22
then decoding them into control signals."
23
24
25
26
27
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 13 -
1
2
3
4
C.
"Execution Unit"
Nazomi's Proposed Construction
Hardware capable of executing instructions,
including arithmetic or logical instructions, by
processing a decoded input.
5
6
7
8
9
10
11
12
13
14
15
16
17
18
21
22
23
24
25
26
27
Claim 48: The execute logic of the execute
state of the CPU and the circuitry which
translates stack-based instructions into registerbased instructions and the register-based
instruction fetch and decode units.
The patent only uses the term "execution unit" in the claims and not elsewhere in the
written description. The parties agree that claim 1 uses "execution unit" synonymously with the
"execute logic." See Pl.'s Br. 15; Defs.' Br. 21. The "execute logic" is described in the '362
patent and is the hardware that takes decoded instructions (control signals) as input and performs
the "execute" phase of the CPU pipeline. '362 patent col.5 ll.20-25. In apparent contrast, claim
48 describes an "execution unit" that executes stack- and register-based instructions rather than
control signals. '362 patent col.10 ll.59-62. Because the control signals themselves are not
actually instructions, the "execution unit" in claim 48 is either not the execute logic as the parties
agree it is in claim 1, or claim 48 uses "executes" indirectly such that when it claims an
"execution unit to execute instructions" it means that the "execution unit" executes the
downstream result of processed instructions, which are control signals.
1.
19
20
Defendants' Proposed Construction
Claim 1: The execute logic of the execute state
of the CPU
Other Claims
Claims 27, 74, 72, and 87 also use the term "execution unit," although none of the claims
is at issue in this litigation. They do provide, however, some guidance as to the meaning of the
term. The language of independent claims 27 and 74 support construing "execution unit" as the
execute logic. Both claims describe limitations wherein the execution unit processes decoded
instructions, which are control signals. See '362 patent col.9 ll.2-20, col.12 ll.29-47. Claims 1,
27, and 74 all indicate that instructions must be processed before they can be "executed" in the
"execution unit," which is consistent with the execution unit being the execute logic, which takes
control signals as input.
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 14 -
1
Claim 72, dependent on claim 48, provides some support for Nazomi's indirect execution
2
argument. It adds a limitation describing possible upstream processing of an instruction before
3
the instruction is executed in the execution unit. Id. at col.12 ll.21-26.
4
Finally, independent claim 87 uses language that mirrors the relevant language from claim
5
48, but does not otherwise provide any guidance on how to construe the term. See '362 patent
6
col.13 ll.45-48 (claiming an "execution unit to process instructions of a plurality of instructions
7
[sic] sets including a register-based instruction set and a stack-based instruction set.").
8
2.
Reconciling the Different Uses
Courts should construe terms consistently throughout claims whenever possible. See
9
10
Callicrate v. Wadsworth Mfg., Inc., 427 F.3d 1361, 1371 (Fed. Cir. 2005). The '362 patent
11
specification, a Federal Circuit decision in Nazomi 2002, and the prosecution history provide
12
support for Nazomi's indirect execution argument, which is the only way to construe the term
13
"execution unit" consistently throughout the claim.
First, the specification describes the execute logic as executing "native instructions." '362
14
15
patent col.5 l.23. This description comes immediately after explaining how the execute logic is
16
downstream of the instruction decode, which converts instructions into control signals. At least
17
in this context, the patent uses "execute" indirectly. Similarly, in the section describing prior art
18
conversion of Java bytecodes using software, the patent explains that to "execute a Java™
19
program, a bytecode interpreter takes the Java™ bytecodes, converts them to equivalent native
20
processor instructions and executes the Java™ program." '362 patent col.1 ll.28-32. The patent
21
must be referring to indirect execution because the bytecode interpreter is software and thus does
22
not literally execute a program. The Federal Circuit made this same point about "execution" by
23
the bytecode interpreter in relation to the '215 parent patent. Nazomi 2002 IV, 266 Fed. Appx. at
24
940-41.
Second, the Federal Circuit also held that the patentee used execute indirectly in a
25
26
different claim. The court construed "execute" as used in claim 30 of the '215 parent patent to
27
"refer only to indirect causation." Nazomi 2002 IV, 266 Fed. Appx. at 940. Claim 30 claimed a
28
central processing unit that included "an execution unit to execute the register-based instructions."
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 15 -
1
'215 parent patent col.8 ll.60-62. On remand, the district court said about the same issue that the
2
"inventor must have been referring to this downstream effect rather than indicating that native
3
instructions exist after the decode stage." Nazomi 2002 III, 2006 WL 2578374, *6 (N.D. Cal.
4
Sept. 6, 2006). The Federal Circuit and district court's construction in Nazomi 2002 is consistent
5
with Nazomi's proposed construction of "execution unit" as the execute logic, which executes
6
instructions indirectly.
7
Finally, the prosecution history supports Nazomi's argument that the patent uses
8
"executes" indirectly in this context. In the prosecution history, the examiner questioned whether
9
the patent described the limitation that stack- and register-based instructions were executed in one
10
"execution unit." Anderson Decl., Ex. 6 at 30, Dkt. No. 409-8. The applicant's response points
11
the examiner to Figure 3 and argues that the execute logic (which can receive only control
12
signals) executes stack- and register-based instructions because they are processed upstream of
13
the execute logic. Id. For stack-based instructions, the applicant specifically points to accelerator
14
42 (an independent hardware unit upstream of the execute logic), which translates stack-based
15
instructions into register-based instructions, to explain how the execute logic can execute stack-
16
based instructions. Id. The applicant concludes that, therefore, it is possible for stack- and
17
register-based instructions to be executed in the "execution unit." Id. This passage indicates that
18
the inventor was using the word "execute" indirectly. It also supports the argument that the
19
execution of stack-based instructions necessarily first requires translation into register-based
20
instructions as it is the only evidence provided by the applicant of how its claimed invention
21
could execute stack- and register-based instructions.
3.
22
23
Construction of "Execution Unit"
The court construes "execution unit" as: "the execute logic." However, based upon the
24
court's previous constructions and the arguments supporting the "execute logic" construction, the
25
court also holds that the execution of instructions in the execution unit refers to indirect
26
execution. Indirect execution requires circuitry which: (1) translates stack-based instructions into
27
register-based instructions and (2) fetches and decodes register-based instructions into control
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 16 -
1
signals that are the input to the execution unit. As a practical matter in light of the construction of
2
"instructions," there is no substantive difference between the parties' different constructions of
3
"execution unit."
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
D.
"Hardware Accelerator to Process Stack-Based Instructions"
Nazomi's Proposed Construction
Hardware capable of accelerating the
processing of stack-based instructions.
Defendants' Proposed Construction
Circuitry which can be used to translate stackbased instructions into native instructions.
The primary dispute between the parties' constructions is whether the hardware
accelerator requires circuitry to translate stack-based instructions into native instructions. See
Pl.'s Br. at 20. As already decided above, the patents claim accelerating the execution of stackbased instructions by translating them into register-based instructions in hardware. Therefore, the
term refers to "circuitry which can be used to translate stack-based instructions into register-based
instructions."
Throughout the patent, the hardware accelerator is described as translating stack-based
instructions to register-based instructions. The summary of the invention defines it as relating to
"a Java™ hardware accelerator which can be used to quickly translate bytecodes into native
instructions." '362 patent col.2 ll.6-8. Similarly, the '436 patent's abstract summarizes the
hardware accelerator as "enabled to convert the Java™ bytecodes into native instructions." '436
patent. Similar language appears throughout the patents, establishing that the invention, hardware
acceleration of stack-based instructions, is limited to accelerating by translating stack-based
instructions into native, register-based instructions. See Section A.3 supra.
Nazomi argues that claim differentiation requires its proposed construction be adopted.
The Federal Circuit, however, has held that claim differentiation is "not a hard and fast rule and
will be overcome by a contrary construction dictated by the written description or prosecution
history." Seachange Int'l, Inc. v. C–COR, Inc., 413 F.3d 1361, 1369 (Fed. Cir. 2005). Where, as
here, there is arguably a conflict between the teachings of the specification and the doctrine of
claim differentiation, the teachings of the specification control. See id. Claim differentiation
cannot render a claim broader than that which the inventor disclosed as the invention in the
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 17 -
1
specification, and claims "written in different words may ultimately cover substantially the same
2
subject matter." Id. (citing Multiform Desiccants, Inc. v. Medzam, Ltd., 133 F.3d 1473, 1480
3
(Fed. Cir. 1998). Dependent claim 4 of the '436 patent adds the limitation to claim 2 that "the
4
hardware accelerator processes the stack-based instructions in cooperation with the execute logic
5
by converting the stack-based instructions into register-based instructions for execution in the
6
execute logic." If this claim is read to suggest that translation did not necessarily happen in claim
7
2, which recites "a hardware accelerator to process stack-based instructions," this interpretation
8
would contradict the other claims and all of the disclosures in the '362 and '436 patent, which
9
demonstrate that the processing of stack-based instructions requires translation. The teachings of
10
the specification must control over the doctrine of claim differentiation.
11
12
13
14
15
16
Therefore, "hardware accelerator to process stack-based instructions" is construed as
"circuitry which can be used to translate stack-based instructions into native instructions."
E.
Nazomi's Proposed Construction
Instructions that manipulate operands from an
operand stack.
17
18
19
20
21
22
23
24
25
26
27
"Stack-Based Instructions"
Defendants' Proposed Construction
An instruction that instructs the processor to
manipulate a push-down operand stack and that
does not refer to a register index of a register
file.
There is little difference between the parties' proposed constructions. Defendants insist
that their definition reflects two fundamental differences between stacks and registers, which
Nazomi's definition does not reflect. The court generally agrees with defendants' understanding
of "stack-based instructions," but finds that Nazomi's construction reflects it.
First, defendants' definition specifies that the operand stack is a "push-down" stack. To
the extent defendants use "push-down" to reflect the last-in, first-out nature of stacks, the court
agrees, but the term "push-down" is not used anywhere in the patent. As part of his description of
Java, Judge Fogel explained stack-based memory as storing information "on a last-in, first-out
basis." Nazomi 2002 III, 2006 WL 2578374 at *1. Defendants used the phrase "last-in, first out"
as part of their tutorial and while Nazomi did not use that exact language, it implied the same
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 18 -
1
thing. Although "operand stack" is probably sufficiently descriptive, for clarity, the court will
2
add the modifier "last-in, first-out" to its construction.
3
Second, defendants' claim that their construction is superior because it reflects the
4
difference between stack- and register-based instructions by noting that stack-based instructions
5
do not refer to registers. Nazomi, however, objects to defendants' construction to the extent
6
defendants would use their construction to preclude implementation of an operand stack in a
7
register file, which is something the '362 patent teaches. Of course, implementing the operand
8
stack in a register file requires translating the stack-based instructions into register-based
9
instructions so that they can actually refer to the registers. Defendants are correct that by
10
definition, stack-based instructions do not refer to registers, but the court finds that Nazomi's
11
simpler construction is adequate to reflect this fact.
12
13
Therefore, the court construes "stack-based instructions" as "instructions that manipulate
operands from a last-in, first-out operand stack."
IV.
14
15
ORDER
For the reasons set forth above, the court construes the claims as follows:
16
Claim Terms
instructions
Construction
either stack-based instructions that to be translated into a registerbased instructions, or register-based instructions that are input to
the CPU pipeline. In either case the "instructions" must be
upstream of the decode stage of the CPU pipeline. As used in the
claims of the patent, "instruction" cannot mean the control signals
that are the output of the decode stage
21
second output
control signals
22
processing the stackbased instruction
including generating
a second output
execution unit
processing of stack-based instructions by translating them into
register-based instructions and then decoding them into control
signals
17
18
19
20
23
24
25
the execute logic.
However, the execution of instructions in the execution unit
refers to indirect execution. Indirect execution requires circuitry
which: (1) translates stack-based instructions into register-based
instructions and (2) fetches and decodes register-based
instructions into control signals that are the input to the execution
26
27
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 19 -
1
hardware accelerator
to process stackbased instructions
stack-based
instructions
2
3
4
unit.
circuitry, which can be used to translate stack-based instructions
into native instructions
instructions that manipulate operands from a last-in, first-out
operand stack.
5
6
7
Dated: June 14, 2013
Ronald M. Whyte
United States District Court Judge
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
CLAIM CONSTRUCTION ORDER
CASE NO. C-10-04686 -RMW
sw
- 20 -
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.
Why Is My Information Online?