Академический Документы
Профессиональный Документы
Культура Документы
Patent 6,546,439
DOCKET NO.: 2211726-00124
Filed on behalf of Unified Patents Inc.
By: David L. Cavanaugh, Reg. No. 36,476
Daniel V. Williams 45,221
Wilmer Cutler Pickering Hale and Dorr LLP
1875 Pennsylvania Ave., NW
Washington, DC 20006
Tel: (202) 663-6000
Email: David.Cavanaugh@wilmerhale.com
Jonathan Stroud, Reg. No. 72,518
Unified Patents Inc.
1875 Connecticut Ave. NW, Floor 10
Washington, DC, 20009
Tel: (202) 805-8931
Email: jonathan@unifiedpatents.com
UNITED STATES PATENT AND TRADEMARK OFFICE
____________________________________________
IPR2016-01026 Petition
Patent 6,546,439
TABLE OF CONTENTS
Page
I.
II.
III.
B.
IV.
TECHNOLOGY BACKGROUND................................................................. 4
V.
VI.
IPR2016-01026 Petition
Patent 6,546,439
VII. SPECIFIC GROUNDS FOR PETITION ...................................................... 11
A.
Ground I: Claims 1, 4, 7, 10, 11, 14, 15, 17, 20, 23, 26, 27,
30, and 31 are rendered obvious by Hughes in view of Pattin ........... 12
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
B.
Ground II: Claims 1, 4, 10, 11, 15, 17, 20, 26, 27, and 31
are rendered obvious by Flynn in view of Gagliardo ......................... 35
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
VIII. CONCLUSION.............................................................................................. 62
ii
IPR2016-01026 Petition
Patent 6,546,439
I.
MANDATORY NOTICES
A.
Real Party-in-Interest
Related Matters
IPR2016-01026 Petition
Patent 6,546,439
C.
Counsel
David L. Cavanaugh (Reg. No. 36,476) will act as lead counsel; Jonathan
Stroud (Reg. No. 72,518) and Daniel Williams (Reg. No. 45,221) will act as backup counsel.
D.
review is sought is available for inter partes review and that Petitioner is not
barred or estopped from requesting an inter partes review challenging the patent
claims on the grounds identified in this Petition.
III.
claims 1, 4, 7, 10, 11, 14, 15, 17, 20, 23, 26, 27, 30, and 31 of the 439 patent.
IPR2016-01026 Petition
Patent 6,546,439
A.
2.
3.
4.
B.
The 439 patent issued from a patent application filed prior to enactment of the
IPR2016-01026 Petition
Patent 6,546,439
IV.
TECHNOLOGY BACKGROUND
At the time of filing the 439 patent, it was well known that the speed of
components of the system, such as the central processing unit (CPU), graphics
accelerator, input/output units, etc. (Yalamanchili 12 (EX1006)). These requests
may be to read data stored in memory or to write data to memory. (Yalamanchili
12 (EX1006)).
Well before the application for the 439 patent was filed, it was well known
to arbitrate the order in which multiple requests would be granted access to
memory by using a memory controller. (Yalamanchili 13 (EX1006)). For
example, US Pat. 6,272,600, filed in February 1997, disclosed to reorder memory
requests based on currently available portions of memory. (Yalamanchili 13
IPR2016-01026 Petition
Patent 6,546,439
(EX1006)).
memory arbitration system where high priority components were given first access
to memory. (Yalamanchili 13 (EX1006)). Even earlier, US Pat. 5,301,279,
published in 1994, disclosed an arbitration scheme that reprioritizes requests from
devices based on accesses to system memory. (Yalamanchili 13 (EX1006)).
Prioritizing memory requests based on assigning priority levels to requesting
devices necessarily requires that the source of the request, such as the particular
component making the request or its associated device is known. (Yalamanchili
13 (EX1006)).
V.
example, CPU 114, AGP graphics controller 100, PCI I/O devices 150-154, and
their associated buses. (439 patent at 5:65-6:15 (EX1001)); (Yalamanchili 14
(EX1006)).
IPR2016-01026 Petition
Patent 6,546,439
The 439 patent uses Figure 5 to describe how source information is created
by using queues 500, 502 and 504. (Yalamanchili 15 (EX1006)). Figure 5 is
reproduced below to show the queues. The 439 patent explains that memory
access requests that originate on CPU bus 115 are deposited in CPU bus queue
500, memory access requests originating on AGP interconnect 102 are deposited in
AGP interconnect queue 502, and memory access requests originating on PCI bus
118 are deposited in PCI bus queue 504. (439 patent at 9:6310:1 (EX1001));
(Yalamanchili 15 (EX1006)).
IPR2016-01026 Petition
Patent 6,546,439
queue in which the memory access is stored.
information with the memory requests. This additional information may provide
an urgency or priority of a request, whether transactions need to be answered in a
particular order, and whether the memory access is speculative. (439 patent at
9:3944, 10:2733 (EX1001)); (Yalamanchili 16 (EX1006)).
B.
A person of ordinary skill in the art for the 439 patent would have been an
electrical engineer or computer engineer having the equivalent of a post-graduate
education, such as a masters degree or equivalent knowledge obtained through
IPR2016-01026 Petition
Patent 6,546,439
work experience, and several years of experience in the design or performance
evaluation of memory systems. (Yalamanchili 19 (EX1006)).
C.
Prosecution History
The 439 patent issued from US Pat. Appl. No. 09/207,970, which was filed
on December 9, 1998 (File History, Application (12/09/98) (EX1007)).
Four
Office Actions on the merits were issued during prosecution of the 439 patent.
The first three Office Actions included a single reference rejection of claim 1.
After the third Office Action, Patent Owner canceled pending claims 132 and
added new claims 3364. (File History, Amendment at 2-6 (4/22/02) (EX1008)).
New independent claims 33 and 49 issued as independent claims 1 and 17,
respectively. In the fourth Office Action, the Examiner rejected claims 33 and 49
based on another single reference rejection by asserting that the claimed source
indication is inherently found in the prior art. (File History, Office Action at 3
(5/21/02) (EX1009)).
The Patent Owner argued that application claims 33 and 49 were not
anticipated because the prior art did not explicitly disclose the claimed source
indication and because the Examiner had not established a proper theory of
inherency. (File History, Request for Consideration at 2 (8/23/02) (a requested
memory operation buffer configured to provide a source indication for each
memory request is not inherent in the cited art.) (EX1010)); (Yalamanchili 18
IPR2016-01026 Petition
Patent 6,546,439
(EX1006)). The Examiner then allowed all claims. (File History of 439 patent,
NOA (9/25/02) (Ex. 1011). However, as described in detail below, the source
indication limitation was well known before the 439 patent was filed and was
explicitly, not inherently, disclosed in many references.
(Yalamanchili 18
(EX1006)).
VI.
CLAIM CONSTRUCTION
Claim terms of an unexpired patent in inter partes review are given the
37 C.F.R.
42.100(b); In re Cuozzo Speed Techs., LLC 778 F.3d 1271, 127981 (Fed. Cir.
2015). Any claim term that lacks a definition in the specification is therefore given
a broad interpretation.2 In re ICON Health & Fitness, Inc., 496 F.3d 1374, 1379
(Fed. Cir. 2007). Under the broadest reasonable interpretation standard, claim
terms are given their ordinary and customary meaning, as they would be
understood by one of ordinary skill in the art, in the context of the disclosure. In re
Translogic Tech., Inc., 504 F.3d 1249, 1257 (Fed. Cir. 2007).
Any special
definition for a claim term must be set forth in the specification with reasonable
2
IPR2016-01026 Petition
Patent 6,546,439
clarity, deliberateness, and precision. In re Paulsen, 30 F.3d 1475, 1480 (Fed.
Cir. 1994).
The following proposes constructions and offers support for those
constructions.
source indication
10
IPR2016-01026 Petition
Patent 6,546,439
wherein said source indication corresponds to one of said memory request queues.
(439 patent at 13:1320 (EX1001)); (Yalamanchili 29 (EX1006)). Thus, one of
ordinary skill in the art would have understood a source indication to mean
information that can be used to determine the source of the request.
(Yalamanchili 29 (EX1006)).
B.
tag
(Yalamanchili 30
(EX1006)). The 439 patent discloses that the requested memory operation buffer
336 may be further structured such that each memory operation within requested
memory operation buffer 336 may also have associated with that memory
operation a tag 302 which may contain one or more units indicative of one or
more parameters related to the transaction in question. (439 patent at 9:2531
(EX1001)); (Yalamanchili 30 (EX1006)). Thus, the proposed construction is
consistent with the specification of the 439 patent and with the ordinary use of the
term tag. (Yalamanchili 30 (EX1006)).
VII. SPECIFIC GROUNDS FOR PETITION
Pursuant to Rule 42.104(b)(4)(5), the following sections (as confirmed in
the Yalamanchili Declaration 31155 (EX1006)) detail the grounds of
11
IPR2016-01026 Petition
Patent 6,546,439
unpatentability, the limitations of the challenged claims of the 439 patent, and
how these claims were therefore obvious in view of the prior art.
A.
Ground I: Claims 1, 4, 7, 10, 11, 14, 15, 17, 20, 23, 26, 27, 30, and
31 are rendered obvious by Hughes in view of Pattin
Hughes was not applied in a rejection during prosecution of the 439 patent.
Hughes was cited by the applicant during prosecution. Pattin is not of record in
the 439 patent.
1.
Overview of Hughes
(Hughes at 2:2430
IPR2016-01026 Petition
Patent 6,546,439
controller, a buffer, and a plurality of sources that make memory requests.
(Hughes at 4:4448; 5:3542 (EX1002)); (Yalamanchili 32 (EX1006)). The
shared memory is also accessed by a refresh path source, not shown in Figure 2a.
13
IPR2016-01026 Petition
Patent 6,546,439
indicating whether the access is for read or write. (Hughes at 5:4042 (EX1002));
(Yalamanchili 33 (EX1006)). Hughes discloses that [e]ach request is stored in a
buffer represented by blocks 104 through 107 in the figure. (Hughes at 5:4345
(EX1002)).
14
IPR2016-01026 Petition
Patent 6,546,439
The blocks 104107 of the buffer are coupled to a request selection
processor 108. (Id. at 5:4546 (EX1002)). When determining a next request to
process, Hughes makes clear that the source of the request is considered:
The request selection processor 108 is able to select a
request synchronously from each of the buffers 104
through 107 in order to manage the shared memory
pipeline according to the present invention. Thus, the
source of the data, the beginning address of the data, the
size of the access and the direction of the access are all
utilized in combination with information about current
requests pending in the shared memory pipeline, in order
to select a next optimum request according to the
parameters of the particular implementation.
(Id. at 5:636:5 (emphasis added); see also 7:5759 (By determining the
source of the request and determining, based on particular criteria, the order of the
access requests, controller 72 arbitrates access to the SDRAM.) (EX1002));
(Yalamanchili 34 (EX1006)).
Figure 4 of Hughes is a flowchart which illustrates the request selection
process. (Hughes at 6:5859 (EX1002)); (Yalamanchili 35 (EX1006)).
15
IPR2016-01026 Petition
Patent 6,546,439
The process begins when the controller receives multiple requests (block
150). (Hughes at 6:6061 (EX1002)). The controller then determines the priority
of the source of the plural requests in block 151. (Id. at 6:6163 (EX1002)).
Thus, the controller must be able to determine which source is making the request.
If multiple requests have the highest priority, then a process is executed to select
the optimum request. (Id. at 6:6365 (EX1002)); (Yalamanchili 36 (EX1006)).
If only one request has the highest priority, then the high priority request is
16
IPR2016-01026 Petition
Patent 6,546,439
selected at block 152, the selected request is processed, and the algorithm returns
(block 153). (Id. at 6:6567 (EX1002)); (Yalamanchili 36 (EX1006)).
2.
Overview of Pattin
(EX1006)).
Figure 6 of Pattin is reproduced below with annotations to show (a) the
sources that make the memory requests, (b) a request queue 26, (c) a request
optimizer 22, and (d) a request processor 24. (Pattin at 6:5556, 7:5558, 8:1419
(EX1003)); (Yalamanchili 38 (EX1006)).
17
IPR2016-01026 Petition
Patent 6,546,439
The request prioritizer 22 examines pending requests in the request queue 26
to determine which request should be processed next by request processor 24.
(Pattin at 8:1416 (EX1003)). Requests may be processed in an order different
than the requests are received, to maximize memory performance. (Id. at 8:1619
(EX1003)); (Yalamanchili 39 (EX1006)).
Figure 5 of Pattin is reproduced below to show a diagram of the fields for a
memory request in the request queue. (Pattin at 7:2628 (EX1003)). The fields
include, e.g., memory commands and, importantly, a source identifier field 36,
shown by annotation. (Id. at 7:2637 (EX1003)); (Yalamanchili 40 (EX1006)).
In particular, Pattin discloses that an identifier for the source of the request is
stored in source field 36. (Pattin at 7:2637 (EX1003)). The request prioritizer 22
uses the fields, including the source identifier field 36, to reorder the memory
requests.
(Yalamanchili 40 (EX1006)).
18
IPR2016-01026 Petition
Patent 6,546,439
3.
Hughes and Pattin are each directed to systems that allow multiple sources
to access a shared memory and are in the same field of endeavor. (Yalamanchili
41 (EX1006)). The shared memory in both references is a form of DRAM.
Hughes and Pattin each disclose to increase pipeline efficiency by determining an
appropriate order to process memory requests. (Yalamanchili 41 (EX1006)).
Hughes and Pattin each disclose to consider attributes of the memory requests
when determining the order. (Yalamanchili 41 (EX1006)). Both references also
consider the source of the request attribute when determining the order.
(Yalamanchili 41 (EX1006)).
IPR2016-01026 Petition
Patent 6,546,439
used in the buffer of Pattin, with the existing fields used in the buffer of Hughes.
(Yalamanchili 42 (EX1006)).
(Yalamanchili 42
(EX1006)). While it may be argued that Hughes already has this feature because
of Hughess explicit need to identify the source of the memory requests, the
additional teachings in Pattin clarify how the source identification can be obtained.
(Yalamanchili 42 (EX1006)). Adding the source identification field to Hughes is
well within the abilities of one of ordinary skill in the art and would be
accomplished with a reasonable chance of success. (Yalamanchili 42 (EX1006)).
Doing so would require only minor hardware and/or software modifications to the
buffer and memory controller of Hughes. (Yalamanchili 42 (EX1006)).
4.
a)
b)
20
IPR2016-01026 Petition
Patent 6,546,439
Hughes discloses a requested memory operation buffer. (Yalamanchili
46 (EX1006)). Specifically, Hughes discloses that each memory request is
stored in a buffer represented by blocks 104 through 107 in [Figure 3]. (Hughes
at 5:4345 (EX1002)); (Yalamanchili 46 (EX1006)). As Hughes indicates, there
are multiple sources that access the shared memory.
(Yalamanchili 46
(EX1006)). The sources include an internal bus and its path 101, a corebus and its
path 102, and a processor and its path 103. (Hughes at 5:3640 (EX1002));
(Yalamanchili 46 (EX1006)). As shown in Figure 3, the buffer receives memory
requests from the sources. (Yalamanchili 46 (EX1006)). Thus, Hughes teaches
limitation (b) of claim 1. (Yalamanchili 46 (EX1006)).
c)
combination of
Hughes
and
Pattin
teaches
this
limitation.
IPR2016-01026 Petition
Patent 6,546,439
(Yalamanchili 48 (EX1006)).
In
particular, Pattin discloses that an identifier for the source of the request is stored
in source field 36. (Pattin (EX1003)). Pattin further discloses the ability to
distinguish between multiple sources of the same type. (Id. at 11:5658, 11:66
67). The request prioritizer 22 uses the fields, including the source identifier field
36, to reorder the memory requests.
IPR2016-01026 Petition
Patent 6,546,439
similar to the request selection processor 108 of Hughes. (Yalamanchili 49
(EX1006)).
Turning back to Hughes, this reference further discloses that the priority, or
order of arbitration, is programmable to allow the most critical requester [i.e.,
source] to be service[d] before the lower priority requesters. (Hughes at 14:4143
(EX1002)). Hughes teaches that this priority order may be static or dynamic. (Id.
at 14:4346 (EX1002)); (Yalamanchili 50 (EX1006)).
It would have been obvious for the buffer portions 104107 of Hughes to
include a source field 36, as disclosed by Pattin. (Yalamanchili 51 (EX1006)).
The motivation for doing so is described above. Further, a person of ordinary skill
in the art would appreciate that this would allow for desired flexibility in providing
the dynamic assignment of priorities disclosed by Hughes. (Yalamanchili 51
(EX1006)).
priorities to be assigned to different sources, it would not matter which path 100
103 was used by the different sources. (Yalamanchili 51 (EX1006)). Instead, a
memory controller would merely need to know which source is granted the highest
priority and then look to the source identification that is explicitly provided by the
buffer. (Yalamanchili 51 (EX1006)). Further, Pattin also acknowledges the use
of dynamic priorities.
(Yalamanchili 51 (EX1006)).
23
(Pattin at 11:5660
IPR2016-01026 Petition
Patent 6,546,439
(EX1003)). Thus, the combination of Hughes and Pattin teaches limitation (c) of
claim 1. (Yalamanchili 51 (EX1006)).
d)
24
IPR2016-01026 Petition
Patent 6,546,439
The request selection processor 108 is able to select a
request synchronously from each of the buffers 104
through 107 in order to manage the shared memory
pipeline according to the present invention. Thus, the
source of the data, the beginning address of the data, the
size of the access and the direction of the access are all
utilized in combination with information about current
requests pending in the shared memory pipeline, in order
to select a next optimum request according to the
parameters of the particular implementation.
(Hughes at 5:636:5, see also 7:5759 (By determining the source of the
request and determining, based on particular criteria, the order of the access
requests, controller 72 arbitrates access to the SDRAM. (EX1002));
(Yalamanchili 54 (EX1006)).
Hughes therefore teaches that (1) the memory request and (2) the source of
the data are used by the request selection processor 108. (Yalamanchili 55
(EX1006)). As noted above, it would have been obvious for the source of the
request to be stored in the buffer of Hughes, as taught by Pattin. (Yalamanchili
55 (EX1006)).
controller is configured to receive the memory requests and the source indication
from its buffer. (Yalamanchili 55 (EX1006)). Thus, the combination of Hughes
and Pattin teaches limitation (d) of claim 1. (Yalamanchili 55 (EX1006)).
25
IPR2016-01026 Petition
Patent 6,546,439
e)
If only one
request has the highest priority, then the high priority request is selected at block
152, the selected request is processed, and the algorithm returns (block 153).
(Hughes at 6:6567 (EX1002)). Thus, the combination of Hughes and Pattin
teaches limitation (e) of claim 1. (Yalamanchili 57 (EX1006)).
26
IPR2016-01026 Petition
Patent 6,546,439
5.
a)
(Yalamanchili 60 (EX1006)).
6.
a)
IPR2016-01026 Petition
Patent 6,546,439
indication of whether or not the memory request is
speculative.
For example, Pattin discloses that a speculative/demand bit is added to
each entry in request queue 26 to indicate if the request is speculative, before cache
look-up, or demand, after cache look-up. (Pattin at 10:4952 (EX1003)). Pattin
therefore teaches parameters that comprise an indication of whether or not the
memory request is speculative.
(Yalamanchili 62 (EX1006)).
Pattin also
discloses that [a]ll speculative requests have a lower priority than other demand
requests. (Pattin at 10:25, 10:5911:2, 11:49 (EX1003)).
Hughes discloses that the priority, or order of arbitration, is programmable
to allow the most critical requester [i.e., source] to be service[d] before the lower
priority requesters. (Hughes at 14:4143 (EX1002)). It would have been obvious
to modify one of the data fields in Hughes to provide an indication of whether or
not the memory request is speculative for the same reason taught by Pattin, which
is, for example, to consider whether a request is speculative when making a
priority determination. (Yalamanchili 63 (EX1006)). Thus, the combination of
Hughes and Pattin teaches the limitations of claim 7.
(EX1006)).
28
(Yalamanchili 63
IPR2016-01026 Petition
Patent 6,546,439
7.
a)
a)
29
IPR2016-01026 Petition
Patent 6,546,439
call an internal processor complex path 103. (Hughes at 5:3940 (EX1002)));
(Yalamanchili 68 (EX1006). Hughes further describes that a processor complex
interface 53 is used. (Id. at 4:4748 (EX1002)). It would have been obvious to a
person of ordinary skill in the art that the internal processor complex path 103 and
the processor complex interface 53 respectively teach CPU interfaces for the
central processing node. (Yalamanchili 68 (EX1006)).
Pattin teaches receiving requests from CPU cores. (Pattin at 7:5558
(EX1003)). The CPUs send memory requests using a [b]us 54. (Id. at 6:6466
(EX1003)). One of ordinary skill in the art would understand that the bus 54
provides the claimed CPU interface.
(Yalamanchili 69 (EX1006)).
Thus,
a)
(Yalamanchili 71 (EX1006)).
Hughes teaches to provide these queues for the plurality of sources, including the
30
IPR2016-01026 Petition
Patent 6,546,439
coresbus, the internal bus and the processor.
b)
IPR2016-01026 Petition
Patent 6,546,439
10.
a)
a)
32
IPR2016-01026 Petition
Patent 6,546,439
b)
c)
a)
a)
33
IPR2016-01026 Petition
Patent 6,546,439
indication of whether or not the memory request is
speculative.
As noted above in Section VII.A.6, the combination of Hughes and Pattin
teaches wherein the one or more parameters for each memory request comprise an
indication of whether or not the memory request is speculative.
14.
a)
a)
a)
34
IPR2016-01026 Petition
Patent 6,546,439
comprises placing each memory requests in a separate
memory request queue for each of said plurality of sources.
As noted above in Section VII.A.9, the combination of Hughes and Pattin
teaches wherein said associating a source indication for each memory request
comprises placing each memory requests in a separate memory request queue for
each of said plurality of sources.
17.
a)
Ground II: Claims 1, 4, 10, 11, 15, 17, 20, 26, 27, and 31 are
rendered obvious by Flynn in view of Gagliardo
Flynn was not applied in a rejection during prosecution of the 439 patent.
Flynn was cited by the applicant during prosecution. Gagliardo is not of record in
the 439 patent.
1.
Overview of Flynn
35
IPR2016-01026 Petition
Patent 6,546,439
operating a plurality of central processor units (sources) and input/output units
(additional sources) in a parallel fashion.
(Yalamanchili 95 (EX1006)).
source of the request to provide system efficiency and fairness to the different
sources. (Flynn at 2:4145; 3:414) (EX1004)); (Yalamanchili 95 (EX1006)).
Figure 1 of Flynn is reproduced below with annotations to show the plurality
of sources that make requests to a common memory 16.
(Flynn at 6:1117
36
IPR2016-01026 Petition
Patent 6,546,439
Communications between the SCU 14 and the memory 16 are handled
through a dedicated interface means 30.
37
IPR2016-01026 Petition
Patent 6,546,439
(Id. at 10:6811:4
38
IPR2016-01026 Petition
Patent 6,546,439
target addresses of the memory being accessed. (Flynn at 17:5566 (EX1004));
(Yalamanchili 99 (EX1006)).
In operation, the prioritizer 113 issues a priority index signal 116 that
indicates which source should have its request prioritized. (Flynn at 11:417
(EX1004)); (Yalamanchili 100 (EX1006)). The commands 114 and the priority
index signal 116 are sent to a multiplexer 117. (Flynn at 11:49 (EX1004)). The
multiplexer 117 then selects the command corresponding to the source that should
be given priority. (Id. at 11:49 (EX1004)); (Yalamanchili 100 (EX1006)).
Figure 4 of Flynn is reproduced below with annotations to show the
prioritizer 113 in more detail. The prioritizer includes latches 07. (Flynn at
11:6812:3, Figure 4 (EX1004)).
associated latches 07, shown in Figure 4, work together as a team to provide the
information sent to the multiplexer 117. (Id. at 11:49 (EX1004)); (Yalamanchili
101 (EX1006)). A latch is provided for each CPU and I/O unit that makes a
memory request.
IPR2016-01026 Petition
Patent 6,546,439
(Flynn at 12:4044 (EX1004)); (Yalamanchili 101 (EX1006)).
As one of
ordinary skill in the art would appreciate, the requests would contain at least one
bit of information to constitute the signal. (Yalamanchili 101 (EX1006)).
40
IPR2016-01026 Petition
Patent 6,546,439
The prioritizer 113 implements a hierarchical prioritizing scheme for
selection of requests for arbitration.
The
hierarchical scheme is based on (1) selecting the request which is most outstanding
in terms of time of arrival at the SCU port when multiple requests arrive at a given
port, and (2) selecting, from such outstanding requests a single request based on a
pre-defined hierarchy of request-originating sources. (Id. at 11:1017 (EX1004));
(Yalamanchili 102 (EX1006))); (Yalamanchili 102 (EX1006). Flynn describes
that the hierarchy for assigning priorities is keyed to the particular system unit
originating a communication request:
[T]he highest priority is preferably awarded to requests
originating from memory, while requests from I/O units
are awarded a relatively lower priority, and finally,
requests originating from CPUs are awarded the lowest
priority.
(Flynn at 11:1724 (emphasis added) (EX1004)).
Flynn therefore discloses to provide an indication of the source by virtue of
sending the REQ XX signal. (Yalamanchili 103 (EX1006)). The memory
requests, including an indication of the source, are then sent to a memory controller
through the interface 30, the details of which are discussed below with reference to
Gagliardo (Flynn at 6:3048 (EX1004)); (Yalamanchili 103 (EX1006)).
41
IPR2016-01026 Petition
Patent 6,546,439
2.
Overview of Gagliardo
Figure 1 of Gagliardo
Figure 1 of Flynn
42
IPR2016-01026 Petition
Patent 6,546,439
The interface means 30 described in Gagliardo comprises an array control
unit (ACU). (Gagliardo at p. 5, line 57p. 6, line 5; Figures 2 and 3 (EX1005)).
Figure 3 of Gagliardo is reproduced below to show how the ACU 34 interfaces
between the system control unit (SCU) 14 and the main memory unit (MMU) 36.
The MMU 36 functions as the storage section of the main memory 16. (Gagliardo
at p. 6, lines 23) (EX1005)).
43
IPR2016-01026 Petition
Patent 6,546,439
control for the memory modules [is] provided by the ACU. (Id. at p. 4, lines 38
40 (EX1005)); (Yalamanchili 106 (EX1006)).
As shown in Figure 3, the ACU has subcomponents, including a main
memory control (MMC) 70, memory control DRAM controller (MCD) 72 and
memory data path (MDP) modules 74 and 76. (Gagliardo at p. 8, lines 58p. 9,
lines 1620 (EX1005)).
The MMC module 70 in combination with the MCD module 72 provides
control for the data path and the memory modules. (Id. at p. 8, line 58p. 9, lines
12 (EX1005)). The MMC 70 and MCD 72 are linked to each other for exchange
of command signals, and are linked to the MMU 36 through control/status lines.
(Id. at p. 9, lines 24 (EX1005)). The MMC 70 is in direct communication with
SCU 14 by virtue of control/status lines. (Id. at p. 9, lines 34 (EX1005)).
The data path section of the ACU 34 is divided between the two MDP's 74
and 76. (Id. at p. 9, lines 1617 (EX1005)). The MDP modules are linked to the
MMC 70 for accepting and acknowledging command signals, and linked to both
the SCU 14 and the MMU 36 through data lines for transfer of data between the
SCU and memory. (Id. at p. 9, lines 1719 (EX1005)).
In operation, if the addressed memory segment is found to be busy, due to a
variety of reasons including a cycle delay in loading and unloading DRAM or due
to the need for the memory to be periodically refreshed on a per segment basis, the
44
IPR2016-01026 Petition
Patent 6,546,439
ACU 34 continues monitoring the memory segment and reports back to the SCU
when the address segment becomes available, so that a desired memory operation
can proceed. (Id. at p. 7, lines 47 (EX1005)); (Yalamanchili 110 (EX1006)). In
the meantime, the ACU 34, through suitable buffering, continues the processing,
on a sequential basis, of other memory access commands which are logged with
the SCU and require access to a memory segment which is available at the time.
(Gagliardo at p. 7, lines 810 (EX1005)); (Yalamanchili 110 (EX1006)). Thus,
the ACU 34 schedules access to memory based, e.g., on the availability of the
memory segments corresponding to the received memory requests. (Yalamanchili
110 (EX1006)).
The SCU 14 sends memory commands to the MMC 70, located within the
ACU 34. (Gagliardo at p. 10, lines 1518, p. 11, lines 1415 (EX1005)). This
action is performed using segment command buffers (180 and 181 in FIG. 10)
which are located within each MMC and which correspond to the memory
segments controlled by the MMC. (Id. at p. 10, lines 1820 (EX1005)). These
memory commands correspond to the memory commands received by the SCU
from the devices seeking access to memory, e.g., CPUs and I/O units. (Id. at
p. 10, lines 1518 (EX1005)); (Yalamanchili 111 (EX1006)).
Gagliardo further discloses that an identification of the source making a
memory request is sent to the ACU 34, along with the memory command.
45
IPR2016-01026 Petition
Patent 6,546,439
(Gagliardo at p. 7, lines 4344 (EX1005)); (Yalamanchili 112 (EX1006)).
Gagliardo envisions that the ACU 34 may use this identification to facilitate
prioritizing of memory commands and help routing of accessed data appropriately
through the ACU and SCU to the system unit originating the command.
(Gagliardo at p. 7, lines 4446 (EX1005)); (Yalamanchili 112 (EX1006)).
Figure 15 of Gagliardo is reproduced below to show additional aspects
involved in executing memory operations using the ACU. (Gagliardo at p. 5, lines
2324 (EX1005)).
46
IPR2016-01026 Petition
Patent 6,546,439
The interfacing action is initiated at step 261 by the
transmission of a signal from the ACU to the SCU
indicating that a command buffer is available for
accepting memory commands.
At step 262, a memory command prioritized for
execution by the SCU is transferred to the ACU along
with the corresponding index field.
The received memory command is checked at step
263 to determine whether the command was initiated by
a system CPU or I/O unit so that the appropriate protocol
of restrictions applicable to either a CPU or I/O memory
operation may be followed.
(Id. at p. 20, lines 4048 (emphasis added) (EX1005)).
Gagliardo discloses that if the requesting unit is found to be a CPU, step
264 is initiated and the memory system follows the CPU restriction protocol which
preferably includes the restriction of write transfers to eight quad-words at a time
and the specification of a single mask bit for every long-word of transferred data.
(Id. at p. 20, lines 4548 (EX1005)). Similarly, [i]f the requesting unit is found to
be an I/O unit, step 265 is undertaken wherein the I/O protocol of restrictions is
followed wherein write transfers are preferably permitted for any one of 1, 2, 4, 6,
or 8 quad-words. (Id. at p. 20, lines 4952 (EX1005)). The memory controller of
Gagliardo, the ACU, therefore receives the source indication, e.g., indication of
47
IPR2016-01026 Petition
Patent 6,546,439
whether the requesting unit is a CPU or I/O unit, and takes this information into
consideration to schedule access to memory. (Yalamanchili 115 (EX1006)).
3.
Flynn and Gagliardo are each directed to systems that allow multiple
sources to access a shared memory and are in the same field of endeavor.
(Yalamanchili 116 (EX1006)). Flynn discloses that communications between the
SCU 14 and the memory 16 are handled through a dedicated interface means 30.
(Flynn at 6:3036 (EX1004)). (Yalamanchili 116 (EX1006)). Both Flynn and
Gagliardo were owned by a common assignee at the time that Flynn was filed.
(Flynn at 6:4048 (EX1004)). With respect to details about the interface means
30, Flynn refers to and incorporates by reference U.S. patent application Ser. No.
07/306,326 (the 326 application).
116 (EX1006)).
The 326 application was abandoned before issuing as a patent. However,
Gagliardo claims priority to the 326 application and embodies the 326 application
specification.
(Gagliardo at p. 1 (EX1005)).
48
IPR2016-01026 Petition
Patent 6,546,439
provides explicit motivation to use the interface means of the 326 application and
its corresponding EP counterpart to Gagliardo. (Yalamanchili 117 (EX1006)).
Adding Gagliardos interface to Flynn is well within the abilities of one of
ordinary skill in the art and would be accomplished with a reasonable chance of
success. (Yalamanchili 117 (EX1006)).
4.
a)
(Yalamanchili 119
(EX1006)).
b)
teaches
the
recited
requested
memory
operation
buffer.
IPR2016-01026 Petition
Patent 6,546,439
sources. (Flynn at 11:5965 (EX1004) (The arrangement 160 includes a series of
latches 161 for accepting incoming requests from eight SCU ports comprising four
CPU ports two I/O ports, and two memory ports .)); (Yalamanchili 121
(EX1006)). Flynn also discloses a command buffer 115, shown in Flynns Figure
3 above, which receives corresponding memory request information from a
plurality of sources. (Flynn at 11:14 (EX1004) (commands 114 associated with
incoming requests are accepted and initially stored in a separate command buffer
115)); (Yalamanchili 121 (EX1006)). The command buffer 115 of Figure 3 and
its associated latches 07 shown in Figure 4 work together as a team to provide the
information sent to the multiplexer 117.
(Yalamanchili 121 (EX1006)).
appreciate, the combination of the command buffer 115 and its associated latches
0-7 act in a cooperative manner to temporarily store the memory requests, so as to
teach the claimed requested memory operation buffer.
(Yalamanchili 121
(EX1006)). Even the 439 patent acknowledges that those skilled in the art will
recognize that such location is somewhat arbitrary, and that such buffers could be
distributed to other components throughout a system so long as the appropriate
functionalities were preserved.
50
IPR2016-01026 Petition
Patent 6,546,439
Flynn discloses that sources of the requests include multiple CPU units and
I/O units. (Flynn at 11:4654 (EX1004) (Preferably the SCU is adapted to have
up to three requests outstanding at every CPU port in the SCU and up to two
requests for each I/O unit and each memory unit port in the SCU . . . Similarly, up
to 20 corresponding incoming commands need to be stored and the command
buffer 115 is accordingly provided with the capacity to accomplish this.)). Thus,
Flynn teaches limitation (b) of claim 1. (Yalamanchili 122 (EX1006)).
c)
IPR2016-01026 Petition
Patent 6,546,439
(Yalamanchili 124 (EX1006)). These signals are provided for each memory
request that is made. (Yalamanchili 124 (EX1006)). The priority selector 162,
shown in Figure 4, knows which device or source sent the memory request based
on the individual signals REQ 00-07 that it receives.
(Flynn at 12:4044
d)
IPR2016-01026 Petition
Patent 6,546,439
(Gagliardo at p. 10, lines 1518, p. 11, lines 1415, p. 20, lines 4043 (EX1005));
(Yalamanchili 127 (EX1006)).
command buffers (180 and 181 in FIG. 10) which are located within each MMC
and which correspond to the memory segments controlled by the MMC.
(Gagliardo at p. 10, lines 1820 (EX1005)); (Yalamanchili 127 (EX1006)).
These memory commands correspond to the memory commands received by the
SCU from the devices seeking access to memory, e.g., CPUs and I/O units. (Id. at
p. 10, lines 1518, p. 11, lines 1415, p. 20, lines 4043 (EX1005)); (Yalamanchili
127 (EX1006)). Gagliardo further discloses that an identification of the source
making a memory request is sent to the ACU 34, along with the memory
command.
e)
IPR2016-01026 Petition
Patent 6,546,439
monitoring the memory segment and reports back to the SCU 14 when the address
segment becomes available, so that a desired memory operation can proceed.
(Gagliardo at p. 7, lines 47 (EX1005)); (Yalamanchili 129 (EX1006)). In the
meantime, the ACU 34, through suitable buffering, continues processing, on a
sequential basis, of other memory access commands which are logged with the
SCU 14 and require access to a memory segment which is available at the time.
(Gagliardo at p. 7, lines 810 (EX1005)); (Yalamanchili 129 (EX1006)). Thus,
the ACU 34 schedules access to memory based, e.g., on the availability of the
memory segments corresponding to the received memory requests. (Yalamanchili
129 (EX1006)).
Further, Gagliardo describes that if the requesting unit is found to be a
CPU, step 264 is initiated and the memory system follows the CPU restriction
protocol which preferably includes the restriction of write transfers to eight quadwords at a time and the specification of a single mask bit for every long-word of
transferred data. (Gagliardo at p. 20, lines 4548 (EX1005)). Similarly, [i]f the
requesting unit is found to be an I/O unit, step 265 is undertaken wherein the I/O
protocol of restrictions is followed wherein write transfers are preferably permitted
for any one of 1, 2, 4, 6, or 8 quad-words. (Id. at p. 20, lines 4952 (EX1005)).
The memory controller of Gagliardo, the ACU, therefore receives the source
indication, e.g., indication of whether the requesting unit is a CPU or I/O unit, and
54
IPR2016-01026 Petition
Patent 6,546,439
takes this information into consideration to schedule access to memory.
(Yalamanchili 130 (EX1006)). Further, Gagliardo envisions that the ACU 34
may use this identification to facilitate prioritizing of memory commands and
help routing of accessed data appropriately through the ACU and SCU to the
system unit originating the command. (Gagliardo at p. 7, lines 4446 (EX1005));
(Yalamanchili 130 (EX1006)). Thus, Flynn in combination with Gagliardo
teaches limitation (e) of claim 1. (Yalamanchili 130 (EX1006)).
5.
a)
55
IPR2016-01026 Petition
Patent 6,546,439
claimed one or more parameters.
The
commands 114 are stored in addition to said source indication. For example, as
described above, the latches 07 store and provide the source indication.
(Yalamanchili 132 (EX1006)); (Flynn at 12:4041, Figure 4. (EX1004)).
Gagliardo teaches that its memory controller, i.e. the ACU, uses (1) the
command parameters provided by the command buffer 114 and (2) the source
indications, e.g., RE 00REQ 08, provided by the latches 0-7 that are associated
with the command buffer 114, for scheduling the memory requests. (Yalamanchili
133 (EX1006)). For example, Gagliardo teaches to schedule memory requests
by managing the timing of processing the requests based on availability of system
resources.
(EX1006)).
Further, Gagliardo discloses that the ACU schedules different protocols
based on whether the requesting unit is found to be a CPU or found to be an I/O
unit. (Gagliardo at p. 20, lines 45952 (EX1005)). The ACU of Gagliardo
therefore receives the source indication, e.g., indication of whether the requesting
unit is a CPU or I/O unit, and takes this information into consideration when
scheduling the memory requests, as required by claim 4. (Yalamanchili 134
(EX1006)). Thus, Flynn in combination with Gagliardo teaches the limitations of
claim 4. (Yalamanchili 134 (EX1006)).
56
IPR2016-01026 Petition
Patent 6,546,439
6.
a)
a)
57
IPR2016-01026 Petition
Patent 6,546,439
eight ports are provided on the SCU for accepting requests and associated
commands from corresponding system units. (Id. at 11:3033 (EX1004)). It
would have been obvious to a person of ordinary skill in the art that these
connections and ports teach the recited CPU interface.
(Yalamanchili 138
(EX1006)).
Gagliardo teaches receiving requests from a plurality of central processing
units (CPUs) 12. (Gagliardo at p. 5:31 (EX1005)).
Figure 1 of Gagliardo,
similar to Figure 1 of Flynn, shows connections between the CPUs and the SCU.
(Id. at Figure 1 (EX1005)). Gagliardo further describes that at least eight ports
are provided on the SCU for accepting requests and associated commands from
corresponding system units.
(Yalamanchili 139
(EX1006)).
8.
a)
IPR2016-01026 Petition
Patent 6,546,439
REQ 07, which are shown in Figure 4 as being provided by the latches, represent
the different sources and are therefore source indications. (Yalamanchili 141
(EX1006)). For example, the signal REQ 00 indicates that the device at CPU port
0 made a memory request. (Flynn at 11:68-12:3 (EX1004))); (Yalamanchili 141
(EX1006). A person of ordinary skill in the art would have understood that these
source indications each provide an identity of a request initiator for the memory
request, by indicating, for example, that the CPU at port 0 made the request.
(Yalamanchili 141 (EX1006)).
9.
a)
b)
59
IPR2016-01026 Petition
Patent 6,546,439
c)
a)
a)
60
IPR2016-01026 Petition
Patent 6,546,439
a)
a)
61
IPR2016-01026 Petition
Patent 6,546,439
VIII. CONCLUSION
Based on the foregoing, the challenged claims of the 439 patent recite
subject matter that is unpatentable. The Petitioner requests institution of an inter
partes review to cancel these claims.
Respectfully Submitted,
/David L. Cavanaugh/
David L. Cavanaugh
Registration No. 36,476
Jonathan Stroud
Registration No. 72,518
Daniel V. Williams
Registration No. 45,221
62
IPR2016-01026 Petition
Patent 6,546,439
Exhibit
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
Description
US Patent 6,546,439
US Patent 5,784,582 (Hughes) (filed on October 28, 1996,
published on July 21, 1998)
US Patent 5,745,913 (Pattin) (filed on August 5, 1996,
published on April 28, 1998)
US Patent 5,155,854 (Flynn) (filed on February 3, 1989,
published on October 13, 1992)
European Patent Application 0 380 844 (Gagliardo)
(published on August 8, 1990)
Declaration of Professor Sudhakar Yalamanchili
File History, Application (12/09/98)
File History, Amendment (4/22/02)
File History, Office Action (5/21/02)
File History, Request for Consideration (8/23/02)
File History, Notice of Allowability (9/25/02)
U.S. Application No. 07/306, 326 (326 application), filed
February 3, 1989.
Petitioners Voluntary Interrogatory Responses
IPR2016-01026 Petition
Patent 6,546,439
CERTIFICATE UNDER 37 CFR 42.24(d)
Under the provisions of 37 CFR 42.24(d), the undersigned hereby certifies
that the word count for the foregoing Petition for Inter Partes Review totals
11,494, which is less than the 14,000 words allowed under 37 CFR 42.24(a)(i).
Respectfully submitted,
/Daniel V. Williams/
Daniel V. Williams
Reg. No. 45,221
Wilmer Cutler Pickering Hale and Dorr LLP
1875 Pennsylvania Ave., NW
Washington, DC 20006
Tel: (202) 663-6000
IPR2016-01026 Petition
Patent 6,546,439
CERTIFICATE OF SERVICE
I hereby certify that on May 11, 2016, I caused a true and correct copy of the
foregoing materials:
Petition for Inter Partes Review of U.S. Patent No. 6,546,439 Under 35
U.S.C. 312 and 37 C.F.R. 42.104
Exhibit List
Exhibits for Petition for Inter Partes Review of U.S. Patent No. 6,546,439
(EX10011013)
Power of Attorney
Fee Authorization
Word Count Certification Under 37 CFR 42.24(d)
to be served via Express Mail on the following correspondent of record as listed on
PAIR:
MEYERTONS, HOOD, KIVLIN, KOWERT & GOETZEL (AMD)
P.O. BOX 398
AUSTIN TX 78767-0398
/Daniel V. Williams/
Daniel V. Williams
ii