throbber
UNITED STATES PATENT AND TRADEMARK OFFICE
`_________________________
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`_________________________
`
`REALTEK SEMICONDUCTOR CORP.,
`Petitioner,
`v.
`ATI TECHNOLOGIES ULC
`Patent Owner.
`_________________________
`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`_________________________
`
`PATENT OWNER’S RESPONSE
`PURSUANT TO 37 C.F.R. § 42.107(A)
`
`
`
`
`
`
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`Table of Contents
`
`Page
`
`INTRODUCTION ........................................................................................... 1
`I.
`II. GRAPHICS PROCESSING PRIMER ............................................................ 3
`A. Graphics Processors Use Vertex and Pixel Data to Create Display Images . 3
`B. Conventional Graphics Processors Use Separate Dedicated Vertex and
`Pixel Shaders ............................................................................................... 5
`’454 PATENT OVERVIEW ........................................................................... 7
`III.
`A. The ’454 Patent’s Unified Shader Determines Which Data To Process By
`Evaluating Storage Capacity As Seen In Claims 1, 3-10 ............................ 7
`B. The Unified Shader Can Simultaneously Execute Vertex and Pixel
`Operations and Switch Quickly Between Operations at Various Degrees
`of Completion as In Claim 11...................................................................... 9
`C. The Invention of the ’454 Patent Triggers Execution by Transmitting Data
`Rather Than Instructions as in Claim 2 ..................................................... 11
`IV. Asserted Prior Art .......................................................................................... 11
`A. Lindholm ’685 ............................................................................................. 11
`B. Amanatides ................................................................................................... 14
`C. Selzer ............................................................................................................ 15
`PETITIONER HAS FAILED TO PROVE THE CLAIMS OF THE
`V.
`’454 PATENT ARE OBVIOUS UNDER ANY GROUND ................................... 17
`A. Ground 1: Lindholm References .................................................................. 17
`1. Neither Lindholm ’685 Nor Lindholm ’913 Are Prior Art ....................... 17
`a. The ’454 Patent Inventors Conceived of the Inventions At Least by
`August 24, 2001 ................................................................................. 18
`b. The ’454 Patent Inventors Exercised Diligence in Constructively
`Reducing to Practice .......................................................................... 24
`i. The ’454 Patent Was Constructively Reduced to Practice At Least by
`November 20, 2003 ....................................................................... 24
`The Inventors and Other ATI Employees Diligently Worked Every
`Business Day to Reduce the Claimed Invention to Practice ......... 24
`
`ii.
`
`
`
`i
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`c. The Federal Circuit Ruled That the Same R400 Evidence Established
`Diligence ............................................................................................ 27
`d. Petitioner’s Arguments Regarding a Prior ITC Case Not Involving ATI
`Are Incorrect ...................................................................................... 29
`2. No Executing Operations Depending Upon an Amount Of Space
`Available In The Store (Claim 5), Much Less Performing Vertex
`Operations Or Pixel Operations Until Enough Storage Is Available For
`The Other Operation Type (Claims 1, 3, 4) .......................................... 29
`3. No Processor Unit That Performs Vertex Manipulation Operations and
`Pixel Manipulation Operations At Various Degrees Of Completion
`Based On Switching Between Instructions In The Instruction Store
`(Claim 11) .............................................................................................. 32
`4. No Execution of Instructions “In Response to” Receiving Selected Data
`(Claim 2) ................................................................................................ 33
`5. No “Memory” Separate From the “Store” (Claim 6) ................................ 34
`6. No “Control Signal” (Claims 7, 10) or “Arbiter” (Claim 10) ................... 35
`B. Ground 2: Amanatides + Kohn .................................................................... 36
`1. No Executing Operations Depending Upon An Amount Of Space
`Available In The Store (Claim 5), Much Less Performing Vertex
`Operations Or Pixel Operations Until Enough Storage Is Available For
`The Other Operation Type (Claims 1, 3, 4) .......................................... 36
`2. No Processor Unit That Performs Vertex Manipulation Operations And
`Pixel Manipulation Operations At Various Degrees Of Completion
`Based On Switching Between Instructions In The Instruction Store
`(Claim 11) .............................................................................................. 43
`3. No “Selected Data” (Claims 2, 5) .............................................................. 44
`4. Alleged “Selection Circuit” Is Not Within Alleged “Unified Shader” As
`Required (Claims 7, 10) ......................................................................... 46
`5. No “Control Signal” (Claims 7, 10) .......................................................... 49
`6. No “Selection Circuit” or “Arbiter,” “(Claim 10) ..................................... 50
`C. Ground 3: Selzer + Fiske ............................................................................. 52
`1. No Executing Operations Depending Upon An Amount Of Space
`Available In The Store (Claim 5), Much Less Performing Vertex
`
`
`
`ii
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`Operations Or Pixel Operations Until Enough Storage Is Available For
`The Other Operation Type (Claims 1, 3, 4) .......................................... 52
`2. No Processor Unit That Performs Vertex Manipulation Operations And
`Pixel Manipulation Operations At Various Degrees Of Completion
`Based On Switching Between Instructions In The Instruction Store
`(Claim 11) .............................................................................................. 57
`3. No Execution of Instructions “In Response to” Receiving Selected Data
`(Claim 2) ................................................................................................ 59
`4. Alleged “Sequencer,” “Instruction Store,” “Circuitry,” “Selection
`Circuit,” and “Arbiter” Are Not Within Alleged “Unified Shader” As
`Required (Claims 2, 5-7, 10, 11) ........................................................... 60
`5. Alleged “Sequencer” And “Instruction Store” Do Not Maintain
`Instructions (Claims 2, 5, and 11) ......................................................... 63
`6. No “Arbiter” (Claim 10) or “Control Signal” (Claims 7, 10) ................... 65
`7. No Motivation to Combine Selzer and Fiske ............................................ 67
`D. Secondary Considerations ............................................................................ 68
`1. Initial Skepticism of ATI’s Unified Shader............................................... 69
`2. Unexpected Results in Developing the Unified Shader ............................ 70
`3. The Unified Shader’s Satisfaction of a Long-Felt Need and Failed
`Attempts by Others ................................................................................ 70
`4. Industry Praise of the Unified Shader in the Xenos GPU ......................... 71
`5. Commercial Success of the Xbox360 Containing ATI’s Unified Shader . 71
`6. Adoption by Others ................................................................................... 72
`VI. CONCLUSION .............................................................................................. 72
`
`
`
`
`
`
`
`
`iii
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`TABLE OF AUTHORITIES
`
` Page(s)
`
`Cases
`ATI Techs. ULC v. Iancu,
`920 F.3d 1362 (Fed. Cir. 2019) ................................................................ 17,18,28
`CAE Screenplates, Inc. v. Heinrich Fiedler Gmbh & Co. Kg,
`224 F.3d 1308 (Fed. Cir. 2000) .......................................................................... 35
`Catalina Mktg. Int’l v. Coolsavings.com, Inc.,
`289 F.3d 801 (Fed. Cir. 2002) ............................................................................ 48
`In re Magnum Oil Tools Int’l, Ltd.,
`829 F.3d 1364 (Fed. Cir. 2016) .......................................................................... 60
`Perfect Surgical Techniques, Inc. v. Olympus Am., Inc.,
`841 F.3d 1004 (Fed. Cir. 2016) .......................................................................... 24
`Scott v. Koyama,
`281 F.3d 1243 (Fed. Cir. 2002) .......................................................................... 25
`Singh v. Brake,
`317 F.3d 1334 (Fed. Cir. 2003) .......................................................................... 18
`Townsend v. Smith,
`36 F.2d 292 (C.C.P.A. 1929) .............................................................................. 18
`
`
`
`iv
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`TABLE OF EXHIBITS
`
`Reference Name
`Declaration of William Mangione-Smith and CV
`IPR2015-00325, Declaration of Dr Wolfe, Sept. 9, 2015
`IPR2015-00325, Declaration of Calvin Watson, Sept. 9, 2015
`IPR2015-00325, Declaration of Lefebvre, Sept. 9, 2015
`IPR2015-00325,-00326, and-00330, Deposition Transcript of
`Calvin Watson, November 4, 2015
`IPR2015-00325, -00326, and -00330, Deposition Transcript of
`Dr. Wolfe, Nov. 10, 2015
`IPR2015-00325,-00326, and -00330, Deposition Transcript of
`Laurent Lefebvre, Nov.13, 2015
`Gruber et al, R400 Shader Processor 2001, Oct. 9, 2015
`R400 Document Library Folder History, November 1, 2000
`through April 8, 2005
`R400 Sequencer Specification (Version 0 4), August 14, 2001
`R400 Sequencer Specification (Version 2 0), September 24,
`2001
`R400 Shader Processor (Version 0 1), Jan. 23, 2001
`R400 Top Level Specification (Version 0 2), March 11, 2001
`R400 Program Logs
`Microsoft Site Visit (Feb. 2003)
`Log of Exhibits and File Location
`R400 Program Review Documentation (Feb. 2003)
`R400 MM Software Status (Feb. 2003)
`R400 I/O Presentation (Feb. 2003)
`R400 I/O Presentation (Feb. 2003)
`R400 August Program Review
`Executive Review - R400 (Oct. 2002)
`R400 Area Estimate
`R400 Executive Review (Sept. 2002)
`GFIXIP 9x SX Micro-Architecture Specification
`WD/IA VGT Micro-Architecture Specification
`GX9 SPI Specification
`
`Ex. No
`EX2001
`EX2002
`EX2003
`EX2004
`EX2005
`
`EX2006
`
`EX2007
`
`EX2008
`EX2009
`
`EX2010
`EX2011
`
`EX2012
`EX2013
`EX2014
`EX2015
`EX2016
`EX2017
`EX2018
`EX2019
`EX2020
`EX2021
`EX2022
`EX2023
`EX2024
`EX2025
`EX2026
`EX2027
`
`
`
`v
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`Reference Name
`R400 Top Level Specification (Version 0.2)
`R400 Folder History Log
`R400 Folder History Log
`R400 Folder History Log
`R400 Review PowerPoint
`R400 Review PowerPoint
`R400 Development and Documentation
`Xenos GFX Change History July 2003 - Dec. 2003 Log
`R400 GFX Change History March 2003 - Dec. 2003
`R400 Primitive Assembly
`R400 Primitive Assembly
`Development Documentation
`Development Documentation
`Development Documentation
`R400 Performance Verification
`Development Documentation
`R400 PAD Program Review (Dec. 2002)
`R400 EMU Test Regress History Log
`R400 EMU Test Regress Statistics Log
`R400 Program Review (Dec. 2002)
`R400 Program Review (Dec. 2002)
`Device Development Progress
`Device Development Progress
`Device Development Progress
`Device Development Progress
`R400 Review Status PowerPoint
`TV Specification
`R400 Program Review PowerPoint and Test Results
`Development Documentation
`R400 PowerPoint
`R400 Program Review PowerPoint
`R400 Program Review
`
`Ex. No
`EX2028
`EX2029
`EX2030
`EX2031
`EX2032
`EX2033
`EX2034
`EX2035
`EX2036
`EX2037
`EX2038
`EX2039
`EX2040
`EX2041
`EX2042
`EX2043
`EX2044
`EX2045
`EX2046
`EX2047
`EX2048
`EX2049
`EX2050
`EX2051
`EX2052
`EX2053
`EX2054
`EX2055
`EX2056
`EX2057
`EX2058
`EX2059
`
`
`
`vi
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`Reference Name
`Block Development Progress
`R400 Program Review (Dec. 11, 2002)
`R400 Program Review (Dec. 12, 2002)
`Development Documentation
`Development Documentation
`Development Documentation
`R400 Technical Documentation
`R400 Technical Documentation
`R400 GFX Change History March 2003 to December 2003
`Log
`Ikos 2002 Spreadsheet
`R400 - Program Review (Oct. 2002)
`Sqsp Regress Report
`Xenos Sq Change Log
`R400 Regress Testing
`Virtual Logic 3.1 User's Guide
`Virtual Logic 3.5.5 User's Guide
`IKOS Virtual Logic 2.1
`IKON Screenshots
`IKON Screenshots
`GFX9 User’s Guide
`US Patent No. 6,897,871
`Samsung Exynos 5430 Octa SoC
`Samsung Exynos 3 Quad 3470 Processor Database
`HW Emulator First Triangle
`HW Simulator First Triangle
`R400 Regress Testing Logs
`R400 Regress Testing Logs
`R400 IKOS Status
`R400 Program Review
`R400 Program Review Documentation
`PA Check-in History Log
`RB Check-in History Log
`
`Ex. No
`EX2060
`EX2061
`EX2062
`EX2063
`EX2064
`EX2065
`EX2066
`EX2067
`EX2068
`
`EX2069
`EX2070
`EX2071
`EX2072
`EX2073
`EX2074
`EX2075
`EX2076
`EX2077
`EX2078
`EX2079
`EX2080
`EX2081
`EX2082
`EX2083
`EX2084
`EX2085
`EX2086
`EX2087
`EX2088
`EX2089
`EX2090
`EX2091
`
`
`
`vii
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`Reference Name
`SC Check-in History Log
`SPI Check-in History Log
`SP Check-in History Log
`SQ Check-in History Log
`SX Check-in History Log
`VGT Check-in History Log
`R400 File Logs 10/1/2002 – 4/17/2003
`Netlist Area Sheets
`IKOS Schematic
`Stephen Morein Depo Transcript (AMD v. LG) May 25, 2017
`Laurent Lefebvre Depo Transcript (337-TA-1044) June 28,
`2017
`IPR2015-00325, Declaration of Laurent Lefebvre
`Development Documentation
`Development Documentation
`Development Documentation
`Development Documentation
`Development Documentation
`Development Documentation
`IPR2015-00325, EX2018 - EX2056
`IPR2015-00325, EX2057 - EX2071
`Block Change Logs
`Andrew Gruber Depo Transcript (AMD v. LG) July 27, 2017
`IPR2015-00326, EX2001 - EX2002
`IPR2015-00326, EX2003
`IPR2015-00326, EX2004
`IPR2015-00326, EX2005
`IPR2015-00326, EX2006
`IPR2015-00326, EX2007 - EX2072
`IPR2015-00326, EX2073 - EX2118
`Supplemental Declaration of William Mangione-Smith
`Supplemental Declaration of Calvin Watson
`Deposition Transcript of Hanspeter Pfister (02/16/2024)
`
`Ex. No
`EX2092
`EX2093
`EX2094
`EX2095
`EX2096
`EX2097
`EX2098
`EX2099
`EX2100
`EX2101
`EX2102
`
`EX2103
`EX2104
`EX2105
`EX2106
`EX2107
`EX2108
`EX2109
`EX2110
`EX2111
`EX2112
`EX2113
`EX2114
`EX2115
`EX2116
`EX2117
`EX2118
`EX2119
`EX2120
`EX2121
`EX2122
`EX2123
`
`
`
`viii
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`Reference Name
`Beyond3D-ATI Xenos: Xbox 360 Graphics Demystified –
`July 26, 2017
`Dictionary of Computing 5th Ed (excerpt)
`Microsoft Computer Dictionary 5th Edition (excerpt)
`How GPUs Work, David Luebke, Greg Humphreys
`2006 Microsoft Corporation Annual Report
`ATI and NVIDIA Proclaim Different Graphics Processors
`Architecture Goals, Anton Shilov (December 23, 2004)
`NVIDIA Chief Architect: Unified Pixel and Vertex Pipelines –
`The Way to Go. NVIDIA Says It Would Make a Chip with
`Unified Pipes “When it Makes Sense” Anton Shilov (July 11,
`2005)
`FORTUNE: Review of the Xobx 360 – Nov. 17, 2005
`TECHSPOT – History of the Modern Graphics Processor, Part
`3 – The Fall of 3Dfx and The Rise of Two Giants, Graham
`Singer (April 10, 2013)
`Working of Xbox 360 – How Xbox 360 Works (February 11,
`2010)
`Xbox 360: the Ars Technica Review, Ben Kuchera
`(November 30, 2005)
`Microsoft Xbox dominates a sluggish 2011 gaming market,
`Nathan Pensky (January 13, 2012)
`Microsoft’s Xbox 360, Sony’s PS3 – A Hardware Discussion,
`Anand Lal Shimpi & Derek Wilson (June 24, 2005)
`Qualcomm History and its GPU (R)evolution – Ryan Shrout
`(June 22, 2015)
`Xbox 360 vs. PlayStation 3: The Hardware Throwdown –
`IGN, Jesse Schedeen (August 26, 2010)
`Xbox 360 and Playstation 3’s Graphics Card (GPU) Compared
`– Red Gaming Tech, CrimsonRayne (March 11, 2013)
`Xbox 360 GPU – NeutralX2 (April 26, 2006)
`Wikipedia - Adreno
`Game Consoles: Global Market share 2006-2010 – Statista
`NVIDIA – Frequently Asked Questions
`
`Ex. No
`EX2124
`
`EX2125
`EX2126
`EX2127
`EX2128
`EX2129
`
`EX2130
`
`EX2131
`EX2132
`
`EX2133
`
`EX2134
`
`EX2135
`
`EX2136
`
`EX2137
`
`EX2138
`
`EX2139
`
`EX2140
`EX2141
`EX2142
`EX2143
`
`
`
`ix
`
`

`

`Ex. No
`EX2144
`
`EX2145
`EX2146
`
`EX2147
`
`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`Reference Name
`The Xbox 360 Uncloaked – The Real Story Behind
`Microsoft’s Next-Generation Video Game Console, Dean
`Takahashi
`Andrews - Xbox 360 System Architecture
`Interview with Ken Kutaragi, President of SCEI (3) – “Why I
`worked with NVIDIA on the PS3”
`Scott Wasson, “Details of ATI’s Xbox 360 GPU unveiled,”
`The Tech Report (May 19, 2005)
`
`x
`
`
`
`
`
`

`

`I.
`
`INTRODUCTION
`Petitioner Realtek has failed to prove that any of the challenged claims 1-11
`
`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`of Patent Owner’s ATI’s U.S. Patent No. 8,760,454 (“the ’454 patent”) are
`
`unpatentable.
`
`First, the Lindholm references are not prior art, which the Institution Decision
`
`(“ID”) agreed with, and so Ground 1 fails. The conception of the ’454 patent’s
`
`inventions antedates the Lindholm references’ critical date, and ATI worked
`
`diligently to reduce the inventions to practice, as found by the Federal Circuit as to
`
`a parent patent, regarding the same real-world product.
`
`Second, claims 1 and 3-10 require evaluation of storage space in order to
`
`determine what type of operations to perform, with various levels of specificity
`
`required in the different claims. All three grounds fail to disclose even the broadest
`
`formulation, which the ID agreed with as to Ground 3. All three grounds rely on the
`
`concept of priority and/or load balancing, in which the system first processes data
`
`that has higher priority than other data; it may be that the system has more of a
`
`certain type of data to process, causing that to be higher priority, or it may be a pre-
`
`set preference. But there is no disclosure in any reference that the amount of storage
`
`space for incoming data is evaluated in determining what to choose to process.
`
`Third, claim 11 requires the ability to perform operations at various stages of
`
`completion by switching between instructions stored in the instruction store, i.e.,
`
`
`
`1
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`switching between incomplete operations. None of the grounds disclose that
`
`functionality.
`
`Fourth, claim 2 requires executing instructions in response to receiving
`
`selected data from the data store. All three grounds fail to demonstrate this as well,
`
`because the execution they describe is not done in response to receiving data, but
`
`rather in response to receiving the instructions, nor is the data “selected” from the
`
`data store.
`
`Fifth, the claims require that certain elements are within “unified shader” of
`
`the claims, such as the “sequencer” (claims 2, 5), instruction store (claim 11),
`
`selection circuit (claim 7), arbiter (claim 10), and others, but Ground 2 and 3 point
`
`to items outside the alleged unified shader, and thus the grounds fail as to those
`
`claims.
`
`Sixth, claims 7 and 10 require that an arbiter send a control signal to a
`
`selection circuit, prompting it to send information to a data store. Petitioner
`
`generally fails to identify anything for these elements across the grounds, and what
`
`it does point to contradicts a POSITA’s understanding of the terms and its own
`
`allegations, for example, when it points to “state data” as a “control signal.”
`
`Lastly, all grounds fail because secondary considerations support non-
`
`obviousness of the ’454 Patent.
`
`
`
`2
`
`

`

`II. GRAPHICS PROCESSING PRIMER
`The ’454 Patent issued June 24, 2014, and is titled “Graphics Processing
`
`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`Architecture Employing A Unified Shader.” EX1001. The challenged claims
`
`concern graphic processors that use a “unified shader” to perform both “vertex”
`
`and “pixel” operations. E.g., EX1001 (’454 Patent), 1:32-34, 2:58-61; EX2121
`
`(Mangione-Smith Decl.), ¶15.
`
`A. Graphics Processors Use Vertex and Pixel Data to Create Display
`Images
`Graphics processors are designed to convert a three-dimensional object into
`
`an image for display on a two-dimensional screen. EX2121, ¶16. As part of this
`
`process, a three-dimensional object is rendered as multiple shapes, called
`
`primitives, such as triangles (see below example). Id.
`
`
`Each primitive has three corner points, or three “vertices.” Id., ¶17. To
`
`render a three-dimensional object on a flat screen, each vertex is converted from
`
`three-dimensional coordinates to two-dimensional coordinates as illustrated below.
`
`Id.
`
`
`
`3
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`
`Subsequent processing includes rendering each primitive as two-dimensional
`
`collection of dots called “pixels.” Id., ¶18. The processor uses the two-dimensional
`
`coordinates to determine which pixels fill each primitive (e.g., the XY coordinates
`
`depicted in blue below). Id.
`
`Further processing includes coloring and applying texture for each pixel
`
`
`
`filling the primitive. Id., ¶19.
`
`
`
`4
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`
`B. Conventional Graphics Processors Use Separate Dedicated Vertex
`and Pixel Shaders
`Conventional graphics processors featured a number of circuits, each
`
`configured to perform a single type of transformation. These circuits are known as
`
`
`
`“shaders.” Id., ¶23.
`
`Conventionally, each shader was dedicated to executing a particular type of
`
`operation to transform a particular type of data. Id., ¶24. For example, a “vertex
`
`shader” would execute only vertex operations to transform vertex data. EX1001,
`
`1:63-2:7. But to execute pixel operations to transform pixel data, another, separate
`
`“pixel” shader was needed. Id., 2:8-18. This requirement resulted in drawbacks in
`
`both size and performance. EX2121, ¶25.
`
`First, the need for multiple specialized shaders increased the size of graphics
`
`processors and overall integrated circuit. EX1001, 2:20-29. Second, sequencing
`
`the pixel shader after the vertex shader meant that one shader was dependent on the
`
`
`
`5
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`output of the preceding shader before it could continue processing, leading to idle
`
`downtime and less optimal performance. Id., 2:20-29; EX2121, ¶26.
`
`Such conventional “pipeline” is illustrated below, depicting vertex shader 46
`
`in series with pixel shader 54. Id., ¶27.
`
`EX1001, Fig. 3.
`
`
`
`6
`
`
`
`

`

`III.
`
`’454 PATENT OVERVIEW
`Petitioner challenges claims 1-11. Claims 1-5 and 11 are independent
`
`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`claims. Claims 6-10 depend on claim 5.
`
`A. The ’454 Patent’s Unified Shader Determines Which Data To
`Process By Evaluating Storage Capacity As Seen In Claims 1, 3-
`10
`In contrast to prior approaches (including that of the asserted prior art),
`
`which may use pre-determined priorities or balance workloads based on the
`
`amount of work in the queue for execution, the ’454 Patent describes determining
`
`whether to process a vertex or pixel operation based on available storage space.
`
`EX2121, ¶31.
`
`For example, the patent describes an “arbiter circuit for selecting one of a
`
`plurality of inputs for processing [by the unified shader] . . . wherein the shader
`
`performs one of the vertex operations or pixel operations based on the [arbiter’s]
`
`selected one of the plurality of inputs.” EX1001, 2:58-3:17; EX2121, ¶32. The
`
`arbiter’s selection criteria, or “arbitration scheme,” includes at least the capacity to
`
`store particular types of data. Id. To this end, the data storage (the unified shader’s
`
`register block) is monitored for available space, which informs what data is
`
`selected to be transmitted to the processor to be processed: “if the general purpose
`
`register block 92 does not have enough available space therein to store the
`
`
`
`7
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`incoming vertex data, such information will not be transmitted as the arbitration
`
`scheme of the arbiter 64 is not satisfied.” Id., 5:32-44.
`
`In use, for example, when there is not enough room in the data storage for
`
`vertex data, the processor “continues pixel calculation operations that are to be or
`
`are currently being performed [by] the processor based on instructions maintained
`
`in an instruction store until enough registers within the general purpose register
`
`block become available” to store vertex data. EX1001, Abstract (emphasis added);
`
`EX2121, ¶33.
`
`This is in contrast with the prior art approach of choosing what to process
`
`based on how much of a given type of data is in the queue to be processed, or
`
`based on some pre-set priority or other prioritization scheme.
`
`The claims require this functionality in a variety of different ways, with
`
`different levels of specificity. Id., ¶34.
`
`Claim 1 is the most specific, requiring performing vertex operations until
`
`there is no more room in the general purpose register block for incoming vertex
`
`data, in which case continuing to perform pixel operations until enough space
`
`appears to once again store vertex data. Id. This requires two evaluations: first that
`
`there is no longer room for additional vertex data in the general purpose register
`
`block (at a time when the system is performing vertex operations), and second, that
`
`
`
`8
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`at a later point in time (when the system is performing pixel operations), there is
`
`once again room for additional vertex data in the general purpose register block. Id.
`
`Claims 3 and 4 are broader. Id., ¶35. Claim 3 requires a processor unit to be
`
`“operative to perform pixel calculation operations until enough shared resources
`
`become available and then use the shared resources to perform vertex calculation
`
`operations.” Id. Claim 4 requires the opposite; the processor unit must be
`
`“operative to perform vertex calculation operations until enough shared resources
`
`become available and then use the shared resources to perform pixel calculation
`
`operations.” Id.
`
`Claim 5 is the broadest, requiring that the processor unit “execute vertex
`
`calculation and pixel calculation operations on selected data maintained in a store
`
`depending upon an amount of space available in the store.” Id., ¶36.
`
`As explained below, the prior art references fail to teach even the broadest of
`
`these formulations.
`
`B.
`
`The Unified Shader Can Simultaneously Execute Vertex and Pixel
`Operations and Switch Quickly Between Operations at Various
`Degrees of Completion as In Claim 11
`Further, the patent describes and claims how to allocate the unified shader’s
`
`processing resources among vertex and pixel data in a manner that prevents
`
`backlogs of data waiting to be processed and idle downtime for the shader. Id.
`
`Under the claimed approach, the disclosed unified shader switches back and forth
`
`
`
`9
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`between unfinished operations to prevent downtime and backlogs of data sitting
`
`waiting to be processed. EX1001, 5:23-36; EX2121, ¶37.
`
`To illustrate, when executing a vertex operation, the unified shader may
`
`encounter a vertex instruction that it cannot yet perform because the necessary data
`
`or memory is not yet available. EX1001, 5:36-44; EX2121, ¶38. Rather than
`
`having the unified shader sitting idle, waiting for the necessary data or memory so
`
`that it can proceed with the rest of the vertex operation, the unified shader switches
`
`to pending pixel operations and executes pixel instructions until the idle vertex
`
`operation is ready to proceed. EX1001, 5:32-52.
`
`Thus, the ’454 Patent discloses a unified shader that “has the ability to
`
`simultaneously perform vertex manipulation operations [vertex operations] and
`
`pixel manipulation operations [pixel operations] at various degrees of completion
`
`by being able to freely switch between such program or instructions very quickly.”
`
`Id., 5:32-36 (emphasis added); see id., claim 11; EX2121, ¶39. “[T]hrough the
`
`sharing of resources within the unified shader 62, processing of image data is
`
`enhanced as there is no down time associated with the processor 96.” EX1001,
`
`5:49-52. The ’454 Patent thus discloses and claims a unified shader that can
`
`switch back and forth between executing unfinished vertex and pixel operations.
`
`Id.
`
`
`
`10
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`C. The Invention of the ’454 Patent Triggers Execution by
`Transmitting Data Rather Than Instructions as in Claim 2
`The ’454 patent specifically provides the receipt of selected data is what
`
`causes the processor to perform the corresponding operations: “the shader
`
`performs one of the vertex operations or pixel operations based on the selected one
`
`of the plurality of inputs.” Id., 2:58-3:17; see id., claim 2; EX2121, ¶¶41-42. This
`
`approach is in contrast with the approaches in the asserted references, in which the
`
`shader performs tasks based on the received instructions, not the received data as
`
`claimed. Id. This data-driven approach where the receipt of particular selected
`
`data dictates the execution of instructions enables the invention’s ability to quickly
`
`switch between partially-completed tasks, as the data drives the decision-making
`
`about what to process, rather than the instructions doing so. Id.
`
`IV. ASSERTED PRIOR ART
`A. Lindholm ’685
`Lindholm ’685 regards graphics architecture with a separate pixel input
`
`buffer and vertex input buffer, and several execution pipelines:
`
`
`
`11
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`
`EX1006 (Lindholm ’685), Fig. 2; EX2121, ¶303. An execution pipeline is
`
`
`
`depicted below:
`
`
`
`12
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`
`
`EX1006, Fig. 4. In response to “program instructions,” “programmable
`
`computation units (PCUs) within an Execution Pipeline 240 [] perform operations
`
`such as tessellation, perspective correction, texture mapping, shading, blending,
`
`and the like.” Id., 5:23-29. “Processed samples are output from each Execution
`
`
`
`13
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`Pipeline 240 to a Pixel Output Buffer 270,” and then “[t]he processed samples are
`
`output from Pixel Output Buffer 270 to Raster Analyzer 160.” Id., 5:30-35. After
`
`rasterization, the pixel data is sent to another PCU for pixel processing. Id., Figs,
`
`2, 4, 10:55-11:14.
`
`B. Amanatides
`Amanatides regards graphics architecture in which a “host distributes
`
`primitives in a round-robin manner” to processors, labeled “G/R”:
`
`
`
`EX1007 (Amanatides), Fig. 3, 157; EX2121, ¶304. “Each processor performs the
`
`front-end tasks … for the primitives. It then broadcasts the results to the other
`
`processors to perform the back end operations of rasterization.” EX1007, 157.
`
`The reference also discusses “load balancing” based on “[f]or example, if there is a
`
`lot of texture mapping” tasks to be done and based on prioritization of certain types
`
`of actions. Id., 157, 159.
`
`
`
`14
`
`

`

`C.
`Selzer
`Selzer describes graphics architecture with a traditional pipeline involving a
`
`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`first stage of geometry processing, followed by a second stage of rendering
`
`processing:
`
`
`
`
`
`15
`
`

`

`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`
`
`
`EX1009 (Selzer), Figs. 4.2, 4.4; EX2121, ¶305. “The geometry module performs
`
`the transformation, clipping, polygon and patch subdivision, normal interpolation
`
`and renormalisation and lighting operations.” EX1009, 41. Alternatively, a
`
`rendering module could perform that task. Id. After that step, the geometry
`
`module or rendering module that performed the geometry processing “deliver[s]
`
`processed data to the FIFOs of the appropriate [separate] rendering modules” for
`
`rendering. Id.
`
`
`
`16
`
`

`

`V.
`
`Case No. IPR2023-00922
`U.S. Patent No. 8,760,454
`PETITIONER HAS FAILED TO PROVE THE CLAIMS OF THE ’454
`PATENT ARE OBVIOUS UNDER ANY GROUND
`A. Ground 1: Lindholm References
`1.
`Neither Lindholm ’685 Nor Lindholm ’913 Are Prior

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