IP Library Granted Patent US 12,664,721
Granted Patent B2
US 12,664,721 · App. 17/851,611 · Granted Jun 23, 2026

Binning pass with hierarchical depth data determination

Inventors: Kiia K. Kallio (Inkoo, FI); Miikka Kangasluoma (Noormakuu, FI); Jan Achrenius (Noormakuu, FI)
Assignee: Advanced Micro Devices, Inc.
G06T15/405G06T15/30G06T2210/12
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,664,721
App. No.
17/851,611
Filed
Jun 28, 2022
Granted
Jun 23, 2026
Kind
B2
Examiner
VU, KHOA
Art Unit
2611
USPC
345/422
Abstract

Currently with performing a visibility pass for two or more coarse bins of an image, a processing system determines a bounding box for a primitive to be rendered for the image based on a bottom left-most point of the primitive and a top right-most point of the primitive. The processing system then determines whether each tile of the image inside the boundary box is completely covered by the primitive. In response to the primitive not completely covering a tile, the depth data for the primitive in that tile is discarded. In response to the primitive completely covering a tile, the depth data for the primitive in that tile is passed on to a depth buffer. Based on the depth data passed to the depth buffer, the processing system then performs pixel-based rendering of the primitive.

Claims (48)

1 . A method comprising:

for each primitive of a plurality of primitives of an image to be rendered:

in response to a predetermined threshold percentage of a first tile of the image being covered by the primitive, passing depth data of the primitive in the first tile to a depth buffer; and

in response to the predetermined threshold percentage of the first tile not being covered by the primitive, rejecting the depth data of the primitive in the first tile such that the depth data of the primitive in the first tile is not passed to the depth buffer; and

rendering the primitive based on the depth data in the depth buffer.

2 . The method of claim 1 , further comprising, for each primitive of the plurality of primitives:

generating a bounding box for the primitive; and

cutting each tile of the image not within the bounding box, wherein the first tile is within the bounding box.

3 . The method of claim 2 , further comprising, for each primitive of the plurality of primitives:

rounding the bounding box.

4 . The method of claim 2 , further comprising, for each primitive of the plurality of primitives:

in response to the bounding box being invalid, culling the primitive.

5 . The method of claim 1 , further comprising, for one or more primitives of the plurality of primitives:

in response to passing depth data of the primitive in the first tile to the depth buffer, determining whether a predetermined threshold percentage of a second tile of the image is covered by the primitive.

6 . The method of claim 1 , further comprising:

performing a visibility pass for one or more coarse bins of the image concurrently with determining, for one or more primitives of the plurality of primitives, whether the predetermined threshold percentage of the first tile of the image is covered by the primitive.

7 . A method comprising:

for each primitive of a plurality of primitives of an image to be rendered, generating a bounding box for the primitive;

for each tile of a plurality of tiles of the image within the bounding box:

in response to determining a predetermined threshold percentage of the tile being covered by the primitive, passing depth data of the primitive in the tile to a depth buffer used to render the primitive; and

in response to the predetermined threshold percentage of the tile not being covered by the primitive, rejecting the depth data of the primitive in the tile such that the depth data is not passed to the depth buffer.

8 . The method of claim 7 , further comprising, for each primitive of the plurality of primitives:

rounding the bounding box; and

cutting each tile of the image not within the bounding box.

9 . The method of claim 7 , further comprising, for each primitive of the plurality of primitives:

in response to the bounding box being invalid, culling the primitive.

10 . The method of claim 7 , further comprising:

performing a visibility pass for the image concurrently with determining whether a predetermined threshold percentage of one or more tiles of the image are covered by one or more primitives of the plurality of primitives.

11 . The method of claim 10 , further comprising:

generating visibility data for a bin based on the visibility pass; and

rendering the plurality of primitives based on the visibility data and the depth data stored in the depth buffer.

12 . An accelerated processing unit, comprising:

a plurality of processor cores including circuitry configured to:

for each primitive of a plurality of primitives of an image to be rendered:

in response to a predetermined threshold percentage of a tile of the image being covered by the primitive, pass depth data of the primitive in the tile to a depth buffer; and

in response to the predetermined threshold percentage of the tile not being covered by the primitive, reject the depth data of the primitive in the tile such that the depth data of the primitives in the tile is not passed to the depth buffer; and

render the primitive based on the depth data in the depth buffer.

13 . The accelerated processing unit of claim 12 , wherein the plurality of processor cores includes circuitry configured to, for each primitive of the plurality of primitives:

generate a bounding box for the primitive; and

trim each tile of the image not within the bounding box, wherein the tile is within the bounding box.

14 . The accelerated processing unit of claim 13 , wherein the plurality of processor cores includes circuitry configured to, for each primitive of the plurality of primitives:

round the bounding box.

15 . The accelerated processing unit of claim 14 , wherein the plurality of processor cores includes circuitry configured to, for each primitive of the plurality of primitives:

in response to the bounding box being invalid, cull the primitive.

16 . The accelerated processing unit of claim 12 , wherein the plurality of processor cores includes circuitry configured to, for one or more primitives of the plurality of primitives:

in response to passing depth data of the primitive in the tile to the depth buffer, determine whether a predetermined threshold percentage of a second tile of the image is covered by the primitive of the image.

17 . The accelerated processing unit of claim 12 , wherein the plurality of processor cores includes circuitry configured to:

perform a visibility pass for one or more bins of the image concurrently with determining whether the predetermined threshold percentage of the tile of the image is covered by one or more primitives of plurality of primitives.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 15, 2022
From: KALLIO, KIIA K; ACHRENIUS, JAN; KANGASLUOMA, MIIKKA
To: ADVANCED MICRO DEVICES, INC.
Reel/Frame 060524/0708 →
Continuity (1)
Related Publication 20230419597A1 · Dec 28, 2023
References Cited (46)
US 6362818B1 · Gardiner et al. · 2002 [cited by applicant]
US 9684995B2 · Yang · 2017 [cited by applicant]
US 9865085B1 · Eng et al. · 2018 [cited by applicant]
US 9934548B2 · Smith · 2018 [cited by applicant]
US 10497085B2 · Lee et al. · 2019 [cited by applicant]
US 10839595B2 · Ranganathan et al. · 2020 [cited by applicant]
US 11361400B1 · Kholl et al. · 2022 [cited by applicant]
US 11532115B2 · Yang et al. · 2022 [cited by applicant]
US 11610358B2 · Jesus et al. · 2023 [cited by applicant]
US 11861782B2 · Yang et al. · 2024 [cited by applicant]
US 11922555B2 · Jesus et al. · 2024 [cited by applicant]
US 11928776B2 · Howson · 2024 [cited by applicant]
US 11988523B2 · Bhowmick et al. · 2024 [cited by applicant]
US 20070139440A1 · Crow et al. · 2007 [cited by applicant]
US 20110221743A1 · Keall et al. · 2011 [cited by applicant]
US 20140043342A1 · Goel et al. · 2014 [cited by applicant]
US 20140267375A1 · Kilgard et al. · 2014 [cited by applicant]
US 20150363968A1 · Yang et al. · 2015 [cited by applicant]
US 20150363969A1 · Yang · 2015 [cited by applicant]
US 20160098856A1 · Broadhurst et al. · 2016 [cited by applicant]
US 20160364901A1 · Balci · 2016 [cited by examiner]
US 20170024927A1 · Isomaki et al. · 2017 [cited by applicant]
US 20170270146A1 · Harrison et al. · 2017 [cited by applicant]
US 20180089890A1 · Shreiner · 2018 [cited by applicant]
US 20180307490A1 · Hakura · 2018 [cited by examiner]
US 20180365885A1 · Yang · 2018 [cited by applicant]
US 20200184715A1 · Goswami et al. · 2020 [cited by applicant]
US 20200250882A1 · Yang et al. · 2020 [cited by applicant]
US 20200380745A1 · Bhiravabhatla et al. · 2020 [cited by applicant]
US 20210174575A1 · Mandal et al. · 2021 [cited by applicant]
US 20210225060A1 · Tuomi et al. · 2021 [cited by applicant]
US 20220036629A1 · Tuomi et al. · 2022 [cited by applicant]
US 20220092801A1 · Achrenius et al. · 2022 [cited by applicant]
US 20220101479A1 · Alla · 2022 [cited by examiner]
US 20220198745A1 · Yang · 2022 [cited by examiner]
US 20220392138A1 · Kokins · 2022 [cited by examiner]
US 20230298249A1 · Shao et al. · 2023 [cited by applicant]
US 20240005601A1 · Kallio et al. · 2024 [cited by applicant]
US 20240112397A1 · Brennan et al. · 2024 [cited by applicant]
GB 2591802 · 2021 [cited by applicant]
JP 7100427 · 2022 [cited by applicant]
U.S. Appl. No. 17/565,394, filed Dec. 29, 2021, Entitled “Synchronization Free Cross Pass Binning Through Subpass Interleaving”, 35 pages. [cited by applicant]
U.S. Appl. No. 17/853,136, filed Jun. 29, 2022, Entitled “Hierarchical Depth Data Generation Using Primitive Fusion” 61 pages. [cited by applicant]
U.S. Appl. No. 17/855,268, filed Jun. 30, 2022, Entitled “Pipeline Delay Reduction for Coarse Visibility Compression” 40 pages. [cited by applicant]
Office Action issued in U.S. Appl. No. 17/853,136, mailed Apr. 5, 2024, 18 pages. [cited by applicant]
Office Action issued in U.S. Appl. No. 17/853,136, mailed Oct. 11, 2024, 22 pages. [cited by applicant]