Claims
- 1. A system comprising:
a memory comprising triangle data; a setup processor coupled to the memory, the setup processor to access the triangle data in the memory to determine:
a vertical value by which a parameter value will be adjusted when stepping down a vertical axis of a raster display by one pixel; a horizontal value by which the parameter value will be adjusted when stepping across a horizontal axis of the raster display by one pixel; step-down values each corresponding to a unique edge of the triangle, each step-down value comprising a value by which the horizontal value will change when stepping down the corresponding edge; an edge interpolator coupled to the setup processor to determine the bounds of a triangle by stepping down the edges of the triangle using the appropriate step-down value; a left first-in-first-out (FIFO) unit coupled to the edge interpolator to store leftmost values of the triangle determined by the edge interpolator; a right FIFO unit coupled to the edge interpolator to store rightmost values of the triangle determined by the edge interpolator; a tile generator coupled to the left FIFO unit and to the right FIFO unit to determine the leftmost tile from the leftmost values and the rightmost tile from the rightmost values, the leftmost values and the rightmost values being determined for each scan line region; and a raster display comprising a grid of a plurality of tiles, each tile comprising a plurality of pixels; and a sample generator coupled to the raster display and to the tile generator to:
determine valid tiles based on the top-vertex of the triangle data, based on the bottom-vertex of the triangle, and based on the leftmost values and rightmost values; determine valid pixels within each valid tile; and calculate parameter values for one or more pixels using at least one of the values comprising a factor of the horizontal value and a factor of the vertical value determined by the setup processor.
- 2. A system as in claim 17, wherein the sample generator calculates parameter values for one or more pixels that are valid within each tile.
- 3. A system as in claim 18, wherein the tile generator determines the leftmost values and the rightmost values within a scan line region comprising four scan lines.
- 4. A system as in claim 18, wherein the sample generator determines the value of all pixels in a tile, and then determines which of the pixels within the tile are valid.
- 5. A system comprising:
a memory comprising primitive data; a setup processor coupled to the memory, the setup processor to access the primitive data in the memory to determine a step-down value for each edge of the primitive, the step-down value comprising a value by which the horizontal coordinate will change when stepping down the corresponding edge; an edge interpolator coupled to the setup processor to calculate, for each scan line region, a leftmost horizontal coordinate and a rightmost horizontal coordinate based on the step down value for the appropriate primitive edge; a left FIFO (first-in-first-out) unit coupled to the edge interpolator to store the leftmost horizontal coordinates for each scan line; a right FIFO unit coupled to the edge interpolator to store rightmost horizontal coordinates for each scan line; and a tile generator to access the left edge FIFO unit and the right edge FIFO unit to determine for each scan line region comprising at least one scan line:
the leftmost tile based on the leftmost horizontal coordinates corresponding to a given scan line region; and the rightmost tile based on the rightmost horizontal coordinates corresponding to a given scan line region.
- 6. A system as in claim 29, wherein each scan line region comprises four scan lines on a raster display.
Parent Case Info
[0001] This application is a continuation application based on and claims priority from U.S. patent application Ser. No. 09/675,353, filed Sep. 29, 2000 and entitled “Tile-Based Digital Differential Analyzer Rasterization” which is a continuation-in-part (CIP) based on and claims priority from U.S. patent application Ser. No. 09/608,414, filed Jun. 30, 2000.
Continuations (1)
|
Number |
Date |
Country |
Parent |
09675353 |
Sep 2000 |
US |
Child |
10359901 |
Feb 2003 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09608414 |
Jun 2000 |
US |
Child |
09675353 |
Sep 2000 |
US |