`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 1 of 11
`
`IN THE UNITED STATES PATENT AND TRADEMARK OFFICE
`
`Applicants: Mark M. Leatheretal.
`Serial No.: 10/459,797
`Filing Date: June 12, 2003
`Confirmation No.: 4148
`
`Examiner: Joni Hsu
`Art Unit: 2628
`OurFile No.: 00100.02.0053
`
`Title: DIVIDING WORK AMONG MULTIPLE GRAPHICS PIPELINES USING
`A SUPER-TILING TECHNIQUE
`
`Mail Stop Amendment
`Commissionerfor Patents
`P.O. Box 1450
`Alexandria, VA 22313-1450
`
`DearSir:
`
`AMENDMENT AND RESPONSE
`
`In response to the Office Action mailed August 28, 2007, Applicants respondas follows.
`
`Amendments to the Specification begin on page 2 of this paper.
`
`Amendments to the Claims begin on page 3 ofthis paper.
`
`Remarksbegin on page 9 ofthis paper.
`
`CHICAGO/#1718760.1
`
`1
`
`Ex. 12, p. 1
`
`Ex. 12, p. 1
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 2 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 2 of 11
`
`Amendments to the Specification:
`
`Please replace paragraph [0001] with the following amended paragraph:
`
`[0001]
`
`This is a related application to a co-pending application entitled “Parallel Pipeline
`
`Graphics System’—havine—deeket-number010025, having serial number 10/724,384, having
`
`Leather et al. as the inventors, filed on even—date-November 26, 2003, owned by the same
`
`assignee and hereby incorporated by referencein its entirety.
`
`CHICAGO/#1718760.1
`
`2
`
`Ex. 12, p.2
`
`Ex. 12, p. 2
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 3 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 3 of 11
`
`Amendments to the Claims:
`
`Re-write the claims as set forth below. This listing of claims will replace all prior versions and
`listings, of claims in the application:
`
`Listing of Claims:
`
`1. (currently amended) A graphics processing circuit, comprising:
`
`at
`
`least
`
`two graphics pipelines on_a_ same chip operative to process data in a
`
`corresponding set of tiles of a repeating tile pattern corresponding to screen locations, a
`
`respective one of the at least two graphics pipelines operative to process data in a dedicatedtile;
`
`and
`
`a memory controller on the chip in communication with the at
`
`least two graphics
`
`pipelines, operative to transfer pixel data between each ofa first pipeline and a second pipeline
`
`and a memory;
`
`wherein the repeating tile pattern includes a horizontally and vertically repeating pattern
`
`of square regions.
`
`2.
`
`(original) The graphics processing circuit of claim 1, wherein the square regions
`
`comprise a two dimensional partitioning of memory.
`
`3.
`
`(original) The graphics processing circuit of claim 2, wherein the memory is a frame
`
`buffer.
`
`4.
`
`(original) The graphics processing circuit of claim 1, wherein each ofthe at least two
`
`graphics pipelines further includes front end circuitry operative to receive vertex data and
`
`generate pixel data corresponding to a primitive to be rendered, and back end circuitry, coupled
`
`to the front end circuitry, operative to receive and processa portion of the pixel data.
`
`CHICAGO/#1718760.1
`
`3
`
`Ex. 12, p.3
`
`Ex. 12, p. 3
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 4 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 4 of 11
`
`5.
`
`(original) The graphics processing circuit of claim 4, wherein each ofthe at least two
`
`graphics pipelines further includes a scan converter, coupled to the back end circuitry, operative
`
`to determine the portion of the pixel data to be processed by the back endcircuitry.
`
`6.
`
`(original) The graphics processing circuit of claim 1, wherein eachtile of the set of
`
`tiles further comprises a 16x16 pixelarray.
`
`7. (original) The graphics processing circuit of claim 4, wherein the at least two graphics
`
`pipelines separately receive the pixel data from the front end circuitry.
`
`8. (canceled)
`
`9. (canceled)
`
`10.
`
`(original) The graphics processing circuit of claim 4, wherein a first of the at least
`
`two graphics pipelines processes the pixel data only in a first set of tiles in the repeating tile
`
`pattern.
`
`11.
`
`(original) The graphics processing circuit of claim 10, wherein the first of the at
`
`least two graphics pipelines further includes a scan converter, coupled to the front end circuitry
`
`and the back endcircuitry, operative to provide position coordinates of the pixels within thefirst
`
`set of tiles to be processed by the back end circuitry, the scan converter including a pixel
`
`identification line for receivingtile identification data indicating whichofthe setoftiles is to be
`
`processed by the back end circuitry.
`
`CHICAGO/#1718760.1
`
`4
`
`Ex. 12, p.4
`
`Ex. 12, p. 4
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 5 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 5 of 11
`
`12.
`
`(previously presented) The graphics processing circuit of claim 1, wherein a second
`
`of the at least two graphics pipelines processes the data only in a second set oftiles in the
`
`repeatingtile pattern.
`
`13.
`
`(previously presented) The graphics processing circuit of claim 12, wherein the
`
`second of the at least two graphics pipelines further includes a scan converter, coupled to front
`
`end circuitry and back end circuitry, operative to provide position coordinates of the pixels
`
`within the second set of tiles to be processed by the back end circuitry, the scan converter
`
`including a pixel identification line for receiving tile identification data indicating which of the
`
`set of tiles is to be processed by the back endcircuitry.
`
`14.
`
`(original) The graphics processing circuit of claim 1
`
`including a third graphics
`
`pipeline and a fourth graphics pipeline, wherein the third graphics pipeline includes front end
`
`circuitry operative to receive vertex data and generate pixel data correspondingto a primitive to
`
`be rendered, and back end circuitry, coupled to the front end circuitry, operative to receive and
`
`process the pixel data in a third set of tiles in the repeating tile pattern, and wherein the fourth
`
`graphics pipeline includes front end circuitry operative to receive vertex data and generate pixel
`
`data corresponding to a primitive to be rendered, and back end circuitry, coupled to the front end
`
`circuitry, operative to receive and process the pixel data in a fourth set of tiles in the repeating
`
`tile pattern.
`
`15.
`
`(original) The graphics processing circuit of claim 14, wherein the third graphics
`
`pipeline further includes a scan converter, coupled to the front end circuitry and the back end
`
`circuitry, operative to provide position coordinates of the pixels within the third set of tiles to be
`
`processed by the back end circuitry, the scan converter including a pixel identification line for
`
`CHICAGO/#1718760.1
`
`5
`
`Ex. 12, p.5
`
`Ex. 12, p. 5
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 6 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 6 of 11
`
`receiving tile identification data indicating which ofthe sets of tiles is to be processed by the
`
`back end circuitry.
`
`16.
`
`(original) The graphics processing circuit of claim 14, wherein the fourth graphics
`
`pipeline further includes a scan converter, coupled to the front end circuitry and the back end
`
`circuitry, operative to provide position coordinates of the pixels within the fourth set oftiles to
`
`be processed by the back end circuitry, the scan converter including a pixel identification line for
`
`receiving tile identification data indicating which ofthe sets of tiles is to be processed by the
`
`back end circuitry.
`
`17.
`
`(original) The graphics processing circuit of claim 14, wherein the third and fourth
`
`graphics pipelines are on separate chips.
`
`18.
`
`(original) The graphics processing circuit of claim 14, further including a bridge
`
`operative to transmit vertex data to each ofthe first, second, third and fourth graphics pipelines.
`
`19.
`
`(original) The graphics processing circuit of claim 17 wherein the data includes a
`
`polygon and wherein each separate chip creates a bounding box around the polygon and wherein
`
`each corner of the bounding box is checked against a supertile that belongs to each separate chip
`
`and wherein if the bounding box does not overlap any of the super tiles associated with a
`
`separate chip, then the processing circuit rejects the whole polygon and processesa next one.
`
`20. (currently amended) A graphics processing method, comprising:
`
`receiving vertex data for a primitive to be rendered;
`
`generating pixel data in response to the vertex data;
`
`CHICAGO/#1718760.1
`
`6
`
`Ex. 12, p.6
`
`Ex. 12, p. 6
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 7 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 7 of 11
`
`determining the pixels within a set of tiles of a repeating tile pattern corresponding to
`
`screen locations to be processed by a corresponding one ofat least two graphics pipelines ona
`
`same chip in response to the pixel data, the repeating tile pattern including a horizontally and
`
`vertically repeating pattern of square regions;
`
`performing pixel operations on the pixels within the determined set of tiles by the
`
`corresponding oneofthe at least two graphics pipelines; and
`
`transmitting the processed pixels to a memory controller, wherein the at
`
`least two
`
`graphics pipelines share the memory controller.
`
`21.
`
`(original) The graphics processing method of claim 20, wherein determining the
`
`pixels within a set of tiles of the repeating tile pattern to be processed further comprises
`
`determiningtheset of tiles that the corresponding graphics pipeline is responsible for.
`
`22.
`
`(original) The graphics processing method of claim 20, wherein determining the
`
`pixels within a set of tiles of the repeating tile pattern to be processed further comprises
`
`providing position coordinates of the pixels within the determinedset of tiles to be processed to
`
`the corresponding one ofthe at least two graphics pipelines.
`
`23. (canceled)
`
`24. (currently amended) A graphics processing circuit, comprising:
`
`front end circuitry on a chip operative to generate pixel data in response to primitive data
`
`for a primitive to be rendered;
`
`first back end circuitry_on the chip, coupled to the front end circuitry, operative to process
`
`a first portion of the pixel data in response to position coordinates;
`
`CHICAGO/#1718760.1
`
`7
`
`Ex. 12, p. 7
`
`Ex. 12, p. 7
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 8 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 8 of 11
`
`a first scan converter_on the chip, coupled between the front end circuitry and the first
`
`back end circuitry, operative to determine whichset of tiles of a repeating tile pattern are to be
`
`processed by the first back end circuitry, the repeating tile pattern including a horizontally and
`
`vertically repeating pattern of square regions, and operative to provide the position coordinates to
`
`the first back end circuitry in responseto the pixel data;
`
`second back end circuitry_on the chip, coupled to the front end circuitry, operative to
`
`process a second portion of the pixel data in response to position coordinates;
`
`a second scan converter_on the chip, coupled between the front end circuitry and the
`
`second back endcircuitry, operative to determine whichset oftiles of the repeating tile pattern
`
`are to be processed by the second back end circuitry, and operative to provide the position
`
`coordinates to the second back end circuitry in responseto the pixel data; and
`
`a memory controller_on the chip, coupled to the first and second back end circuitry
`
`operative to transmit and receive the processed pixel data.
`
`25. (currently amended) A graphics processing circuit, comprising:
`
`at least two graphics pipelines on a chip operative to process data in a corresponding set
`
`of tiles of a repeating tile pattern corresponding to screen locations, a respective one of the at
`
`least two graphics pipelines operative to process data in a dedicated tile, wherein the repeating
`
`tile pattern includes a horizontally and vertically repeating pattern of regions;
`
`wherein the horizontally and vertically repeating pattern of regions include NxM number
`
`of pixels.
`
`26. (canceled)
`
`CHICAGO/#1718760.1
`
`8
`
`Ex. 12, p.8
`
`Ex. 12, p. 8
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 9 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 9 of 11
`
`Applicants respectfully traverse and request reconsideration.
`
`REMARKS
`
`Claims 1-4, 7, 10, 12, 14, 20-22 and 25 stand rejected under 35 U.S.C. § 102(e) as being
`
`anticipated by U.S. Patent No. 6,864,896 (Perego). This is a new ground ofrejection. Perego is
`
`directed to a scalable unified memory architecture and describes a “system...that provides
`
`multiple discrete memory modules coupled to a common memory controller. Each memory
`
`module includes a computing engine and a shared memory. A data processing task from the
`
`memory controller can be partitioned among the different computing engines to allow parallel
`
`processing of the various portions of the processing task.” (Column 7, lines 35-42) (emphasis
`
`added). As such, Perego is directed to a system that employs separate and discrete memory
`
`modules wherein each memory module includes a computing engine and corresponding shared
`
`system memory and graphics memory.
`
`In contrast, the amended independent claims require a multi-graphics pipeline circuit on a
`
`same chip that is operative to process data in a correspondingset of tiles of a repeating tile
`
`pattern corresponding to a screen location.
`
`In addition, a memory controller on the chip is in
`
`communication with the at least two graphics pipelines on the same chip to transfer pixel data
`
`between each of the first pipeline and the second pipeline in the memory.
`
`(See for example,
`
`claim 1).
`
`Perego describes a different system. For example, Perego requires multiple discrete
`
`memory modules each with its own rendering engine and each with its own memory and shared
`
`main memory. Such multiple memory modules require multiple chips and packages taking up
`
`additional space and requiring additional signaling and synchronization operations and can be
`
`more acceptable to electromagnetic interference.
`
`In addition, a separate memory controller is
`
`described as being a part of a different and separate memory controller subsystem/CPU 302 that
`
`CHICAGO/#1718760.1
`
`9
`
`Ex. 12, p.9
`
`Ex. 12, p. 9
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 10 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 10 of 11
`
`is coupled “to four distinct memory modules 304”.
`
`(See column 4, lines 26-36). Perego further
`
`describes that the memory controller/graphics controller is responsible for distributing particular
`
`processing tasks to the different rendering engines on different discrete memory modules.
`
`Perego does not describe multi-graphics pipeline circuitry on a same chip nor a memory
`
`controller on the same chip but instead describes discrete memory modules having separate and
`
`single graphics engines thereon. In addition, the memory controller described in Perego is not on
`
`a same chip noris it part of the memory module as described in Perego. As such, the Perego
`
`reference does not anticipate Applicants’ claimed subject matter. Other differences will be
`
`recognized by those of ordinary skill in the art.
`
`The dependent claims add additional novel and non-obvious subject matter. For example
`
`as to claim 4, the claim requires that each of the two graphics pipelines on a samechip include
`
`front end circuitry that receives vertex data and generates pixel data corresponding to a primitive
`
`to be rendered. The office action cites the CPU 308 as being the front end circuitry in Perego.
`
`However as claimed, the multiple graphics pipelines on the same chip include the front end
`
`circuitry, and not a separate CPU that passes information through a graphics controller as taught
`
`in Perego. Accordingly, Applicants respectfully submit that this claim is also in condition for
`
`allowance. The other dependent claims add additional novel and non-obvious subject matter.
`
`Claims 5, 18, and 24 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over
`
`Perego in view of Kelleher. Claim 24 requires front end circuitry on a chip andfirst and second
`
`backend circuitry on the chip. The first and second backend circuitry processes different
`
`portions of the pixel data in response to position coordinates. A memory controller on the same
`
`chip is also coupled to the first and second backend circuitry.
`
`In this example, commonfront
`
`end circuitry is used on a chip for multiple backend operations. Again, the Perego reference
`
`CHICAGO/#1718760.1
`
`10
`
`Ex. 12, p. 10
`
`Ex. 12, p. 10
`
`
`
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 11 of 11
`Case 6:22-cv-00466-ADA-DTG Document 50-12 Filed 12/19/22 Page 11 of 11
`
`illustrates a completely different structure and does not describe multiple backend circuitry on a
`
`common chip nor common front end circuitry and memory controller on a common chip as
`
`claimed. As such, the claim is also in condition for allowance. Also, these claims add additional
`
`novel and non-obvious subject matter.
`
`Claims 6 and 17 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over
`
`Perego in view of Furtner. Applicants respectfully reassert the relevant remarks made above and
`
`as such, these claimsare also in condition for allowance.
`
`Claims 11, 13, 15 and 16 stand rejected under 35 U.S.C. § 103(a) as being unpatentable
`
`over Perego in view of Kelleher, further in view of Hamburg. Applicants respectfully reassert
`
`the relevant remarks made aboveandas such, these claimsare also in condition for allowance.
`
`Claim 19 stands rejected under 35 U.S.C. § 103(a) as being unpatentable over Perego and
`
`Furtner in view of Kent. Applicants respectfully reassert the relevant remarks made above and
`
`as such, this claim is also in condition for allowance.
`
`Applicants respectfully submit
`
`that
`
`the claims are in condition for allowance and
`
`respectfully request that a timely Notice of Allowance be issued in this case. The Examineris
`
`invited to contact the below listed attorney if the Examiner believes that a telephone conference
`
`will advancethe prosecution ofthis application.
`
`Respectfully submitted,
`
`By: /Christopher J. Reckamp/
`Christopher J. Reckamp
`Registration No. 34,414
`
` Date: November28, 2007
`
`Vedder, Price, Kaufman & Kammholz, P.C.
`222 North LaSalle Street, Suite 2600
`Chicago, Illinois 60601
`phone: (312) 609-7599
`fax: (312) 609-5005
`
`CHICAGO/#1718760.1
`
`11
`
`Ex. 12, p.11
`
`Ex. 12, p. 11
`
`