1. A method comprising:
providing shared filter functionality between a first engine and a second engine in a graphics system to process video data;
receiving video data from one of the first engine and the second engine;
configuring a plurality of linear blend units to perform either linear blending of the video data received from the first engine or to perform bilinear filtering of the video data received from the second engine; and
arbitrating the use of the plurality of linear blend units for performing either linear blending of the video data received from the first engine or performing bilinear filtering of the video data received from the second engine based on an overlay valid data signal.
2. The method of claim 1, wherein arbitrating the use of the plurality of linear blend units includes assigning as a highest priority performing the linear blending of the video data received from the first engine.
3. The method of claim 1, further including:
asserting the overlay valid data signal; and
providing ownership of the plurality of linear blend units to the first engine.
4. The method of claim 3, further including freezing any current operations involving the bilinear filtering of video data received from the second engine until the first engine has completed use of the plurality of linear blend units.
5. The method of claim 1, further including determining the configuration of the plurality of linear blend units using control bits.
6. The method of claim 1, wherein configuring the plurality of linear blend units to perform linear blending includes the plurality of linear blend units serving as an overlay interpolator filter to perform linear blending of the data input from the first engine during a linear blend mode.
7. The method of claim 1, wherein configuring the plurality of linear blend units to perform bilinear filtering includes the plurality of linear blend units serving as a texture bilinear filter to perform bilinear filtering of the data input from the second engine during a bilinear filtering mode.
8. The method of claim 1, wherein configuring the plurality of linear blend units to perform linear blending on a plurality of pixels includes using the equation A+alpha(B\u2212A), where A represents 2-dimensional pixel data from the first engine indicating overlay surface A, B represents 2-dimensional data from the first engine indicating overlay surface B, and alpha represents a blending coefficient.
9. The method of claim 1, wherein configuring the plurality of linear blend units to perform bilinear blending on a plurality of texels includes using the equation: C=C1(1\u2212.u)(1\u2212.v)+C2(.u(1\u2212.v))+C3(.u*.v)+C4(1\u2212.u)*.v, where C1, C2, C3 and C4 represent 3-dimensional texel data from the second engine indicating four adjacent texels of locations U-V, U+1-V, U-V+1 and U+1-V+1, and where values .u and .v indicate fractional locations within the C1, C2, C3, C4 texels.
10. The method of claim 1, further including determining filter color values to approximate perspective shading of a triangular surface of an image in different resolution formats.
11. A method comprising:
providing shared filter functionality between a first engine and second engine in a graphics system to process video data;
receiving video data from one of the first engine and the second engine;
configuring a shared filter module including a plurality of linear blend units to perform either linear blending of the video data received from the first engine or to perform bilinear filtering of the video data received from the second engine;
receiving YUV data from the shared filter module and converting the YUV data into RGB data where YUV represents color-difference video data containing one luminance component (Y) and two chrominance components (U, V), and RGB represents composite video data containing red (R), green (G) and blue (B) components of an image;
combining pixels from different levels-of-detail (LOD) levels to produce an average of selected multiple LOD levels at an anisotropic filter;
reading dither weights from a table and summing the dither weights with the current pixel data received from the anisotropic filter;
sorting pixels for the proper output format at re-ordering FIFO; and
averaging successive pixels, summing an error term with the averaged result, and sending data for final color calculations before rendering for said visual display at motion compensation unit.
12. The method of claim 11, wherein configuring the shared filter module includes re-configuring the plurality of linear blend units as an overlay interpolator filter for linear blending of a 2D data input from the first engine.
13. The method of claim 11, wherein configuring the shared filter module includes re-configuring the plurality of linear blend units as a bilinear texture filter for bilinear filtering of a 3D data input from the second engine.
14. The method of claim 11, wherein combining pixels from different levels-of detail (LOD) levels includes summing four pixels from different LOD levels and then averaging the four pixels to produce the average of selected multiple LOD levels.
15. The method of claim 11, wherein sending data for final color calculations before rendering includes blending a shading with at least one texture map to process the textels before rendering on a display monitor.
16. The method of claim 11, wherein configuring the shared filter module includes configuring the plurality of linear blending units to include four dual linear blend units providing support of at least two data formats, and a single linear blend unit providing support of only one data format.
17. The method of claim 11, wherein configuring the shared filter module includes configuring the plurality of linear blending units as either two split linear blend units or three split linear blend units and including associated circuitry to support both data formats under control of a filter select signal.
18. The method of claim 11, wherein the linear blending is accomplished on pixels using the equation A+alpha(B\u2212A), where A represents 2-dimensional pixel data from the first engine indicating overlay surface A, B represents 2-dimensional data from the first engine indicating overlay surface B, and alpha represents a blending coefficient.
19. The method of claim 11, wherein the bilinear filtering is accomplished on texels using the equation: C=C1(1\u2212.u)(1\u2212.v)+C2(.u(1\u2212.v))+C3(.u*.v)+C4(1\u2212.u)*.v, where C1, C2, C3 and C4 represent 3-dimensional texel data from the second engine indicating four adjacent texels of locations U-V, U+1-V, U-V+1 and U+1-V+1, and where values u and v indicate fractional locations within the C1, C2, C3, C4 texels.
20. An apparatus comprising:
a host chipset coupled to a processor, the host chipset including a graphics and memory controller hub including a memory controller and a graphics controller, the graphics controller comprising:
an overlay engine to provide video data in two-dimension (2D);
a mapping engine cache to provide video data in three-dimension (3D); and
a configurable filter to provide shared filter resources and to perform linear blending of video data in 2D from the overlay engine, or bilinear filtering of video data in 3D from the mapping engine cache.
21. The apparatus of claim 20, wherein the host chipset further includes an inputoutput controller hub coupled to the graphics and memory controller hub to interface at least one inputoutput device to the graphics and memory controller hub.
22. The apparatus of claim 21, wherein the host chipset further includes a firmware hub connected to the inputoutput controller hub to provide firmware for additional system control.
23. The apparatus of claim 20, wherein the configurable filter includes a plurality of linear blend units each to receive data input from one of the overlay engine and the mapping engine cache, and to generate a linear blend filter output respectively; and
a filter output multiplexer to receive data output from the linear blend units and select a proper byte ordering output.
24. The apparatus of claim 23, wherein the linear blend units are configured as one of eight 8-bit linear interpolators, three 8-bit bi-linear interpolators and four 565 bi-linear interpolators to perform either said linear blending or said bilinear filtering of data input from respective overlay engine and mapping engine cache.
25. The apparatus of claim 23, wherein the linear blend units are configured as a combination of thrice-split linear blend units, a twice-split linear blend unit and a single linear blend unit for bilinear filtering data input from the mapping engine cache to approximate perspective correct shading value of a 3-dimensional triangular surface for different resolution formats.
26. The apparatus of claim 23, wherein the linear blend units are configured as four thrice-split linear blend units arranged in parallel for linear blending data input from the overlay engine to approximate perspective correct shading value of a 3-dimensional triangular surface for different resolution formats.
27. A system comprising:
a host chipset coupled to a processor, the host chipset including a graphics and memory controller hub including a memory controller and a graphics controller; and
a display coupled to the host chip set,
wherein the graphics controller comprising:
an overlay engine to provide video data in two-dimension (2D);
a mapping engine cache to provide video data in three-dimension (3D);
a configurable filter to provide shared filter resources and to perform linear blending of video data in 2D from the overlay engine, or bilinear filtering of video data in 3D from the mapping engine cache.
28. The system of claim 27, further including a system memory and a local display memory coupled to the memory controller.
29. The system of claim 27, wherein the host chipset further includes an inputoutput controller hub coupled to the graphics and memory controller hub to interface at least one inputoutput device to the graphics and memory controller hub.
30. The system of claim 27, wherein the host chipset further includes a firmware hub connected to the inputoutput controller hub to provide firmware for additional system control.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method for coacting a media with a treatment fluid, comprising the steps of:
orienting a media container holding the media, in an upright position, said media container structured to have an upper portion and a lower portion between which said media can move during a treatment cycle in which the media coacts with the treatment fluid, and a backwash cycle in which the media is regenerated;
moving the media to the upper portion of the media container during a setting cycle;
passing the treatment fluid radially through the media while in the upper portion of the media container during the treatment cycle;
fluidizing the media by moving the media to the lower portion of the media container; and
coacting the media with a regeneration fluid in the lower portion of the media container to thereby regenerate the media.
2. The method of claim 1, further including moving the media to the upper portion of the media container with a setting fluid during the setting cycle, and thereafter carrying out the treatment cycle.
3. The method of claim 2, further including carrying out the setting cycle with a setting fluid that is different from the treatment fluid.
4. The method of claim 1, further including moving the media upwardly into the upper portion of the media container with a setting fluid, and while the media is located in the upper portion of the media container, supporting the media in the upper portion with the treatment fluid while coacting the media with the treatment fluid.
5. The method of claim 1, further including supporting the media in an annular chamber in the upper portion of the media container, and passing the treatment fluid radially inwardly through the media.
6. The method of claim 5, further including carrying treatment fluid coacted with the media to a core area in the annular chamber, and upwardly out of an opening in the media container.
7. The method of claim 6, further including passing the treatment fluid and a setting fluid through a common fluid inlet at different times.
8. The method of claim 1, further including providing a casing around the media container to allow treatment fluid to be contained between a sidewall of the casing and the media container.
9. The method of claim 1, further including using a setting fluid during the setting cycle, and passing both the treatment fluid and the setting fluid through a common fluid inlet to said media container.
10. The method of claim 1, wherein said upper portion and said lower portion of said media container have annular chambers surrounding a central bore, and further including providing at least one fluid valve for controlling a flow of fluid in said central bore.
11. The method of claim 1, further including providing a filter media for filtering an influent, where said influent functions as said treatment fluid.
12. A method filtering an influent, comprising the steps of:
orienting a filter container holding a filter media, in an upright positions said filter container having an inlet and an outlet therein;
passing a setting fluid through the inlet so as to raise the filter media to an upper portion of said filter container;
while the filter media is raised to the upper portion of the filter container, passing the influent through the inlet and stopping flow of the setting fluid so that the influent then maintains the filter media in the upper portion of the filter container; and
passing the influent radially through the filter media to filter particulate matter from the influent, and passing the filtered influent through the outlet of the filter container.
13. The method of claim 12, further including allowing the filter media to move to a lower portion of the filter container, and fluidizing the filter media during the downward movement thereof to remove filtered particulate matter therefrom.
14. The method of claim 13, further including passing a backwash fluid from an opening in the upper portion of the filter container, through the filter media, and out an opening in a lower portion of the filter container, whereby the particulate matter is carried out of the lower opening of the filter container.
15. The method of claim 12, further including passing the setting fluid and the influent through the same inlet, but at different times.