Patent ID: 7474313

Claim:
An apparatus for improving memory access of pixel data for a raster operations (ROP) stage of a graphics pipeline, comprising: a pixel data coalescing unit operative to receive a stream of pixel data and separate Z data and color data; said pixel data coalescing unit packing Z data into a sequence of coalesced Z data entries with each coalesced Z data entry having an associated Z data tile format having a first data size for storing Z data for a plurality of pixels memory aligned to a first contiguous region of memory, wherein for a rendering mode in which said Z data tile format has a capacity that does not correspond to Z data for a whole number of pixels said pixel data coalescing unit splits Z data across entries to improve packing efficiency; said pixel data coalescing unit packing color data into a sequence of coalesced color data entries with each coalesced color data entry having an associated color data tile format having a second data size for storing color data for a plurality of pixels memory aligned to a second contiguous region of memory wherein for a rendering mode in which said color data tile format has a capacity that does not correspond to color data for a whole number of pixels said pixel data coalescing unit splits color data across entries to improve packing efficiency; and said pixel data coalescing unit generating information to associate said sequence of coalesced Z data entries and coalesced color data entries in subsequent processing operations performed by said ROP and said pixel data coalescing unit generating information for associating any data splits between entries in subsequent processing operations performed by said ROP; wherein said pixel data coalescing unit includes: a reorder module operative to determine an ordering of Z data and color data selected to minimize breaking up pixel data between entries and generate information for associating data splits between successive entries; a tag module associated with said reorder module to identify pixel locations associated with each data entry; a link list module generating information to associate pixel information split between coalesced entries; and a pointer module to generate pointers to associate entries for coalesced Z data with corresponding entries for coalesced color data.