throbber
Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 1 of 66 PageID# 14257
`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 1 of 66 Page|D# 14257
`
`
`EXHIBIT
`B
`
`EXHIBIT
`
`
`
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 2 of 66 PageID# 14258
`Case 3: l4-CV-OO757-REP-DJ N DOCUment 87ml" "mun" mmn‘rnlmflflIlllfllm "llflmmtnlmlll4258
`
`USOO7095414B2
`
`(12) Unlted States Patent
`(10) Patent No.:
`US 7,095,414 B2
`
`Lindholm et al.
`(45) Date of Patent:
`*Aug. 22, 2006
`
`(54) BLENDING SYSTEM AND METHOD IN AN
`INTEGRATED COMPUTER GRAPHICS
`PIPELINE
`
`(75)
`
`Inventors: John Erik Lindholm, Cupertino, CA
`(US); Simon Moy, Mountain View, CA
`(US); David B. Kirk, San Francisco,
`CA (US); Paolo E. Sabella, Pleasanton,
`CA (US)
`
`.
`( * ) Notlce:
`
`.
`.
`(73) ASSlgnee‘ NVIDIA corporatloni sama Clara, CA
`(Us)
`.
`.
`.
`.
`Subject to any d1scla1mer, the term of th15
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 369 days.
`This patent is subject to a terminal dis-
`claimer.
`
`(21) Appl. No.: 10/186,904
`
`(22)
`
`Filed:
`
`Jun. 28, 2002
`
`(56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`5,025,407 A
`6/1991 Gulley et al.
`............... 364/754
`5,222,202 A
`6/1993 Koyamada .................. 395/123
`5,459,820 A
`10/1995 Schroeder et a1.
`.......... 395/120
`5,694,143 A
`12/1997 Fielder et a1.
`.............. 345/112
`3/1998 Tarolll et a1. ........... 395/523
`5,724,561 A
`
`............. 345/441
`5,801,711 A
`9/1998 Koss et al.
`.............. 345/519
`5,838,337 A
`11/1998 Kimura et al.
`............ 345/418
`5,886,701 A
`3/1999 Chauvin et a1.
`5,956,042 A
`9/1999 Tucker et al. ........... 345/426
`
`11/1999 Vainsencher ............. 345/519
`5,977,997 A
`................ 712/39
`6,000,027 A
`12/1999 Pawate etal.
`
`d)
`(C t'
`on “me
`FOREIGN PATENT DOCUMENTS
`
`EP
`
`0690430(A2)
`
`1/1996
`
`(Continued)
`OTHER PUBLICATIONS
`
`(65)
`
`Prior Publication Data
`US 2003/0112246 A1
`Jun. 19, 2003
`
`Copy of Office Action Summary from US. Appl. No. 09/456,102
`which was mailed on Jan 29, 200i
`
`Related US. Application Data
`(60) Continuation of application No. 09/775,l29, filed on
`Jan. 31, 2001, now Pat. No. 6,734,874, which is a
`division of application No. 09/456,102, filed on Dec.
`6, 1999, now Pat. No. 6,353,439.
`
`(Contmued)
`Prirnary ExamineriKee M’ Tung
`(175215?“ExamineriHagNgUF/‘Enlk K b PC
`(
`)
`llorney,
`gent, or ”mi 1
`a- ota ’
`(57)
`ABSTRACT
`
`(51)
`
`Int. Cl.
`(2006.01)
`G06F 13/14
`(2006.01)
`G06T 1/20
`(2006.01)
`G06T 15/20
`(200601)
`G09G 5/02
`(52) US. Cl.
`...................... 345/519, 345/506; 345/427,
`345/592
`(58) Field of Classification Search ................ 345/519,
`345/531, 522, 501, 503, 426, 427, 419, 620,
`345/592, 561, 506
`See application file for complete search history.
`
`A system and method are provided for a hardware imple-
`mentation of a blending technique during graphics process-
`ing in a graphics pipeline. During processing in the pipeline,
`a plurality of matrices and a plurality of weight values are
`received. Also received is vertex data to be processed. A sum
`of a plurality of products may then be calculated by the
`multiplication oiino Vonox data: one oiino nianiooss and at
`least ono of the weights
`
`30 Claims, 44 Drawing Sheets
`
`
`_—_.....1.3;];........5.;__1
`VAB
`
`
`
`l
`
`Transform
`
`1
`
`
`
`
`Lighting
`57
`
`Rasterizer
`
`
`ii
`1W“_22714Dm2017fi7222222_J
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 3 of 66 PageID# 14259
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 3 of 66 Page|D# 14259
`
`US 7,095,414 B2
`
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`OTHER PUBLICATIONS
`
`6,014,144 A
`6 016 151 A *
`6,057,855 A
`’
`’
`6,097,395 A
`6,137,497 A
`6’144’365 A
`6,163,319 A
`6,166,748 A
`6,175,367 B1
`6,198,488 Bl
`6,417,858 B1 *
`
`.............. 345/426
`1/2000 Nelson et a1.
`1/2000 L'
`.........
`. 345/503
`5/2000 BlaIikans
`345/435
`
`"""
`'
`.
`8/2000 Harrls et al.
`................ 345/426
`10/2000 Strunk et a1.
`............... 345/434
`11/2000 Young et a1. """
`“ 345/153
`12/2000 Peercy et a1.
`.....
`.. 345/426
`12/2000 Van HOOk et 31'
`345/522
`1/2001 Parikh et a1.
`............... 345/426
`3/2001 Lindholm et 3L ---------- 345/426
`7/2002 Bosch et al.
`................ 345/522
`
`
`
`EP
`W0
`WO
`
`FOREIGN PATENT DOCUMENTS
`0690430(A3)
`7/1996
`98/28695
`7/1998
`99/52040
`10/1999
`
`CEPYhOf OfficélAcftion Summary from U~S~APP1~ N°~ 09/775,086
`W 1° was mm 6 0“ Ang' 2’ 2001'
`Copy of Office Action Summary from US. Appl. No. 09/775,086
`which was mailed on Apr. 11 2001.
`.
`’
`COPY 0f Officefi Adm summary from U'S' Appl' NO' 09/775’129
`Wh1ch was ma11ed on Oct. 6, 2003.
`Copy of International Search Report from PCT/US00/33043 mailed
`Apr. 5 2001.
`Copy ofthe Written Opinion from PCT/US00/33043 mailed Jan. 11,
`2002.
`Copy of the International Examination Report from PCT/US00/
`33043 mailed Apr. 8, 2002.
`Copy of the European Search Report from European Application
`00982457.4-1522 mailed Mar. 26, 2004.
`Marc Olano and Trey Greer; “Triangle Scan Conversion Using 2D
`Homogeneous Coordinates”;
`1997, SIGGRAPH/Eurographics
`WOTkShOP
`* cited by examiner
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 4 of 66 PageID# 14260
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 4 of 66 Page|D# 14260
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 1 0f 44
`
`US 7,095,414 B2
`
`DATA
`
`SOURCE
`
`1 2
`
`DISPLAY
`
`VERTEX
`M EMORY
`
`TRANS-
`FORMATION
`
`RENDERING
`
`FIG. 1
`
`(PRIOR ART)
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 5 of 66 PageID# 14261
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 5 of 66 Page|D# 14261
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 2 0f 44
`
`US 7,095,414 B2
`
`22
`
`
`
`Before
`
`22
`
`
`
`After
`
`FIG. 1A
`
`(PRIOR ART)
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 6 of 66 PageID# 14262
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 6 of 66 Page|D# 14262
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 3 of 44
`
`US 7,095,414 B2
`
`3
`
`:
`
`54%
`
`52
`
`
` Transform
`
` SetuD
`
`Rasterizer
` ____.____l2:c.1_t_§_Q_ut-__-_________
`FIG. 1B
`
`Lighting
`
`; i
`
`E
`
`g
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 7 of 66 PageID# 14263
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 7 of 66 Page|D# 14263
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 4 of 44
`
`US 7,095,414 B2
`
`200
`
`/
`
`COMMAND
`
`50
`
`DATA /
`
`204
`
`MODE BITS
`
`
`
`
`
`202
`
`[MIMI-
`
`--IIII
`
`Ian-mm
`
`mmmm
`
`data[0:63]
`data[64:127]
`
`
`205
`
`
`
`FIG. 2
`
`COMMAND
`
`TRANSFORM LIGHTING
`STALL
`STALL
`
`DESCRIPTION
`
`FE2XF_CMD_NOP
`
`
`
`
`NO OPERATION. CAN BE USED AS A SPACER BETWEEN
`COMMANDS.
`
`FE2XF_CMD_VERTEX
`
`READ
`
`READ
`
`VERTEX DATA.
`
`FE2XF_CMD_PASSTHR
`
`PASSTHROUGH. TRANSFORM AND LIGHTING PASS THE
`DATA THROUGH.
`
`
`
`
`READ THE VAB CONTENTS WHEN CONTEXT SWITCHING.
`FE2XF_CMD_RDVAB
`FE2XF_CMD_LDMODE - OAD NEW MODE BITS.
`l'_l_
`FE2XF_CMD_LDXFCTX WRITE - OAD TRANSFORM CONTEXT MEMORY DATA.
`I
`FE2XF_CMD_RDXFCTX -- EAD TRANSFORM CONTEXT MEMORY DATA.
`'—
`WRITE
`FE2XF_CMD_LDLTCTX
`OAD LIGHTING CONTEXT MEMORY DATA.
`l
`m EAD LIGHTING CONTEXT MEMORY DATA.
`l—
`WRITE
`OAD LIGHTING CONTEXTO MEMORY DATA.
`
`-----
`
`FE2XF_CMD_RDLTCTX
`
`FE2XF_CMD_LDLTCO
`
`FE2XF_CMD_RDLTCU
`
`""
`OAD LIGHTING CONTEXTI MEMORY DATA.
`WRITE
`FE2XF_CMD_LDLTCI
`_-- EAD LIGHTING CONTEXT1 MEMORY DATA.
`—
`FE2XF_CMD_LDLTC2
`WRITE
`OAD LIGHTING CONTEXT2 MEMORY DATA.
`
`
`
`
`
`
`”Ll-l
`
`
`I 1
`
`EAD LIGHTING CONTEXTO MEMORY DATA.
`
`l '
`
`----
`
`FE2XF_CMD_RDLT02
`
`EAD LIGHTING CONTEXT2 MEMORY DATA.
`
`OAD LIGHTING CONTEXT3 MEMORY DATA.
`WRITE
`FE2XF_CMD_LTLTC3
`FE2XF_CMD_RDLTC3 m EAD LIGHTING CONTEXTs MEMORY DATA.
`FE2XF_CMD_SYNC
`READ+
`READ+
`SIMILAR TO NOP BUT IS NOT ALLOWED TO BE
`WRITE WRITE
`PROCESSED IN PARALLEL.
`
`
`
`
`
`FIG. 2A
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 8 of 66 PageID# 14264
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 8 of 66 Page|D# 14264
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 5 of 44
`
`US 7,095,414 B2
`
`RECEIVING A PLURALITY OF SETS OF VERTEX ATTRIBUTES IN A
`VERTEX ATTRIBUTE BUFFER FOR BEING PROCESSED, EACH SET
`OF ATTRIBUTES INCLUDING A PLURALITY OF UNIQUE VERTEX
`ATTRIBUTES CORRESPONDING TOA SINGLE VERTEX
`
`
`
`210
`
`STORING THE VERTEX ATTRIBUTES IN THE VERTEX ATTRIBUTE
`BUFFER UPON THE RECEIPT THEREOF
`
`212
`
`MONITORING THE RECEIVED SETS OF VERTEX ATTRIBUTES IN
`ORDER TO DETERMINE WHETHER A RECEIVED VERTEX
`ATTRIBUTE HAS A CORRESPONDING VERTEX ATTRIBUTE OF A
`DIFFERENT SET CURRENTLY STORED IN THE VERTEX ATTRIBUTE
`BUFFER
`
`216
`
`219
`
`TRANSFERRING THE STORED VERTEX
`
`
`ATTRIBUTE TO THE CORRESPONDING
`TRANSFERRING EACH SET OF
`
`
`INPUT BUFFER OF THE PROCESSING
`STORED VERTEX ATTRIBUTES TO A
`
`MODULE OUT OF ORDER UPON IT BEING
`CORRESPONDING ONE OF A
`
`DETERMINED THAT THE STORED VERTEX
`PLURALITY OF INPUT BUFFERS OF
`
`ATTRIBUTE CORRESPONDS TO THE
`A PROCESSING MODULE IN ORDER
`
`RECEIVED VERTEX ATTRIBUTE
`
`
`
`
`
`
`
`
`
`
`
`
`FIG. ZB
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 9 of 66 PageID# 14265
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 9 of 66 Page|D# 14265
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 6 0f 44
`
`US 7,095,414 B2
`
`ADDRESS
`
`
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 10 of 66 PageID# 14266
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 10 of 66 Page|D# 14266
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 7 of 44
`
`US 7,095,414 B2
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`MODE BIT
`
`BITS
`
`DESCRIPTION
`
`
`-_ TEXTURE 0 ENABLE
`TXFG _ TEXTUREGIIIATRIX TRANSFORM ENABLE
`TDVD
`TEXTURED wDNIDE ENABLE
`
`
`
`TEXTURE 1 MATRIX TRANSFORM ENABLE
`
`LIGHTING ENABLE
`
`NORMAL NORMALIZE ENABLE
`
`F
`
`LIGHT STATUS(8LIGHTSBYZBITS EACH,
`0:
`.
`:
`,
`:
`OFF 1 INFINITE 2 LOCAL.3:SPOTI.IGHT)
`
`FOGGEN OONTROLIO; OFF, 1:RADIAL, 2: PLANE)
`
`LIGHTATTENUATION CONTROL (0: INVERT, 1: NO INVERT)
`
`PECULAR COLOR INPUT ENABLE
`
`PECULAR COLOR OUTPUT ENABLE
`
`S S
`
`4
`
`COLOR MATERIAL CONTROL (1: EMISSIVE, 2: AMBIENT, 4:
`DIFFUSE. 8:8PECULAR)
`
`_'
`
`—-l
`
`—I
`
`H
`
`.4
`
`_..‘
`
`_¢
`
`...—|
`
`IS
`
`_'
`
`-—_’
`
`Fri—4
`
`T
`
`I
`LS
`
`F
`
`T
`
`I
`
`I
`
`CM
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`_- POINT PARAMETER ENABLE
`SKIN
`SKINNING ENABLE
`UPAB
`VERTEX PAss ENABLE
`
`FIG. 3
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 11 of 66 PageID# 14267
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 11 of 66 Page|D# 14267
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 8 0f 44
`
`US 7,095,414 B2
`
`VAB
`
`400
`
`"I"IBUFFER
`
`412
`
`52
`
`410
`
`MICRO-CODE
`
`TRANSFORM
`
`CONTEXT
`MEMORY
`
`402 /
`
`FIG. 4
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 12 of 66 PageID# 14268
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 12 of 66 Page|D# 14268
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 9 0f 44
`
`US 7,095,414 B2
`
`START
`
`DETERMINE CURRENT THREAD(T)
`
`420
`
`
`
`
` 424
`
`
`
`
`NEXT CYCLE
`
`GET NEXT INSTRUCTION FOR T# USING CORRESPONDING
`PROGRAM COUNTER (PC#)
`
`422
`
`INJECT INSTRUCTIONS INTO PROCESSING MODULE(S)
`
`FIG. 4A
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 13 of 66 PageID# 14269
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 13 of 66 Page|D# 14269
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 10 0f 44
`
`US 7,095,414 B2
`
`PCO
`
`P01
`
`P02
`
`fl
`
`TH READ #
`
`CURRENTPC#
`
`452
`
`INSTRUCTION
`MEMORY
`
` 454
`
`456
`
`459
`
`457
`
`INSTRUCTION
`DELAY
`
`457
`
`INSTRUCTION
`DELAY
`
`FIG. 4B
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 14 of 66 PageID# 14270
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 14 of 66 Page|D# 14270
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 11 of 44
`
`US 7,095,414 B2
`
`
`
`FIG. 5
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 15 of 66 PageID# 14271
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 15 of 66 Page|D# 14271
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 12 of 44
`
`US 7,095,414 B2
`
`PASS
`
`B[4]
`
`500
`
`—CONTROL BM]
`
`
`Eifiiiilll
`EI“:_-II
`
`PASS
`
`AM]
`
`SIGN BIT
`CONTROL
`
`700
`
`O[4]
`
`FIG. 7
`
`\
`504
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 16 of 66 PageID# 14272
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 16 of 66 Page|D# 14272
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 13 0f 44
`
`US 7,095,414 B2
`
`
`
`FIG. 8
`
`mode
`
`a
`
`clamp
`
`512
`
`ILU
`
`FIG. 9
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 17 of 66 PageID# 14273
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 17 of 66 Page|D# 14273
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 14 of 44
`
`US 7,095,414 B2
`
`ADDRESS
`
`TARGET
`
`ACTION
`
`DESCRIPTION
`
`TPOS
`
`0
`
`TT1
`
`WEV
`
`WLVO
`
`WLV1
`
`WLV2
`WLV3
`WLV4
`WLV5
`WLV6
`WLVY
`WSLO
`
`WSL1
`
`WSL2
`
`WSL3
`
`WSL4
`
`WSLS
`
`WSL6
`
`WSL?
`
`VED
`vmo
`
`VLD1
`
`VL02
`
`VL03
`
`VLD4
`VLDS
`
`VLDS
`
`VLD?
`vco
`v01
`
`VNRM
`
`VEDZ
`
`2 "U
`
`
`
`
`
`AL
`
`U
`
`1. :
`
`-ALUW
`WI3I=ALU VI3I
`WI41=ALU V[41y ALUW
`WBUFFER VBUFFER W5
`ALU, V[5] y ALU w
`WBUFFER VBUFFER W[6
`ALU, V[6] y ALU w
`WBUFFER VBUFFER WIT] ALU VUIy ALU.w
`WBUFFER VBUFFER W[8] ALU V[8]
`ALU.w
`
`LIGHT4 DIRECTION VECTOR
`LIGHT5 DIRECTION VECTOR
`LIGHT6 DIRECTION VECTOR
`LIGHT! DIRECTION VECTOR
`
`Vl01.x=1OVI01.z=ALUw
`
`V[51-x=10 VI5l.z=ALUw
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`V[81-x=10Vl81-2=ALUW
`VBUFFER,TBUFFER V[9]=ALU T[1]=ALU
`
`
`
`
`
`
`___
`
`
`
`
`FIG. 10
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 18 of 66 PageID# 14274
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 18 of 66 Page|D# 14274
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 15 of 44
`
`US 7,095,414 B2
`
`MICROCODE FIELD BITS LOCATION DELAY
`
`DESCRIPTION
`
`
`
`
`
`
`
`2
`
`
`
`3599AN"01 (11
`
`.4 O‘)
`
`—L \l
`
`
`
`1
`
`1
`
`_3 00 N _x
`NN NH
`Ni
`NM030! NM(ON
`iC)
`(.40 _x
`
`n .
`
`
`
`(JO(JO(A)0)01N
`
`4:.N Ao.)
`
`02—
`02—
`
`
`
`FIG. 11
`
`
`
`:m
`
`E
`
`<D)
`
`CCD
`
`0
`
`i}.
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 19 of 66 PageID# 14275
`Case 3:14-cv-OO757-REP-DJN Document 87 2 Filed 04/16/15 Page 19 0f 66 Page|D# 14275
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 16 0f 44
`
`US 7,095,414 B2
`
`.cmfizoo
`
`
`
`EOE:58ng
`
`:55
`
`
`
`20%
`
`mmmmog
`
`m om
`
`wzazmsomm
`
`5282
`
`u E
`
`u
`
`.6528
`
`«55%
`
`momF
`
`mashEtna
`
`lllllllllllllllllllllllllllllllllll
`
`
`
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 20 of 66 PageID# 14276
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 20 of 66 Page|D# 14276
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 17 0f 44
`
`US 7,095,414 B2
`
`RECEIVING A PLURALITY OF MODE BITS INDICATIVE OF THE
`STATUS OFA PLURALITY OF MODES OF PROCESS OPERATIONS
`
`1320
`
`IDENTIFYING A PLURALITY OF ADDRESSES IN MEMORY BASED
`ON THE MODE BITS
`
`1322
`
`ACCESSING THE ADDRESSES IN THE MEMORY FOR RETRIEVING
`CODE SEGMENTS WHICH EACH ARE ADAPTED TO CARRY OUT
`THE PROCESS OPERATIONS IN ACCORDANCE WITH THE STATUS
`OF THE MODES
`
`
`
`1324
`
`EXECUTING THE CODE SEGMENTS WITHIN A TRANSFORM OR
`LIGHTING MODULE FOR PROCESSING VERTEX DATA
`
`1326
`
`FIG. 13
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 21 of 66 PageID# 14277
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 21 of 66 Page|D# 14277
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 18 0f 44
`
`US 7,095,414 B2
`
`1430
`
`
`
`
`
`DECODEMODE
`
`BUS
`
`
`
`CONTROL
`
`VECTOR
`
`THREAD
`
`Il-MODEREG_|_MODEREGII
` 1432
` CURRENT
`
`
`
`
`NEXT
`
`POWTER
`
`HNORHY
`
`ENCODE
`
`1438
`
`1404
`
`FIG. 14
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 22 of 66 PageID# 14278
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 22 of 66 Page|D# 14278
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 19 of 44
`
`US 7,095,414 B2
`
`1440
`
`VECTOR
`
`VECTOR
`OPERATIONS
`
`OPERATIONS
`
`FIG. 14A
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 23 of 66 PageID# 14279
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 23 of 66 Page|D# 14279
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 20 0f 44
`
`US 7,095,414 B2
`
`VECTOR
`
`OPERATIONS
`
`OPERATIONS
`
`SCALAR
`
`FIG. 14B
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 24 of 66 PageID# 14280
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 24 of 66 Page|D# 14280
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 21 of 44
`
`US 7,095,414 B2
`
`I453
`
`VECTOR
`SOURCE
`
`VECTOR
`
`SCALAR
`OPERATIONS
`
`OPERATIONS
`
`DESTINATION
`
`FIG. 14C
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 25 of 66 PageID# 14281
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 25 of 66 Page|D# 14281
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 22 of 44
`
`US 7,095,414 B2
`
`RECEIVING A PLURALITY OF MATRICES, A PLURALITY OF WEIGHT
`VALUES EACH CORRESPONDING WITH ONE OF THE MATRICES,
`AND VERTEX DATA
`
`
`
`
`
`
`CALCULATING A SUM OF A PLURALITY OF PRODUCTS WITH EACH
`PRODUCT CALCULATED BY THE MULTIPLICATION OF THE VERTEX
`DATA, ONE OF THE MATRICES, AND THE WEIGHT
`CORRESPONDING TO THE MATRIX
`
`1470
`
`1472
`
`
`
`OUTPUTI'ING THE SUM OF PRODUCTS FOR ADDITIONAL
`PROCESSING
`
`1474
`
`FIG. 14D
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 26 of 66 PageID# 14282
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 26 of 66 Page|D# 14282
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 23 0f 44
`
`US 7,095,414 B2
`
`MEMORY
`
`MlCRO—CODE
`
`LIGHT/FOG
`
`1501
`
`CONTEXT
`
`FIG. 15
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 27 of 66 PageID# 14283
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 27 of 66 Page|D# 14283
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 24 of 44
`
`US 7,095,414 B2
`
`CONTEXT
`
`MEMORY
`BB]
`
`1616
`
`FIG. 16
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 28 of 66 PageID# 14284
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 28 of 66 Page|D# 14284
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 25 of 44
`
`US 7,095,414 B2
`
`PASS
`
`BIB]
`
`
`
`ALU[3]
`
`AO[3]
`
`
`
`FIG. 19
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 29 of 66 PageID# 14285
`Case 3:14-cv-OO757-REP-DJN Document 87
`-2 Filed 04/16/15 Page 29 0f 66 Page|D# 14285
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 26 0f 44
`
`US 7,095,414 B2
`
`mL_
`
`:698
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 30 of 66 PageID# 14286
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 30 of 66 Page|D# 14286
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 27 0f 44
`
`US 7,095,414 B2
`
`NAME REGISTER
`
`DESCRIPTION
`
`
`
`
`MFLAG
`fl MFLAG
`
`I]
`- MFLAG—
`
`MFLAG
`SPOTLIGHT CONE ATTENUATION FLAG. SET IF SPOTLIGHT CONE
`
`ATTENUATION CONTRIBUTION IS NEGATIVE.
`
`
`
`
`
`
`
`
`SPECULAR FLAG. SET IF SPECULAR CONTRIBUTION IS NEGATIVE.
`RANGE FLAG. SET IF VERTEX IS TOO FAR AWAY FROM THE LIGHT.
`
`FIG. 21
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 31 of 66 PageID# 14287
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 31 of 66 Page|D# 14287
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 28 0f 44
`
`US 7,095,414 B2
`
`MICROCODE FTELD BITS LOCATION
`
`DELAY
`
`DESCRTPTTON
`
`_-——_
`III-“_—
`_--—
`—I-_I_-_
`_—-_I-
`_ll___
`
`
`
`
`11:12 _—
`_ 13:14 _—
`—-___
`_-_EIE-
`awa
`I. 22:26
`-II 27:30 _—
`_---_
`_II 33:38
`
`
`
`
`
`
`
`
`
`
`—_-—Il
`_-_—_
`_EI 45:46
`
`
`
`4:) ——‘HmppmmMM
`CONTEXTO MEMORY ADDRESS
`
`__—l-E_
`51:52
`
`[HIE—_— MACOINPUTBMUX
`M03
`_m MACOINPUTAMUX
`CONTEXT MEMORY READ/WRITE ENABLE
`
`CONTEXT MEMORY ADDRESS
`
`CONTEXT3 MEMORY ADDRESS
`
`CONTEXT2 MEMORY ADDRESS
`
`CONTEXT1 MEMORY ADDRESS
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 32 of 66 PageID# 14288
`Case 3:14-cv-OO757-REP-DJN Document 87
`-2 Filed 04/16/15 Page 32 0f 66 Page|D# 14288
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 29 0f 44
`
`US 7,095,414 B2
`
`IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII
`
`amism
`
`bmtzoo
`
`
`
`502%e255:
`
`mmw.mu_“1
`
`mwmmonz
`
`25
`
`0265295
`
`.3802
`
`wow
`
`405.200
`
`”.985
`
`
`
`
`
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 33 of 66 PageID# 14289
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 33 of 66 Page|D# 14289
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 30 0f 44
`
`US 7,095,414 B2
`
`RECEIVING VERTEX DATA IN A BUFFER OFA FIRST SET OF
`BUFFERS, WHEREIN THE BUFFER IN WHICH THE VERTEX DATA IS
`RECEIVED IS BASED ON A ROUND ROBIN SEQUENCE
`
`PROCESSING THE VERTEX DATA IN THE TRANSFORM MODULE
`AFTER THE EMPTY BUFFER OF THE SECOND SET OF BUFFERS IS
`IDENTIFIED
`
`OUTPUTTING THE VERTEX DATA FROM THE TRANSFORM
`MODULE TO THE IDENTIFIED EMPTY BUFFER OF THE SECOND
`SET OF BUFFERS
`
`2420
`
`2422
`
`2424
`
`2426
`
`2428
`
`2430
`
`IDENTIFYING AN EMPTY BUFFER OF A SECOND SET OF BUFFERS
`BASED ON A ROUND ROBIN SEQUENCE, WHEREIN A TRANSFORM
`MODULE IS COUPLED BETWEEN THE FIRST SET OF BUFFERS AND
`THE SECOND SET OF BUFFERS
`
`
`
`IDENTIFYING AN EMPTY BUFFER OF ATHIRD SET OF BUFFERS
`BASED ON A ROUND ROBIN SEQUENCE, WHEREIN A LIGHTING
`MODULE IS COUPLED BETWEEN THE SECOND SET OF BUFFERS
`AND THE THIRD SET OF BUFFERS
`
`PROCESSING THE VERTEX DATA IN THE LIGHTING MODULE
`AFTER THE EMPTY BUFFER OF THE THIRD SET OF BUFFERS IS
`IDENTIFIED
`
`OUTPUTTING THE VERTEX DATA FROM THE LIGHTING MODULE
`TO THE IDENTIFIED EMPTY BUFFER OF THE THIRD SET OF BUFFERS
`
`2432
`
`FIG. 24
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 34 of 66 PageID# 14290
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 34 of 66 Page|D# 14290
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 31 0f 44
`
`US 7,095,414 B2
`
`INPUT
`BUFFERS
`
`400
`
`[ISSUE
`
`52
`
`44441:] [j E]
`
`2550
`
`FIG. 25
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 35 of 66 PageID# 14291
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 35 of 66 Page|D# 14291
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 32 0f 44
`
`US 7,095,414 B2
`
`57
`
`TRAVERSAL
`
`58
`
`
`
`FIG. 258
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 36 of 66 PageID# 14292
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 36 of 66 Page|D# 14292
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 33 of 44
`
`US 7,095,414 B2
`
`OVERALL
`CONTROL
`
`FLOATING
`POINT
`
`DATAPATH
`
`/57
`
`64
`
`63
`
`FORMATIING
`
`PRIMITIVE F
`SEQUENCER
`OUTPUT
`
`EDGE EQUATIONS AND TEXTURE INTERPOLATION
`VALUES TO RASTERIZER
`
`FIG. 26
`
`
`
`FIG. 26A
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 37 of 66 PageID# 14293
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 37 of 66 Page|D# 14293
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 34 0f 44
`
`US 7,095,414 B2
`
`
`RECEIVE TRIANGLE AND COMPUTE LINE EQUATION COEFFICIENTS
`
` MODIFY LINE EQUATION COEFFICIENTS IF ANY TRIANGLE VERTEX(ES)
`
`
`HAVE A NEGATIVE W-COORDINATE
`
`
`
`
`
`2700
`
`
`
`2702
`
`
`
`2705
`
`PROCESS ROW
`
`GOTO JUMP
`POSITION
`
`
`
`
`
`
`2703
`
`JUMP POSITION FOUND?
`
`TRAVERSAL
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 38 of 66 PageID# 14294
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 38 of 66 Page|D# 14294
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 35 of 44
`
`US 7,095,414 B2
`
`2705
`
`P1
`
`P2
`
`2707
`
`P3
`
`P4
`
`FIG. 27A
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 39 of 66 PageID# 14295
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 39 of 66 Page|D# 14295
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 36 0f 44
`
`US 7,095,414 B2
`
`START
`
`COMPUTE SENSE POINTS
`
`£05
`
`2800
`
`NO@ 2801
`
`
`
`YES
`STORE RIGHT-HAND NEIGHBOR RECTANGLE AS SNAP-LOCATION
`
`
`2802
`
`CALCULATE VALUE OF LINE EQNS. AT SENSE POINTS OF RECTANGLE
`
`2812
`
`
`
`
`MOVE
`RECTANGLE
`
`
`LEFT
`CALCULATEAND STOREEJUMP POSITION
`
`
`
`NO
`
`CAN GO DOWN?
`
`
`
`ARE LEFT SENSE
`
`POINTS BOTH OUTSIDE EDGE OF
`THE TRIANGLE?
`
`
`
`NO
`
`IS THERE A
`SNAP LOCATION?
`
`2814
`
`
`
`GOTO SNAP LOCATION
`
`2816
`
`
`
`CALCULATE VALUE OF LINE EQNS. AT SENSE POINTS OF RECTANGLE
`
`2826
`
`
`MOVE
`RECTANGLE
`CAN GO DOWN?
`RIGHT
`
`
`
`
`
`CALCULATE AND STORE JUMP POSITION
`
`
`
`ARE RIGHT SENSE
`
`POINTS BOTH OUTSIDE EDGE OF
`
`THE TRIANGLE?
`
`
`YES
`
`FIG. 28
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 40 of 66 PageID# 14296
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 40 of 66 Page|D# 14296
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 37 0f 44
`
`US 7,095,414 B2
`
`
`
`FIG. 288
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 41 of 66 PageID# 14297
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 41 of 66 Page|D# 14297
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 38 of 44
`
`US 7,095,414 B2
`
`START
`
`FIRST
` DIRECTION
`
` WAS PREVIOUS DIRECTION INA
`
`FIRST OR SECOND DIRECTION?
`
`
`2900
`
`SECOND
`DIRECTION
`
`
`CALCULATE VALUE OF LINE EQNS. AT4 SENSE POINTS OF RECTANGLE
`
`
`
`2906
`
`2904
`
`
`
`ARE SENSE POINTS OF THE FIRST
`REngINgEI-EIETHE
`
`
`
`
`SIDE OF THE RECTANGLE BOTH OUTSIDE
`FIRST
`
`
`
`EDGE OF THE TRIANGLE?
`DIRECTION
`
`
`
`
`
`YES
`
`NO
`CAN GO DOWN?
`
`
`CALCULATE AND STORE JUMP POSITION
`
`YES
`
`2905
`
`2908
`
`
`
`CALCULATE VALUE OF LINE EQNS. AT4 SENSE POINTS OF RECTANGLE
`
`
`
`2914
`
`2912
`
`MOVE THE
`
`RE SENSE POINTS OF THE SECOND
`
`RECTANGLE THE
`
`SIDE OF THE RECTANGLE BOTH OUTSIDE
`
`SECOND
`
`
`EDGE OF THE TRIANGLE?
`
`DIRECTION
`
`
`
`
`
`
`
`
`
`YES
`
`”0
`
`CAN G0 DOWN?
`
`2913
`
` YES
`
`CALCULATE AND STORE JUMP POSITION
`
`2916
`
`mm:
`
`FIG. 29
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 42 of 66 PageID# 14298
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 42 of 66 Page|D# 14298
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 39 of 44
`
`US 7,095,414 B2
`
`
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 43 of 66 PageID# 14299
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 43 of 66 Page|D# 14299
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 40 0f 44
`
`US 7,095,414 B2
`
`START
`
`SET UP
`
`RECEIVE TRIANGLE AND COMPUTE LINE EQUATION COEFFICIENTS
`
`MODIFY LINE EQUATION COEFFICIENTS IF ANY TRIANGLE VERTEX(ES)
`HAVE A NEGATIVE W-COORDINATE
`
`DEFINE AT LEAST ONE BOUNDARY WHICH DIVIDES THE PRIMITIVE
`INTO A PLURALITY OF PORTIONS
`
`3000
`
`
`POSITION A RECTANGLE ON OR NEAR THE TRIANGLE/POLYGON
`
`
`
`3004
`
`3010
`
`3002
`
`
`GOTO
`
`STARTING
`POSITION
`30m
`
`
`
`STARTING POSITION FOR ADJACENT
`PORTION OF THE PRIMITIVE?
`
`
`END
`
`TRAVERSAL
`
`I
`
`;
`I
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 44 of 66 PageID# 14300
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 44 of 66 Page|D# 14300
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 41 of 44
`
`US 7,095,414 B2
`
`START
`
`
`
`
`
`
`
`WAS PREVIOUS MOVEMENT IN A
`FIRST OR SECOND DIRECTION?
`
`3118
`
`FIRST
`DIRECTION
`
`
` NO
`
`
`SECOND
`
`DIRECTION
`
`IS RECTANGLE
`PAST LIMIT?
`
`
`
`
`
`ARE SENSE POINTS OF THE FIRST
`REgTRIIIEGPEHTHE
`
`
`
`
`
`SIDE OF THE RECTANGLE BOTH OUTSIDE
`FIRST
`
`
`
`EDGE OF THE TRIANGLE?
`D|RECTION
`
`
`
`
`
` STORE
`
`STARTING
`POSITION
`
`CALCULATE VALUE OF LINE EQNS. AT SENSE POINTS OF RECTANGLE
`
`NO
`
`CAN GO DOWN?
`
`3119
`
`
`YES
`
`3120
`”0
`CALCULATE AND STOREJUMP POSITION
`
`
`IS RECTANGLE
`
`
`PAST LIMIT?
`
`
`CALCULATE VALUE OF LINE EQNS. AT SENSE POINTS OF RECTANGLE
`
`
`
`
`
`
`MOVE THE
`
`
`‘RE SENSE POINTS OF THE SECOND
`RECTANGLE THE
`
`
`
`SIDE OF THE RECTANGLE BOTH OUTSIDE
`SECOND
`
`
`
`EDGE OF THE TRIANGLE?
`DIRECTION
`
`
`
`
`
`
`STORE
`
`
`STARTING
`POSITION
`
`CAN GO DOWN?
`
`NO
`
`YES
`
`3121
`
`FIG. 31
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 45 of 66 PageID# 14301
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 45 of 66 Page|D# 14301
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 42 of 44
`
`US 7,095,414 B2
`
`3128
`
`3128
`
`3128
`
`
`
`
`
`
`
`
`
`III“--
`
`
`
`
`’----x
`
`
`156
`
`155
`
`153
`
`
`
`
`157
`158
`
`
`VIII-“m—
`m-
`
`
`mm
`”mm
`mm
`
`VIE-MI 183
`223
`
`NNO:
`186
`
`3126
`
`
`
`
`
`
`185
`
`225
`
`
`
`
`
`
`
`
`
`
`
`
`
`“MEIE-
`
`Ii(.04:...)
`
`19
`
`MN(ADMAN
`
`NN—h—xcoma:AOODN
`
`NNNNmmmmNmoco
`
`[\JNNCOLON i(A)A
`
`
`
`240
`241
`
`Non(TI
`199
`239
`YUM 238
`
`------------fll 242
`[HI-“M 245
`246
`
`
`214
`215
`216
`m 213
`
`
`_----M
`21 \l
`
`mum 100
`
`
`I“: 101
`
`
`
`
`
`FIG. 31A
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 46 of 66 PageID# 14302
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 46 of 66 Page|D# 14302
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 43 0f 44
`
`US 7,095,414 B2
`
`
`
`DETERMINING W-VALUES FOR POINTS OF INTERSECTIONS OF
`
` 3200
`THE LINE EQUATIONS
`
`
`3207
`FLIP THE LINE EQUATIONS FOR
`
`
`
`
`THE LINES CONNECTING THE
`FLIP THE LINE EQUATION FOR
`
`
`VERTEX HAVING A POSITIVE W
`THE LINE OPPOSITE THE
`
`
`
`VALUE AND EACH OF THE
`VERTEX HAVING A NEGATIVE W
`
`
`VERTEXES HAVING NEGATIVE W
`VALUE
`
`
`
`VALUES
`
`ONE
`
`
`IS THERE
`A NEGATIVE W?
`
`
`
`FIG. 32
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 47 of 66 PageID# 14303
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 47 of 66 Page|D# 14303
`
`U.S. Patent
`
`Aug. 22, 2006
`
`Sheet 44 of 44
`
`US 7,095,414 B2
`
`
`
`
`
`' FILL "
`FIG. 32C
`
`

`

`Case 3:14-cv-00757-REP-DJN Document 87-2 Filed 04/16/15 Page 48 of 66 PageID# 14304
`Case 3:14-cv-OO757-REP-DJN Document 87-2 Filed 04/16/15 Page 48 of 66 Page|D# 14304
`
`US 7,095,414 B2
`
`1
`BLENDING SYSTEM AND METHOD IN AN
`INTEGRATED COMPUTER GRAPHICS
`PIPELINE
`
`RELATED APPLICATIONS
`
`The present application is a continuation of an application
`filed Jan. 31, 2001 under Ser. No. 09/775,129 now US. Pat.
`No. 6,734,874; which in turn is a divisional of an application
`filed on Dec. 6, 1999 under Ser. No. 09/456,102 now issued
`as US. Pat. No. 6,353,439. The present application is related
`to a patent application filed Jan. 31, 2001 under Ser. No.
`09/775,086. The present application is further related to
`applications entitled “Method, Apparatus and Article of
`Manufacture for Area Rasterization using Sense Points”
`which was filed on Dec. 6, 1999 under Ser. No. 09/455,305,
`“Method, Apparatus and Article of Manufacture for Bous-
`trophedonic Rasterization” which was filed on Dec. 6, 1999
`under Ser. No. 09/454,505, “Method, Apparatus and Article
`of Manufacture for Clip-less Rasterization using Line Equa-
`tion-based Traversal” which was filed on Dec. 6, 1999 under
`Ser. No. 09/455,728, “Transform, Lighting and Rasteriza-
`tion System Embodied on a Single Semiconductor Plat-
`form” which was filed on Dec. 6, 1999 under Ser. No.
`09/454,516, and issued under US. Pat. No. 6,198,488,
`“Method, Apparatus and Article of Manufacture for a Vertex
`Attribute Buffer in a Graphics Processor” which was filed on
`Dec. 6, 1999 under Ser. No. 09/454,525, “Method and
`Apparatus for a Lighting Module in a Graphics Processor”
`which was filed on Dec. 6, 1999 under Ser. No. 09/454,524,
`and “Method, Apparatus and Article of Manufacture for a
`Sequencer in a Transform/Lighting Module Capable of
`Processing Multiple Independent Execution Threads” which
`was filed on Dec. 6, 1999 under Ser. No. 09/456,104, which
`were filed concurrently herewith, and which are all incor-
`porated herein by reference in their entirety.
`
`FIELD OF THE INVENTION
`
`The present invention relates generally to graphics pro-
`cessors and, more particularly, to a transform module of a
`graphics pipeline system.
`
`BACKGROUND OF THE INVENTION
`
`Prior Art FIG. 1 illustrates a general prior art system that
`implements a pipelined graphics processing system. In this
`system, data source 10 generates a stream of expanded
`vertices defining primitives. These vertices are passed, one
`at a time, through pipelined graphic system 12 via vertex
`memory 13 for storage purposes. Once the expanded verti-
`ces are received from the vertex memory 13 into the
`pipelined graphic system 12, the vertices are transformed
`and lit by a transformation module 14 and a lighting module
`16, respectively, and further clipped and set-up for being
`rendered by a rasterizer 18, thus generating rendered primi-
`tives that are then displayed on display device 20.
`During operation, the transform module 14 may be used
`for receiving vertices in model coordinates and transforming
`the three dimensional vertices from their model coordinates
`
`to the two dimensional window where they will ultimately
`be displayed. In order to achieve the transformation, stan-
`dard transform parameters may be employed such as a view
`port, a viewing matrix, a world matrix, a projection matrix
`and so forth.
`
`Together, the foregoing parameters allow geometric trans-
`formations to express the location of an object relative to
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`
`another object, rotate, clip and size various objects, as well
`as change viewing positions, directions, and perspectives in
`the three dimensional scene. Coordinate transformations that
`transform the three dimensional vertices from their model
`
`coordinates to the two dimensional window where they will
`be displayed typically involve one or more of translation,
`rotation and scaling.
`Prior art transform systems typically handle scalar and
`vector values that are generated during the transform process
`separately. For example, a position attribute, i.e. Oi, Y, Z,
`W), may be processed via a vector operator such as multi-
`plier and/or an adder, thus rendering a scalar value. While a
`scalar operator may process such scalar value, it is typically
`not processed again by the vector operator. Until now there
`have been no attempts to integrate the processing of scalar
`and vector forms of processed vertex data during graphics
`pipeline processing.
`Yet another process handled by the transform module 14
`is blending, or “skinning.” Skinning refers to the process of
`adding realism to segmented polygonal objects by blending
`a joint between the objects. Prior Art FIG. 1A illustrates a
`pair of objects 22 before and after skinning is performed.
`Conventionally, the skinning process is carried out using
`a computer program and a general-

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