throbber
UNITED STATES PATENT AND TRADEMARK OFFICE
`____________
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`____________
`
`LG ELECTRONICS, INC.
`Petitioner
`
`v.
`
`ATI TECHNOLOGIES ULC
`Patent Owner
`____________
`
`Case No.: IPR2017-01225
`Patent 8,760,454
`____________
`
`PETITION FOR INTER PARTES REVIEW
`OF U.S. PATENT NO. 8,760,454
`
`723303229
`
`

`

`TABLE OF CONTENTS
`
`Page
`
`I.
`
`II.
`III.
`IV.
`V.
`
`MANDATORY NOTICES PURSUANT TO 37 C.F.R. §42.8.....................1
`A.
`Real Parties-In-Interest.........................................................................1
`B.
`Related Matters.....................................................................................1
`C.
`Lead and Backup Counsel....................................................................1
`D.
`Service Information..............................................................................2
`PAYMENT OF FEES ....................................................................................2
`STANDING....................................................................................................2
`SUMMARY OF THE PRIOR ART...............................................................3
`REQUEST FOR INTER PARTES REVIEW OF CLAIMS 2-11 OF
`THE ’454 PATENT........................................................................................3
`A.
`Technology Background ......................................................................3
`B.
`Description of the ’454 Patent..............................................................5
`C.
`Prosecution History of the ’454 Patent ................................................7
`VI. CLAIM CONSTRUCTION ...........................................................................8
`VII. COLLATERAL ESTOPPEL..........................................................................9
`VIII. GROUNDS FOR UNPATENTABILITY....................................................12
`A.
`Ground 1: Lindholm Anticipates Claims 2-11...................................13
`1.
`“unified shader” (claims 2-11).................................................15
`2.
`“general purpose register block” (claim 2) / “shared
`resources” (claims 3, 4) / “store” (claim 5) .............................17
`“processor unit” (claims 2-5, 8, 9, 11).....................................18
`“sequencer” (claims 2, 5).........................................................25
`“circuitry operative to fetch data from a memory” (claim
`6) ..............................................................................................26
`“selection circuit” (claim 7).....................................................27
`“arbiter” (claim 10) ..................................................................27
`“instruction store” (claim 11)...................................................28
`
`3.
`4.
`5.
`
`6.
`7.
`8.
`
`723303229
`
`-i-
`
`

`

`TABLE OF CONTENTS
`(continued)
`
`Page
`
`B.
`
`C.
`D.
`
`Ground 2: Lindholm, Alone or in Combination with the
`OpenGL Renders Claims 2-11 Obvious. ...........................................28
`1.
`Claims 2, 8, 9 ...........................................................................28
`2.
`Claims 3-10..............................................................................32
`Summary of Lindholm Grounds ........................................................33
`Ground 3: Stuttard Anticipates Claims 2 and 11. ..............................42
`1.
`“unified shader” (claims 2, 11) ................................................45
`2.
`“general purpose register block” (claim 2)..............................46
`3.
`“processor unit” (claims 2, 11) ................................................47
`4.
`“sequencer” (claim 2) ..............................................................48
`5.
`“instruction store” (claim 11)...................................................49
`Ground 4: Stuttard Renders Claims 2-11 Obvious. ...........................49
`1.
`“unified shader” (claims 3-10).................................................51
`2.
`“shared resources” (claims 3, 4) / “store” (claim 5) ................51
`3.
`“processor unit” (claims 3-5)...................................................51
`4.
`“sequencer” (claim 5) ..............................................................54
`5.
`“circuitry operative to fetch data from a memory” (claim
`6) ..............................................................................................55
`“selection circuit” (claim 7).....................................................55
`6.
`“arbiter” (claim 10) ..................................................................55
`7.
`Summary of Stuttard Grounds............................................................56
`F.
`IX. CONCLUSION.............................................................................................70
`
`E.
`
`723303229
`
`-ii-
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`PETITIONER’S EXHIBIT LIST
`
`Exhibit # Reference Name
`1001
`U.S. Patent 8,760,454
`1002
`Prosecution History of U.S. Patent 8,760,454
`1003
`U.S. Patent 7,038,685 (“Lindholm”)
`1004 WO 00/62182 (“Stuttard”)
`1005
`Declaration of Nader Bagherzadeh, Ph.D.
`1006
`Final Written Decision in IPR2015-00325
`1007
`Final Written Decision in IPR2015-00326
`Curriculum Vitae of Nader Bagherzadeh, Ph.D.
`1008
`1009
`OpenGL Graphics System: A Specification, Version 1.4
`1010
`OpenGL Overview
`for U.S. Patent No. 8,760,454
`Infringement Chart
`(Public Ex. 21 to ITC Complaint in 337-TA-1044)
`
`1011
`
`723303229
`
`-i-
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`Pursuant to 35 U.S.C. §§ 311-319 and 37 C.F.R. §§ 42.1-.80 & 42.100-.123
`
`et seq., Petitioner requests inter partes review of claims 2-11 of U.S. Patent
`
`8,760,454 (“the ’454 patent”) (“Ex. 1001”).
`
`I.
`
`MANDATORY NOTICES PURSUANT TO 37 C.F.R. §42.8
`
`A.
`
`Real Parties-In-Interest
`
`LG Electronics U.S.A., Inc. and LG Electronics MobileComm U.S.A., Inc.
`
`are real parties-in-interest with Petitioner LG Electronics, Inc.
`
`B.
`
`Related Matters
`
`The ’454 patent is the subject of the following actions brought by Patent
`
`Owner against Petitioner that may affect or be affected by a decision in this
`
`proceeding: U.S. International Trade Commission Inv. No. 337-TA-1044 and the
`
`U.S. District Court for the District of Delaware Case No. 1:17-cv-00065. Petitioner
`
`is concurrently filing a petition for U.S. Patent 9,582,846, which is also being
`
`asserted in those litigations. The ’454 patent is a continuation of U.S. Patent
`
`6,897,871 (“the ’871 patent”), which was subject to review in IPR2015-00326.
`
`C.
`
`Lead and Backup Counsel
`
`Robert G. Pluta (lead counsel)
`Registration No. 50,970
`Amanda K. Streff (back-up counsel)
`Registration No. 65,224
`MAYER BROWN LLP
`71 S. Wacker Drive
`Chicago, IL 60606
`Telephone: (312) 701-8641
`
`723303229
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`Fax: (312) 706-8144
`rpluta@mayerbrown.com
`astreff@mayerbrown.com
`
`Bryan Nese (back-up counsel)
`Registration No. 66,023
`MAYER BROWN LLP
`1999 K Street, N.W.
`Washington, DC 20006-1101
`Telephone: (202) 263-3266
`Fax: (202) 263-3300
`bnese@mayerbrown.com
`
`D.
`
`Service Information.
`
`Please direct all correspondence regarding this proceeding to lead counsel at
`
`the addresses identified above. Petitioner consents to electronic service by email:
`
`rpluta@mayerbrown.com,
`
`bnese@mayerbrown.com,
`
`and
`
`astreff@mayerbrown.com with a courtesy copy to AMDIPR@mayerbrown.com.
`
`II.
`
`PAYMENT OF FEES
`
`Pursuant to 37 C.F.R. §42.103, $23,000 is being paid at the time of filing
`
`this petition, charged to Deposit Account 130019. Should any further fees be
`
`required, the Board is hereby authorized to charge the above referenced Deposit
`
`Account.
`
`III.
`
`STANDING
`
`Pursuant to 37 C.F.R. §42.104(a), Petitioner certifies that (1) the ’454 patent
`
`is available for review; and (2) Petitioner is not barred or estopped from requesting
`
`723303229
`
`2
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`review of claims 2-11 of the ’454 patent on the grounds identified in this Petition.
`
`This Petition is timely filed under 35 U.S.C. § 315(b).
`
`IV.
`
`SUMMARY OF THE PRIOR ART
`
`Petitioner has a reasonable likelihood of prevailing with respect to claims 2-
`
`11 of the ’454 patent. Specifically, these claims should be found unpatentable in
`
`view of the following prior art:
`
`Patent/Publication No.
`
`US 7,038,685 (“Lindholm”)
`WO 00/62182 (“Stuttard”)
`OpenGL v1.4
`
`Priority
`Date
`6/30/2003
`10/19/2000
`7/24/2002
`
`Publication
`Date
`5/2/2006
`10/19/2000
`7/24/2002
`
`Exhibit
`No.
`1003
`1004
`1009
`
`V.
`
`REQUEST FOR INTER PARTES REVIEW OF CLAIMS 2-11 OF
`THE ’454 PATENT
`
`Pursuant to 37 C.F.R. §42.104(b), Petitioner requests that the Board find
`
`claims 2-11 of the ’454 patent unpatentable.
`
`A.
`
`Technology Background
`
`Graphics processing systems were well known before the effective filing
`
`date of the ’454 patent. E.g., Ex. 1001, 1:38-2:29, FIGS. 1-3. The patent discloses
`
`that graphics processors generate complex shapes and structures for display on a
`
`screen. Id. at 1:38-48. Often, programs called shaders included in graphics
`
`processors are used to specify how, and with what corresponding attributes, “a
`
`final image is drawn on a screen … .” Id. at 1:51-54.
`
`723303229
`
`3
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`For example, a shader can accept a plurality of inputs such as shape, color,
`
`and texture data of an object, and process those inputs to create an output. Id. at
`
`1:54-62. The shader output may represent the constructed object with appearance
`
`properties that can be displayed on a screen. Id. at 1:54-62.
`
`Early graphics processors used two types of shaders: vertex and pixel. Id. at
`
`2:25-29. “Vertex” shaders accepted coordinate data representing 3D objects and
`
`transformed the coordinate data into data that can be displayed on a screen. Id. at
`
`1:63-2:7. “Pixel” shaders accepted pixel data of rendered graphic objects and
`
`provided appearance attributes, such as color values, to each pixel. Id. at 2:8-12.
`
`Figure 3 of the patent illustrates vertex and pixel shaders positioned in a sequential
`
`or serial fashion in a graphics processor architecture:
`
`Ex. 1001, FIG. 3
`
`4
`
`723303229
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`After vertex shader 46 performs coordinate transformation, the transformed
`
`vertex data is transmitted to a primitive assembly block 50, which converts the
`
`transformed vertex data into a plurality of primitives (or, objects) to be further
`
`processed. Id. at 3:44-46. The next sequential processing occurs when the
`
`assembled data is converted to pixel data by a rasterization engine 52. Id. Finally,
`
`the pixel data is processed by pixel shader 54 to generate color and other
`
`appearance attributes.
`
`Id. at 3:54-60; see Ex. 1005, Declaration of Nader
`
`Bagherzadeh, Ph.D., ¶¶26-36, 222.
`
`B.
`
`Description of the ’454 Patent
`
`The ’454 patent describes a graphics processing architecture that uses a
`
`single shader (a so-called unified shader) to perform both vertex and pixel
`
`operations, instead of separate shaders for each type of operation. Ex. 1001,
`
`Abstract. Figure 4a of the patent
`
`illustrates the described graphics processor
`
`architecture:
`
`723303229
`
`5
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`
`Ex. 1001, FIG. 4A
`
`This architecture includes “an arbiter circuit for selecting one of a plurality
`
`of inputs for processing ….” Id. at 2:62-65. The inputs can either be vertex data or
`
`pixel data. Id. at 4:13-28. After the arbiter selects the inputs, a shader 62 performs
`
`either vertex operations or pixel operations. Id. at 2:66-3:3. Shader 62 is connected
`
`to a cache block 70, which stores parameter and position information, and which is
`
`connected to a primitive assembly block 72. Id. at 5:53-63. Primitive assembly
`
`block 72 is connected to a rasterization engine 74, which converts the primitives
`
`into pixel data information. Id. at 5:63-6:1.
`
`Shader 62 contains a general-purpose register 92 for storing pixel and vertex
`
`information output from multiplexer 66. See id. at 4:34-37.
`
`723303229
`
`6
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`
`Ex. 1001, FIG. 5
`
`Shader 62 also includes a sequencer 99 that contains instructions for the
`
`vertex and pixel data stored in register 92. Id. at 5:6-18, 5:19-21. A sequencer
`
`determines the type of processing that needs to be performed and sends data to
`
`source registers (93, 95, 97) for subsequent execution. Id. at 5:6-18. Because
`
`general purpose register 92 stores both vertex and pixel data and the sequencer
`
`stores both vertex and pixel instructions to be executed by processor 96, shader 62
`
`can “perform both vertex and pixel operations.” Id. at 5:21-23.
`
`C.
`
`Prosecution History of the ’454 Patent
`
`The application leading to the ’454 patent was filed on May 17, 2011, and
`
`issued on June 24, 2014. The ’454 patent claims priority to an application filed
`
`November 20, 2003. Accordingly, Lindholm qualifies as prior art under 35 U.S.C.
`
`§ 102(e). Stuttard and OpenGL qualify as prior art under 35 U.S.C. § 102(b).
`
`723303229
`
`7
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`Neither Stuttard nor OpenGL was considered during prosecution of the ’454
`
`patent.
`
`During prosecution, the Examiner used Lindholm to reject the claims of the
`
`’454 patent. E.g., Ex. 1002, 103-14, 262-73. Patent Owner ATI was not able to
`
`overcome this rejection on the merits of Lindholm. Id. at 411, ¶4. Indeed, ATI
`
`never addressed this Lindholm rejection on its merits, and instead argued that
`
`Lindholm was not prior art based on the same swear-behind arguments this Board
`
`would later reject in IPR2015-00325 and -00326.1 See id. at 127-29, 356-61, 458-
`
`59.
`
`Thus, claims 2-11 are unpatentable, as ATI all but admitted by not
`
`challenging the Examiner’s Lindholm rejection on the merits.
`
`VI. CLAIM CONSTRUCTION
`A claim subject to inter partes review is given its “broadest reasonable
`
`construction in light of the specification of the patent in which it appears.” 37
`
`C.F.R. §42.100(b). This means that the words of the claim are given their plain
`
`meaning from the perspective of one of ordinary skill in the art unless that meaning
`
`1 In IPR2015-00325 and IPR2015-00326, the Board ruled that the ’454 patent’s
`
`parent patent (the ’871 patent) is not entitled to a priority date that would antedate
`
`Lindholm. See Ex. 1007, 4.
`
`723303229
`
`8
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`is inconsistent with the specification. In re Zletz, 893 F.2d 319, 321 (Fed. Cir.
`
`1989). Petitioner submits, for the purposes of inter partes review only, that the
`
`claim terms are presumed to take on their broadest reasonable interpretation in
`
`light of the specification of the ’454 patent.2
`
`VII. COLLATERAL ESTOPPEL
`
`The issue of whether ATI is entitled to a priority date earlier than its earliest
`
`effective filing date for the ’454 patent family was fully litigated and resolved in
`
`Petitioner’s favor in IPR2015-00325 and -00326. There is no need to consider that
`
`issue again.
`
`Thus, ATI is collaterally estopped from rearguing these determinations in
`
`the present proceeding. See Ohio Willow Wood v. Alps South, 735 F.3d 1333, 1342
`
`(Fed. Cir. 2013) (“Our precedent does not limit collateral estoppel to patent claims
`
`2 Inter partes review is limited to evaluating invalidity issues arising from the
`
`consideration of certain prior-art issues, i.e., 35 U.S.C. §§ 102-103; and, therefore,
`
`excludes consideration of indefiniteness, enablement, and numerous other grounds
`
`for invalidity. Petitioner thus files this inter partes review without prejudice to its
`
`right to challenge the validity of the subject patent in other forums and proceedings
`
`on any and all bases recognized by law and equity, including, but not limited to,
`
`the basis that any of the claim terms at issue are indefinite.
`
`723303229
`
`9
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`that are identical. Rather it is the identity of the issues that were litigated that
`
`determines whether collateral estoppel should apply.”).
`
`“Collateral estoppel protects a party from having to litigate issues that have
`
`been fully and fairly tried in a previous action and adversely resolved against a
`
`party-opponent.” Id. at 1342. Collateral estoppel is applicable in a later proceeding
`
`when: (1) the issues in the first action are identical to those in the second; (2) the
`
`same issues were actually litigated; (3) resolution of those issues was essential to
`
`the final judgment in the first action; and (4) the party against whom preclusion is
`
`being applied had a full, fair opportunity to litigate those issues. In re Freeman, 30
`
`F.3d 1459, 1465 (Fed. Cir. 1994).
`
`Moreover, collateral estoppel attaches upon the entry of the final judgment,
`
`even before all appeals are exhausted. See Pharmacia v. Mylan, 170 F.3d 1373,
`
`1381 (Fed. Cir. 1999) (pending appeal does not preclude application of collateral
`
`estoppel).
`
`This proceeding is related to IPR2015-00326 involving the ’871 patent, to
`
`which the ’454 patent claims priority. In that proceeding, the Board found that ATI
`
`did not antedate U.S. Patent 7,015,913 (“Lindholm ’913”) based on another related
`
`final written decision in IPR2015-00325, Paper 62 (Ex. 1006). Ex. 1007, IPR2015-
`
`00326, Paper 49 at 4.
`
`723303229
`
`10
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`Thus, This proceeding involves the same issue that was fully litigated in
`
`IPR2015-00326, and which resulted in a final written decision, namely, whether
`
`ATI could claim priority prior for the ’454 patent’s parent prior to June 2003,
`
`thereby antedating both Lindholm references. The antedating issue was essential to
`
`the final written decision finding claims unpatentable over Lindholm ’913, and
`
`ATI had a full, fair opportunity to litigate that issue.
`
`Thus, collateral estoppel applies based on the final written decisions in
`
`IPR2015-00326 and IPR2015-00325. See B&B Hardware v. Hargis, 135 S. Ct.
`
`1293, 1302-05 (2015) (applying collateral estoppel to a final judgment by an
`
`administrative agency acting in an adjudicative capacity).
`
`This would not be the first panel of the Board to apply collateral estoppel. In
`
`CBM2016-0081, the petitioner argued that the identified issues for disqualification
`
`were raised in a Federal Circuit appeal, and that collateral estoppel barred the
`
`patent owner from re-litigating those issues. SAP America, Inc. v. Lakshmi
`
`Arunachalam, CBM2016-00081, Paper 12 at 3 (P.T.A.B. Nov. 18, 2016). The
`
`panel agreed: “[t]he arguments proffered by Patent Owner in its Motion are
`
`generally the same as those raised in the similar motion made to the Federal
`
`Circuit” and that “all of the aspects required for collateral estoppel to apply have
`
`been met.” Id. at 4-5 (citing Dana v. E.S. Originals, Inc., 342 F.3d 1320, 1323
`
`(Fed. Cir. 2003)).
`
`723303229
`
`11
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`The decision in IPR2015-00326 adopted the decision and reasoning from the
`
`prior decision in IPR2015-00325 involving the same parties, same issue, and same
`
`evidence. Specifically, the Board found that “Patent Owner relies [on] the same
`
`evidence and substantially the same arguments in the present review and in
`
`IPR2015-00325 in support of its efforts to antedate Lindholm [’913].” Ex. 1007 at
`
`3. The Board noted that the final written decision in IPR2015-00325 found that
`
`ATI had not antedated Lindholm ’913 and that the claims challenged in IPR2015-
`
`00326 were unpatentable over Lindholm ’913. Id. at 4.
`
`For the same reasons, collateral estoppel applies in this case. ATI should not
`
`be permitted to relitigate the issue of whether it can antedate the Lindholm
`
`reference used here. See, e.g., Finjan, Inc. v. Proofpoint, Inc., Case No. 13-cv-
`
`05808-HSG, 2016 WL 1427462, at *7-8 (N.D. Cal. Apr. 12, 2016) (applying
`
`collateral estoppel to preclude the plaintiff from rearguing the priority date of an
`
`asserted patent).
`
`The Board considered ATI’s antedating arguments before; it need not do so
`
`again.
`
`VIII. GROUNDS FOR UNPATENTABILITY
`
`Ground Claims
`1
`2-11
`2
`2-11
`
`Statutory Basis
`Anticipated under 35 U.S.C. § 102(e) by Lindholm
`Obvious Under 35 U.S.C. § 103(a) over Lindholm,
`Alone or in Combination with OpenGL
`
`723303229
`
`12
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`Ground Claims
`3
`2, 11
`4
`2-11
`
`Statutory Basis
`Anticipated under 35 U.S.C. § 102(b) by Stuttard
`Obvious Under 35 U.S.C. § 103(a) over Stuttard
`
`As explained in further detail by Petitioner’s expert, Dr. Nader Bagherzadeh,
`
`each of claims 2-11 is unpatentable as being anticipated by the prior art. Dr.
`
`Bagherzadeh also explains that these claims would have been obvious to a person
`
`of ordinary skill in the art at the time of the alleged invention (a “POSA”)3 based
`
`on the teachings of the prior art.
`
`A.
`
`Ground 1: Lindholm Anticipates Claims 2-11.
`
`Lindholm discloses a graphics processing system capable of multithreaded
`
`processing. Ex. 1003, Abstract. Lindholm’s graphics processing system includes a
`
`dedicated graphics processor 105 having a Programmable Graphics Processing
`
`Pipeline 150. Id. at FIG. 1. Pipeline 150 is made up of a plurality of Execution
`
`Pipelines 240 each having at least one Multithreaded Processing Unit 400, which
`
`processes samples from either a Vertex Input Buffer 220 or a Pixel Input Buffer
`
`215. Id. at 4:22-41, 5:11-22, FIG. 2. As will be discussed, Lindholm’s Execution
`
`3 A POSA at the time of the alleged invention of the ’454 patent would have had a
`
`Master’s Degree in Electrical or Computer Engineering, or equivalent thereof, and
`
`two or more years of practical working experience in the relevant field. Ex. 1005,
`
`¶48.
`
`723303229
`
`13
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`Pipeline 240 includes components that correspond to the claimed “unified shader”;
`
`the pipeline performs both vertex and pixel operations.
`
`For the Board’s convenience, the following table and annotated figure
`
`summarize non-limiting, exemplary structures in Lindholm that correspond to
`
`certain claim terms:
`
`Claim Term
`“unified shader”
`
`“general purpose register block”
`“shared resources”
`“store”
`“processor unit”
`“sequencer”
`
`“instruction store”
`“circuitry operative to fetch data”
`“selection circuit”
`“arbiter”
`
`Exemplary Structure in Lindholm
`Execution Pipeline 240 and/or certain
`components thereof
`Register File 350 and memory locations
`(registers) therein, as well as other
`memory locations in Lindholm
`
`Execution Unit 470
`Circuitry including Instruction
`Scheduler 430, Instruction Dispatcher
`440, and Instruction Cache 410
`Instruction Cache 410
`Instruction Dispatcher 440
`Thread Selection Unit 415
`Thread Control Unit 420
`
`723303229
`
`14
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`
`“instruction store”
`
`“sequencer”
`
`“circuitry … to
`fetch”
`
`“processor unit”
`
`“selection
`circuit”
`
`“arbiter”
`
`“general purpose
`register block” /
`“shared resources”
`/ “store”
`
`Ex. 1003, FIG. 4 (annotated)
`
`1.
`
`“unified shader” (claims 2-11)
`
`As illustrated in Figure 2 of Lindholm, samples from the Vertex Input Buffer
`
`220 are directed to and processed by the Execution Pipeline 240 and stored in a
`
`Vertex Output Buffer 260 in a cache. Id. at 4:65-5:1, FIG. 2.
`
`723303229
`
`15
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`
`Ex. 1003, FIG. 2
`
`The processed vertices from Vertex Output Buffer 260 are then sent to a
`
`Primitive Assembly/Setup 205 followed by a Raster Unit 210 to “calculate[]
`
`parameters” and to “perform[] scan conversion on samples,” respectively. Id. at
`
`4:65-5:10. Output samples from Raster Unit 210 are received by Pixel Input Buffer
`
`215, which then sends the samples to be processed by Execution Pipeline 240. Id.
`
`at 5:11-22.
`
`Each Execution Pipeline 240 can perform both vertex functions, such as
`
`transforming samples from one coordinates space to another (id. at 4:44-49), and
`
`pixel functions such as texture mapping, shading, and blending (id. at 5:25-33).
`
`723303229
`
`16
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`Thus, although these claims’ preambles are not limiting when given their
`
`broadest reasonable interpretation, Execution Pipeline 240 (and/or components
`
`thereof) corresponds to the “unified shader.”
`
`2.
`
`“general purpose register block” (claim 2) / “shared
`resources” (claims 3, 4) / “store” (claim 5)
`Locations (registers) in Register File 350 correspond to the claimed “general
`
`purpose register block,” “shared resources,” and “store.” 4 Register File 350
`
`contains source data, including “intermediate data generated during processing of
`
`the sample” that entails both vertex data and pixel data. Ex. 1003, 5:64-66; see also
`
`id. at 8:49-58 (further discussion of source data storage in Register File 350), 7:37-
`
`40 (explaining that Register File 350 is used “to retain intermediate data generated
`
`during execution of program instructions”).
`
`Lindholm uses the term sample broadly “to refer to graphics data such as
`
`surfaces, primitives, vertices, pixels, fragments, or the like”—thus including both
`
`pixel and vertex data. Id. at 3:62-64; see also id. at 4:42-44.
`
`4 Lindholm also discloses that, in addition to Register File 350, source data may
`
`also be stored in “Local Memory 140, locations in Host Memory 112, and the
`
`like.” Ex. 1003, 7:41-43. Any of these locations may also constitute the claimed
`
`“general purpose register block,” “shared resources,” and “store.”
`
`723303229
`
`17
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`During the pending ITC proceeding (337-TA-1044) involving the ’454
`
`patent, ATI’s affiliate AMD pointed to “registers” in the accused products as
`
`satisfying the claimed “shared resources.” Ex. 1011, pp. 22, 35.
`
`3.
`
`“processor unit” (claims 2-5, 8, 9, 11)
`
`Lindholm’s Execution Unit 470 constitutes
`
`the
`
`“processor unit.”
`
`Specifically, Execution Unit 470 executes pixel calculation operations (such as
`
`instructions that generate a pixel color) and vertex calculation operations (such as
`
`instructions that generate vertex position and appearance data). Id. at 3:57-64
`
`(explaining that Pipeline 150, which includes Execution Unit 470, “is programmed
`
`to operate on surface, primitive, vertex, fragment, pixel, sample or any other
`
`data”), 9:33-37, 9:47-49.
`
`Lindholm’s “samples” include both pixel and vertex operations. Id. at 3:59-
`
`64; see also id. at 5:23-29 (“programmable computation units (PCUs) within an
`
`Execution Pipeline 240 … perform operations such as tessellation, perspective
`
`correction, texture mapping, shading, blending, and the like”).
`
`A POSA would have recognized that the ability to operate on pixel data and
`
`perform operations like shading and blending, as described in Lindholm, would
`
`necessarily entail executing instructions that generate a pixel color, as recited by
`
`claim 8. Ex. 1005, ¶104. Execution Unit 470 is operatively coupled to Register File
`
`723303229
`
`18
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`350, as well as the other memory locations discussed in Lindholm. See Ex. 1003,
`
`FIGS. 1, 4.
`
`Execution Unit 470 processes a variety of instructions to operate on both
`
`pixel and vertex data, thus carrying out both pixel and vertex calculation operations
`
`using data contained in Register File 350 (and the other memory locations
`
`mentioned previously) and instructions in Instruction Cache 410. See id. at 3:57-
`
`64, FIG. 4. Execution Unit 470 performs these operations according to thread
`
`allocation and execution priorities. Id. at 6:61-7:11.
`
`Lindholm flexibly specifies a variety of priority schemes for performing
`
`pixel/vertex operations, including those that will “achieve maximum utilization of
`
`the computation resources in Execution Pipelines 240” (id. at 8:10-14), as well as
`
`those based on the amount of resources available (id. at 12:20-28, 12:61-66, 16:19-
`
`24).
`
`Lindholm also executes threads based on vertex or pixel workload. For
`
`example, Resource Scoreboard 460 keeps track of the availability of resources for
`
`processing the samples. E.g., id. at 9:2-4, 9:50-56. Lindholm also tracks the space
`
`available in Register File 350, which is used to store vertex data and pixel
`
`information. Id. at 9:57-62. Lindholm further bases thread execution decisions on
`
`“the amount of storage for intermediate data generated during processing of a
`
`sample.” See id. at 12:9-14, 12:34-36, 16:19-24.
`
`723303229
`
`19
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`Further, Lindholm discloses the functional language recited by claims 3-11,
`
`as discussed in the following sections.
`
`(i)
`
`“the processor unit operative to … perform pixel calculation
`operations until enough shared resources become available and
`then use the shared resources to perform vertex calculation
`operations” (claim 3)
`
`Execution Unit 470 executes threads in an order determined by the disclosed
`
`thread execution priorities. Id. at 10:17-11:14, FIGS. 5B. For example, as
`
`illustrated in Figure 5B, Lindholm determines in step 535 whether a pixel thread
`
`may be allocated based on “thread allocation priority” and then performs the pixel
`
`operations associated with that pixel thread. Id. at 10:40-45. Thus, Lindholm will
`
`perform pixel calculation operations. See id.
`
`After performing one or more pixel calculation operations, when a pixel
`
`thread may not be allocated (for example, when the thread allocation priority is
`
`based on resource availability of Register File 350, and not enough resources are
`
`available in Register File 350 for performing the selected pixel operation), the
`
`process will return to step 510, which will assign a new pointer to a program, such
`
`as a vertex program, which will then be executed in accordance with the resource-
`
`based priority scheme, because enough resources are now available for performing
`
`vertex calculation operations. See id. at 10:20-54, FIG. 5B.
`
`723303229
`
`20
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`
`Ex. 1003, FIG. 5B
`
`Accordingly, Lindholm describes performing pixel calculation operations
`
`until enough shared resources become available and then using the shared
`
`resources to perform vertex calculation operations. Ex. 1005, ¶¶117-40.
`
`(ii)
`
`“the processor unit operative to … perform vertex calculation
`operations until enough share resources become available and
`then use the shared resources to perform pixel calculation
`operations” (claim 4)
`
`Similarly, as also shown in Figure 5B, Lindholm determines in step 520
`
`whether a vertex thread may be allocated based on “thread allocation priority” and
`
`then performs the vertex operations associated with that vertex thread. Ex. 1003,
`
`10:25-30. Thus, Lindholm will perform vertex calculation operations. See id.
`
`723303229
`
`21
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`After performing one or more vertex calculation operations, when a vertex
`
`thread may not be allocated (for example, when the thread allocation priority is
`
`based on resource availability of Register File 350 as described previously, and not
`
`enough resources are available in Register File 350 for performing the selected
`
`vertex operation), the process will return to step 510, which will assign a new
`
`pointer to a program, such as a pixel program, which will then be executed in
`
`accordance with the resource-based priority scheme, because enough resources are
`
`now available for performing pixel calculation operatoins. See id. at 10:20-54, FIG.
`
`5B.
`
`Accordingly, Lindholm describes performing vertex calculation operations
`
`until enough shared resources become available and then using the shared
`
`resources to perform pixel calculation operations. Ex. 1005, ¶¶141-51.
`
`(iii) “the processor unit to execute vertex calculation and pixel
`calculation operations on selected data maintained in a store
`depending upon an amount of space available in the store”
`(claim 5)
`
`Lindholm also describes more generally the ability to execute vertex
`
`calculation and pixel calculation operations on selected data maintained in a store
`
`depending upon an amount of space available in the store. Ex. 1003, 10:20-54,
`
`12:9-14, 12:34-36, 15:7-13, 16:19-24, FIGS. 5B, 8B. Lindholm’s threads are
`
`“allocated storage resources such as locations in Register File 350 to retain
`
`723303229
`
`22
`
`

`

`Patent No. 8,760,454
`Petition for Inter Partes Review
`intermediate data generated during execution of program instructions associated
`
`with the thread.” Id. at 7:37-40.
`
`A POSA would understand that Lindholm’s “dynamically determined thread
`
`allocation priority,” which Lindholm teaches may be based on the size and amount
`
`of data to be processed (id. at 7:21-31), would necessarily depend on the amount of
`
`space available in Register File 350. Ex. 1005, ¶¶152-66.
`
`For example, if there were not enough resources in Register File 350 to
`
`“retain intermediate data generated during execution” of the instructions, Lindholm
`
`would seek to further
`
`its goal of achiev

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket