Prosecution Insights
Last updated: September 29, 2026
Application No. 19/031,852

Data Structures, Methods and Tiling Engines for Storing Tiling Information in a Graphics Processing System

Non-Final OA §DP
Filed
Jan 18, 2025
Priority
Feb 10, 2020 — GB 2001794.3 +3 more
Examiner
CRAWFORD, JACINTA M
Art Unit
Tech Center
Assignee
Imagination Technologies Limited
OA Round
1 (Non-Final)
88%
Grant Probability
Favorable
1-2
OA Rounds
9m
Est. Remaining
98%
With Interview

Examiner Intelligence

Grants 88% — above average
88%
Career Allowance Rate
732 granted / 832 resolved
+28.0% vs TC avg
Moderate +10% lift
Without
With
+9.8%
Interview Lift
resolved cases with interview
Typical timeline
2y 5m
Avg Prosecution
27 currently pending
Career history
849
Total Applications
across all art units

Statute-Specific Performance

§101
8.3%
-31.7% vs TC avg
§103
57.9%
+17.9% vs TC avg
§102
4.7%
-35.3% vs TC avg
§112
16.3%
-23.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 832 resolved cases

Office Action

§DP
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Priority Acknowledgment is made of applicant’s claim for foreign priority under 35 U.S.C. 119 (a)-(d). The certified copy has been filed in parent Application No. 17/172,313, filed on February 10, 2021. Information Disclosure Statement The information disclosure statement (IDS) submitted on January 18, 2025 was filed on the filing date of the application on January 18, 2025. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner. Drawings The drawings were received on January 18, 2025. These drawings are accepted. Claim Objections Claim 19 is objected to because of the following informalities: Claim 19 recites, “…the corresponding primitive bock in memory…” but should recite, “…the corresponding primitive block in memory…” Appropriate correction is required. Double Patenting The non-statutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A non-statutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969). A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on non-statutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b). The filing of a terminal disclaimer by itself is not a complete reply to a non-statutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13. The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer. Claims 1-20 are rejected on the ground of non-statutory double patenting as being unpatentable over claims 1-17 and 20 of U.S. Patent No.11,861,782. Although the claims at issue are not identical, they are not patentably distinct from each other as shown in the tables below. Present Application #19/031,852 1 2 3 4 5 6 7 8 9 10 U.S. Patent #11,861,782 1 1 2 3 4 5 6 7 8 9 Present Application #19/031,852 11 12 13 14 15 16 17 18 19 20 U.S. Patent #11,861,782 1 10 11 12 13 14 15 16 17 20 Present Application #19/031,852 Claim 1 U.S. Patent #11,861,782 Claim 1 A control stream decoder for decoding a control stream for a tile group comprising at least two tiles of a rendering space, the control stream decoder comprising: A control stream decoder for decoding a control stream for a tile group comprising at least two tiles of a rendering space, the control stream decoder comprising: a fetch module configured to fetch the control stream for the tile group from memory, the control stream comprising one or more fixed length primitive block entries, each primitive block entry identifying a location in memory of a control data block for a corresponding primitive block; and (Limitation A) a primitive block entry analyser configured to receive a primitive block entry of the control stream for the tile group, a primitive block entry analyser configured to receive at least one of the one or more primitive block entries, the primitive block entry identifying a location in memory of a control data block for a corresponding primitive block, Limitation A above and for the received primitive block entry: and for each received primitive block entry: (a) determine whether a current tile of the tile group is a valid tile for the corresponding primitive block, a tile being a valid tile for a primitive block if at least one primitive in the primitive block intersects that tile, (a) in response to determining that a current tile of the tile group is a valid tile for the corresponding primitive block, retrieve the control data block for the corresponding primitive block from the identified location in memory, (b) in response to determining that the current tile is a valid tile for the corresponding primitive block, retrieve the control data block for the corresponding primitive block from the identified location in memory, (b) identify, from the retrieved control data block, an address of the corresponding primitive block in memory and primitives of that primitive block relevant for rendering the current tile, and (c) identify, from the retrieved control data block, an address of the corresponding primitive block in memory and primitives of that primitive block relevant for rendering the current tile, and (c) output information identifying the address of the corresponding primitive block in memory and the primitives of that primitive block relevant for rendering the current tile. (d) output information identifying the address of the corresponding primitive block in memory and the primitives of that primitive block relevant for rendering the current tile. Claim 1 of the present application differs from claim 1 of the patent application in that claim 1 of the present application is broader in scope than claim 1 of the patent application, thus encompasses that of the patent application. Present Application #19/031,852 Claim 2 U.S. Patent #11,861,782 Claim 1 The control stream decoder of claim 1, wherein A control stream decoder…comprising: a fetch module configured to fetch the control stream for the tile group from memory, the primitive block entry has a fixed length. the control stream comprising one or more fixed length primitive block entries… Present Application #19/031,852 Claim 3 U.S. Patent #11,861,782 Claim 2 The control stream decoder of claim 1, wherein The control stream decoder of claim 1, wherein the primitive block entry comprises valid tile information identifying which tiles of the tile group are valid tiles for the corresponding primitive block. each primitive block entry comprises valid tile information identifying which tiles of the tile group are valid tiles for the corresponding primitive block. Present Application #19/031,852 Claim 4 U.S. Patent #11,861,782 Claim 3 The control stream decoder of claim 3, wherein The control stream decoder of claim 2, wherein the valid tile information comprises a valid tile mask which comprises a bit for each tile in the tile group which indicates whether that tile is a valid tile for the corresponding primitive block. the valid tile information comprises a valid tile mask which comprises a bit for each tile in the tile group which indicates whether that tile is a valid tile for the corresponding primitive block. Present Application #19/031,852 Claim 5 U.S. Patent #11,861,782 Claim 4 The control stream decoder of claim 3, wherein The control stream decoder of claim 2, wherein the primitive block entry analyser is configured to determine whether the current tile of the tile group is a valid tile for the corresponding primitive block from the valid tile information of the primitive block entry. the primitive block entry analyser is configured to determine whether the current tile of the tile group is a valid tile for the corresponding primitive block from the valid tile information of the primitive block entry. Present Application #19/031,852 Claim 6 U.S. Patent #11,861,782 Claim 5 The control stream decoder of claim 3, further comprising: The control stream decoder of claim 2, further comprising: a block skip module configured to, for each of one or more groups of entries of the control stream: a block skip module configured to, for each of one or more groups of entries of the control stream: select a portion of the valid tile information for each entry of the group of entries corresponding to the current tile, and select a portion of the valid tile information for each entry of the group of entries corresponding to the current tile, and perform an operation on the selected portions to determine whether the current tile is a valid tile for any primitive block corresponding to a primitive block entry in the group of entries; perform an operation on the selected portions to determine whether the current tile is a valid tile for any primitive block corresponding to a primitive block entry in the group of entries; wherein the primitive block entry analyser only receives primitive block entries in a group of entries of the one or more groups of entries if a result of the operation for that group of entries indicates that the current tile is a valid tile for at least one primitive block corresponding to a primitive block entry in the group of entries. wherein the primitive block entry analyser only receives primitive block entries in a group of entries of the one or more groups of entries if a result of the operation for that group of entries indicates that the current tile is a valid tile for at least one primitive block corresponding to a primitive block entry in the group of entries. Present Application #19/031,852 Claim 7 U.S. Patent #11,861,782 Claim 6 The control stream decoder of claim 6, wherein: The control stream decoder of claim 5, wherein: the valid tile information for each entry comprises a valid tile mask with a bit for each tile of the tile group; the valid tile information for each entry comprises a valid tile mask with a bit for each tile of the tile group; the selected portion of the valid tile information for each entry is the bit of the valid tile mask that corresponds to the current tile; and the selected portion of the valid tile information for each entry is the bit of the valid tile mask that corresponds to the current tile; and the operation that is performed on the selected portions is an OR operation. the operation that is performed on the selected portions is an OR operation. Present Application #19/031,852 Claim 8 U.S. Patent #11,861,782 Claim 7 The control stream decoder of claim 7, wherein The control stream decoder of claim 5, wherein the control stream comprises one or more other types of entries and each of the one or more other types of entries comprises valid tile information that indicates that none of the tiles of the tile group are valid tiles. the control stream comprises one or more other types of entries and each of the one or more other types of entries comprises valid tile information that indicates that none of the tiles of the tile group are valid tiles. Present Application #19/031,852 Claim 9 U.S. Patent #11,861,782 Claim 8 The control stream decoder of claim 1, wherein The control stream decoder of claim 1, wherein the control stream comprises one or more other types of entries, and the control stream decoder further comprises an entry type analyser configured to: wherein the control stream comprises one or more other types of entries, and the control stream decoder further comprises an entry type analyser configured to: receive one or more entries of the control stream, determine a type of each of the one or more received entries, and in response to determining that a received entry is a primitive block entry, forward the primitive block entry to the primitive block entry analyser. receive one or more entries of the control stream, determine a type of each of the one or more received entries, and in response to determining that a received entry is a primitive block entry, forward the primitive block entry to the primitive block entry analyser. Present Application #19/031,852 Claim 10 U.S. Patent #11,861,782 Claim 9 The control stream decoder of claim 9, wherein The control stream decoder of claim 8, wherein each entry of the control stream comprises one or more entry type bits and the entry type analyser is configured to determine the type of each entry based on the one or more entry type bits of that entry. each entry of the control stream comprises one or more entry type bits and the entry type analyser is configured to determine the type of each entry based on the one or more entry type bits of that entry. Present Application #19/031,852 Claim 11 U.S. Patent #11,861,782 Claim 1 The control stream decoder of claim 8, comprising A control stream decoder…comprising: a fetch module configured to fetch the control stream for the tile group from memory. a fetch module configured to fetch the control stream for the tile group from memory… Present Application #19/031,852 Claim 12 U.S. Patent #11,861,782 Claim 10 The control stream decoder of claim 9, wherein: The control stream decoder of claim 8, wherein: the control stream is stored in memory in a plurality of control stream blocks, and a last entry in each control stream block, other than the last control stream block, is a link entry which identifies a location of a next control stream block in memory; the control stream is stored in memory in a plurality of control stream blocks, and a last entry in each control stream block, other than the last control stream block, is a link entry which identifies a location of a next control stream block in memory; the control stream decoder further comprises a link entry analyser configured to receive one or more link entries and, for each received link entry, extract the location in memory of the next control stream block from that link entry and provide the extracted location to the fetch module; and the control stream decoder further comprises a link entry analyser configured to receive one or more link entries and, for each received link entry, extract the location in memory of the next control stream block from that link entry and provide the extracted location to the fetch module; and the entry type analyser is configured to, in response to determining that a received entry is a link entry, forward the link entry to the link entry analyser. the entry type analyser is configured to, in response to determining that a received entry is a link entry, forward the link entry to the link entry analyser. Present Application #19/031,852 Claim 13 U.S. Patent #11,861,782 Claim 11 The control stream decoder of claim 9, wherein: The control stream decoder of claim 8, wherein: each primitive block entry comprises a data pointer that identifies the location in memory of the control data block for the corresponding primitive block; each primitive block entry comprises a data pointer that identifies the location in memory of the control data block for the corresponding primitive block; the control stream comprises at least one control data base address entry which specifies at least a portion of a control data base address; the control stream comprises at least one control data base address entry which specifies at least a portion of a control data base address; the control stream decoder further comprises a control data base address entry analyser configured to receive one or more control data base address entries and, for each received control data base address entry, extract at least a portion of a control data base address from that control data base address entry, and update a current control data base address based on the extracted at least a portion of the control data base address; the control stream decoder further comprises a control data base address entry analyser configured to receive one or more control data base address entries and, for each received control data base address entry, extract at least a portion of a control data base address from that control data base address entry, and update a current control data base address based on the extracted at least a portion of the control data base address; the primitive block entry analyser is configured to generate an address of a control data block in memory from a combination of the current control data base address and the data pointer of the primitive block entry; and the primitive block entry analyser is configured to generate an address of a control data block in memory from a combination of the current control data base address and the data pointer of the primitive block entry; and the entry type analyser is configured to, in response to determining that a received entry is a control data base address entry, forward the control data base address entry to the control data base address entry analyser. the entry type analyser is configured to, in response to determining that a received entry is a control data base address entry, forward the control data base address entry to the control data base address entry analyser. Present Application #19/031,852 Claim 14 U.S. Patent #11,861,782 Claim 12 The control stream decoder of claim 13, wherein The control stream decoder of claim 11, wherein each data pointer comprises an offset into a portion of the memory identified by the current control data base address. each data pointer comprises an offset into a portion of the memory identified by the current control data base address. Present Application #19/031,852 Claim 15 U.S. Patent #11,861,782 Claim 13 The control stream decoder of claim 13, wherein The control stream decoder of claim 11, wherein each control data base address entry specifies a complete control data base address. each control data base address entry specifies a complete control data base address. Present Application #19/031,852 Claim 16 U.S. Patent #11,861,782 Claim 14 The control stream decoder of claim 13, wherein The control stream decoder of claim 11, wherein each control data base address entry specifies only a portion of a complete control data base address. each control data base address entry specifies only a portion of a complete control data base address. Present Application #19/031,852 Claim 17 U.S. Patent #11,861,782 Claim 15 The control stream decoder of claim 9, wherein: The control stream decoder of claim 8, wherein: the control stream further comprises a termination entry which identifies an end of the control stream, the termination entry being a last entry in the control stream, and the control stream further comprises a termination entry which identifies an end of the control stream, the termination entry being a last entry in the control stream, and the entry type analyser is configured to, in response to determining that a received entry is a termination entry, determine an end of the control stream has been reached. the entry type analyser is configured to, in response to determining that a received entry is a termination entry, determine an end of the control stream has been reached. Present Application #19/031,852 Claim 18 U.S. Patent #11,861,782 Claim 16 The control stream decoder of claim 1, wherein The control stream decoder of claim 1, wherein the control data block comprises information identifying which primitives of the corresponding primitive block intersect each tile of the tile group and the primitive block entry analyser is configured to identify, from the information identifying which primitives in the corresponding primitive block intersect each tile of the tile group, the primitives of that primitive block relevant for rendering the current tile. each control data block comprises information identifying which primitives of the corresponding primitive block intersect each tile of the tile group and the primitive block entry analyser is configured to identify, from the information identifying which primitives in the corresponding primitive block intersect each tile of the tile group, the primitives of that primitive block relevant for rendering the current tile. Present Application #19/031,852 Claim 19 U.S. Patent #11,861,782 Claim 17 The control stream decoder of claim 1, wherein The control stream decoder of claim 1, wherein the control data block comprises information identifying an address of the corresponding primitive block in memory and the primitive block entry analyser is configured to identify, from the information identifying an address of the corresponding primitive bock in memory, an address of the primitive block in memory. each control data block comprises information identifying an address of the corresponding primitive block in memory and the primitive block entry analyser is configured to identify, from the information identifying an address of the corresponding primitive bock in memory, an address of the primitive block in memory. Present Application #19/031,852 Claim 20 U.S. Patent #11,861,782 Claim 20 A non-transitory computer readable storage medium having stored thereon a computer readable dataset description of the control stream decoder as set forth in claim 1, which when processed in an integrated circuit manufacturing system, causes the integrated circuit manufacturing system to manufacture an integrated circuit embodying the control stream decoder. A non-transitory computer readable storage medium having stored thereon a computer readable dataset description of the control stream decoder as set forth in claim 1, which when processed in an integrated circuit manufacturing system, causes the integrated circuit manufacturing system to manufacture an integrated circuit embodying the control stream decoder. Allowable Subject Matter Claims 1-20 would be allowable if the Double Patenting rejection set forth above may be overcome. The following is a statement of reasons for the indication of allowable subject matter: The present invention relates to a system and method of decoding a control stream for a tile group of a rendering space. Closest prior art includes: Yang (US 2011/0304608)(cited in the Information Disclosure Statement (IDS) filed January 18, 2025), which discloses a three-dimensional (3D) computer system and method of subdividing an image into a plurality of rectangular areas and primitives which may be visible in the image are assigned to respective ones of a plurality of primitive blocks, determining which primitive blocks contain primitives which intersect each rectangular area, grouping the rectangular areas into a plurality of fixed size groups, deriving control stream data for each of the fixed size groups, where this control stream data includes data which determines which primitive blocks are required to render the rectangular areas in each respective fixed size group, and then using the control stream data to render the image for display; and Yang et al. (US 2017/0316604)(also cited in the IDS filed) disclose a method of generating a control stream for a tile, the method including determining whether a primitive falls within a tile based on positions of samples within each pixel, and if it is determined that the primitive does fall within a tile based on the positions of samples within pixels in a tile, an association between the tile and the primitive is stored to indicate that the primitive is present in the tile, e.g. an identifier for the primitive may be added to a control stream for the tile to indicate that the primitive is present in the tile. Although the prior art of record discloses similar features of the claimed invention as noted above, the prior art cited fails to teach or suggest, singly or combined, the limitations of independent claims 1 and 20 as recited as a whole. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to JACINTA M CRAWFORD whose telephone number is (571)270-1539. The examiner can normally be reached 8:30a.m. to 4:30p.m. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, King Y. Poon can be reached at (571)272-7440. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /JACINTA M CRAWFORD/Primary Examiner, Art Unit 2617
Read full office action

Prosecution Timeline

Jan 18, 2025
Application Filed
Sep 10, 2026
Non-Final Rejection mailed — §DP (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12730680
MANAGING RESOURCE UTILIZATION TO IMPROVE USER EXPERIENCES WITHIN A VIRTUAL EXPERIENCE
2y 6m to grant Granted Sep 08, 2026
Patent 12724274
METHOD AND SYSTEM FOR COMPENSATING FOR GHOSTING ARTIFACTS IN DISPLAY APPARATUS
2y 2m to grant Granted Sep 01, 2026
Patent 12718312
GRAPHICS PROCESSING
2y 5m to grant Granted Aug 25, 2026
Patent 12718432
DRAWING METHOD AND ELECTRONIC DEVICE
2y 2m to grant Granted Aug 25, 2026
Patent 12705683
METHODS AND SYSTEMS FOR PERFORMING A SPARSE SUBMANIFOLD DECONVOLUTION ON A GPU
2y 5m to grant Granted Aug 11, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
88%
Grant Probability
98%
With Interview (+9.8%)
2y 5m (~9m remaining)
Median Time to Grant
Low
PTA Risk
Based on 832 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month