System, method, and computer program product for implementing anti-aliasing operations using a programmable sample pattern table

US9437040B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9437040-B2
Application numberUS-201314082038-A
CountryUS
Kind codeB2
Filing dateNov 15, 2013
Priority dateNov 15, 2013
Publication dateSep 6, 2016
Grant dateSep 6, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system, method, and computer program product are provided for implementing anti-aliasing operations using a programmable sample pattern table. The method includes the steps of receiving an instruction that causes one or more values to be stored in one or more corresponding entries of the programmable sample pattern table and performing an anti-aliasing operation based on at least one value stored in the programmable sample pattern table. At least one value is selected from the programmable sample pattern table based on, at least in part, a location of one or more corresponding pixels.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving, by a parallel processing unit (PPU) that includes a hardware unit, an instruction that causes one or more values to be stored in one or more corresponding entries of a programmable sample pattern table; and performing, by the hardware unit, an anti-aliasing operation based on at least one value stored in the programmable sample pattern table, wherein the at least one value is selected from the programmable sample pattern table based on, at least in part, a location of one or more corresponding pixels. 2. The method of claim 1 , wherein each value in the programmable sample pattern table represents a relative sample location within a pixel. 3. The method of claim 2 , wherein each value comprises two 4-bit integers. 4. The method of claim 2 , wherein a first portion of the value represents a horizontal offset from a corner of the pixel and a second portion of the value represents a vertical offset from the corner of the pixel. 5. The method of claim 1 , wherein each value comprises two single-precision, floating-point numbers. 6. The method of claim 1 , further comprising: receiving, by the PPU, a second instruction that causes the one or more values to be stored in a second programmable sample pattern table; and performing by the hardware unit, a second anti-aliasing operation based on at least one new value stored in the second programmable sample pattern table. 7. The method of claim 6 , wherein the programmable sample pattern table is included in a first hardware unit of the PPU and the second programmable sample pattern table is included in a second hardware unit of the PPU. 8. The method of claim 7 , wherein the first hardware unit implements at least a portion of a first stage of a graphics processing pipeline and the second hardware unit implements at least a portion of a second stage of the graphics processing pipeline. 9. The method of claim 7 , further comprising transmitting the instruction to the second hardware unit, wherein the second instruction causes the second hardware unit to store the one or more values in the second programmable sample pattern table. 10. The method of claim 1 , wherein the anti-aliasing operation comprises computing a z-value for a geometric primitive at a sample location specified by the at least one value. 11. The method of claim 1 , wherein the anti-aliasing operation comprises generating a color value by sampling a texture map based on at least one texture coordinate interpolated at a sample location specified by the at least one value. 12. The method of claim 1 , wherein the anti-aliasing operation comprises determining whether a sample location intersects at least one of a triangle, a line, and a point. 13. The method of claim 1 , wherein the anti-aliasing operation comprises culling a graphics primitive when the graphics primitive does not intersect at least one sample location specified by the at least one value stored in the programmable sample pattern table. 14. The method of claim 1 , wherein the one or more values are stored in one or more corresponding entries of the programmable sample pattern table based on an offset of a window relative to an origin of a surface. 15. The method of claim 1 , wherein the instruction includes a pointer to a copy of the one or more values in a memory. 16. A non-transitory computer-readable storage medium storing instructions that, when executed by a parallel processing unit (PPU) that includes a hardware unit, causes the hardware unit to perform steps comprising: storing one or more values in one or more corresponding entries of a programmable sample pattern table; and performing an anti-aliasing operation based on at least one value stored in the programmable sample pattern table, wherein the at least one value is selected from the programmable sample pattern table based on, at least in part, a location of one or more corresponding pixels. 17. A system comprising: a parallel processing unit (PPU) that includes a hardware unit configured to: store one or more values in one or more corresponding entries of a programmable sample pattern table, and perform an anti-aliasing operation based on at least one value stored in the programmable sample pattern table, wherein the at least one value is selected from the programmable sample pattern table based on, at least in part, a location of one or more corresponding pixels. 18. The system of claim 17 , wherein the PPU further includes a second hardware unit configured to: store the one or more values in one or more corresponding entries of a second programmable sample pattern table, and perform a second anti-aliasing operation based on at least one value stored in the second programmable sample pattern table. 19. The system of claim 17 , further comprising: a host processor coupled to the PPU via a bus, wherein the host processor is configured to generate instructions that cause the hardware unit to store the one or more values in the programmable sample pattern table; and a memory storing a copy of the one or more values.

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9437040B2 cover?
A system, method, and computer program product are provided for implementing anti-aliasing operations using a programmable sample pattern table. The method includes the steps of receiving an instruction that causes one or more values to be stored in one or more corresponding entries of the programmable sample pattern table and performing an anti-aliasing operation based on at least one value st…
Who is the assignee on this patent?
Nvidia Corp
What technology area does this patent fall under?
Primary CPC classification G06T15/503. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 06 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).