BLOCK LINEAR MEMORY ORDERING OF TEXTURE DATA
First Claim
1. A computer-readable medium storing a plurality of instructions which when executed cause a computing device to implement a method comprising:
- computing a coordinate in gobs of a texel as a function of a texel coordinate and a gob dimension in texels, wherein a dimension of each gob is a fixed number of bytes, and a plurality of gobs are a fixed size of a page of said memory space;
computing a coordinate in blocks of said texel as a function of said coordinate in gobs of said texel and a block dimension in gobs, wherein a dimension of each block is a variable number of said gobs but constant for a given mipmap level;
sequencing a plurality of blocks as a function of said coordinate in gobs of said texel, an image dimension in gobs, said coordinate in blocks of said texel and said block dimension in gobs, wherein each block is arranged in a given order of gobs;
sequencing a plurality of gobs in each of said plurality of blocks as a function of said coordinate in gobs and said block dimension in gobs, wherein each gob is arranged in a given order of bytes; and
computing a gob offset value as a function of said sequencing said plurality of block, said block dimension in gobs and said sequencing said plurality of gobs.
0 Assignments
0 Petitions
Accused Products
Abstract
A method of organizing memory for storage of texture data, in accordance with one embodiment of the invention, includes accessing a size of a mipmap level of a texture map. A block dimension may be determined based on the size the mipmap level. A memory space (e.g., computer-readable medium) may be logically divided into a plurality of whole number of blocks of variable dimension. The dimension of the blocks is measured in units of gobs and each gob is of a fixed dimension of bytes. A mipmap level of a texture map may be stored in the memory space. A texel coordinate of said mipmap level may be converted into a byte address of the memory space by determining a gob address of a gob in which the texel coordinate resides and determining a byte address within the particular gob.
63 Citations
20 Claims
-
1. A computer-readable medium storing a plurality of instructions which when executed cause a computing device to implement a method comprising:
-
computing a coordinate in gobs of a texel as a function of a texel coordinate and a gob dimension in texels, wherein a dimension of each gob is a fixed number of bytes, and a plurality of gobs are a fixed size of a page of said memory space; computing a coordinate in blocks of said texel as a function of said coordinate in gobs of said texel and a block dimension in gobs, wherein a dimension of each block is a variable number of said gobs but constant for a given mipmap level; sequencing a plurality of blocks as a function of said coordinate in gobs of said texel, an image dimension in gobs, said coordinate in blocks of said texel and said block dimension in gobs, wherein each block is arranged in a given order of gobs; sequencing a plurality of gobs in each of said plurality of blocks as a function of said coordinate in gobs and said block dimension in gobs, wherein each gob is arranged in a given order of bytes; and computing a gob offset value as a function of said sequencing said plurality of block, said block dimension in gobs and said sequencing said plurality of gobs. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer-readable medium containing instructions which when executed cause a computing device to implement method of block linear memory ordering comprising:
-
computing a block width in gobs as a function of a width of a given miplevel, a gob width in texels and a block width of said base miplevel; computing a block height in gobs as a function of a height of said given miplevel, a gob height in texels and a block height of said base miplevel; and computing a block depth in gobs as a function of a depth of said given miplevel and a block depth of said base miplevel, wherein said block dimension is measured in units of gobs arranged in a given order in each block and wherein each gob is of a fixed dimension of bytes and provides a level of organization of said memory space for storing texels in addition to said blocks. - View Dependent Claims (13, 14)
-
-
15. A computing device comprising:
-
a processor, for determining a color and a depth value for each pixel of a display; a computer-readable medium, communicatively coupled to said processor, for storing texture data utilized for said determining said color for each pixel; a memory controller, communicatively coupled to said processor and said computer-readable medium, for mapping a virtual address of a texture to a physical address in said computer-readable medium by computing a block dimension in gobs as a function of a dimension of said given mipmap level, a gob dimension in texels and a base block dimension in gobs of a base mipmap level, wherein said block dimension is measured in units of gobs arranged in a given order in each block and wherein each gob is of a fixed dimension of bytes and provides a level of organization of said memory space for storing texels in addition to said blocks. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification