`Choi
`
`111111111111111111111111111111111111111111111111111111111111111111111111111
`US006111585A
`[11] Patent Number:
`[45] Date of Patent:
`
`6,111,585
`Aug. 29, 2000
`
`(54) TEXTURE MAPPING SYSTEM AND
`METHOD USING A T EXTURE CAC HE FOR
`MINIMUM CAPACITY AND MINIMUM
`ACCESS TIME
`
`[75]
`
`l nventor: Sang-gil Cboi, Yongin, Rep. of Korea
`
`6,009,190 12/1999 Szeliski et al. ......................... 382/154
`
`Primary Examiner~ark R Powell
`Assistant Exnminer_:Ibu-Thao 1-Iavan
`Allorney, AgenL, or Firm-Sughrue, Mion, Zion, Macpeak
`& Seas, PLLC
`
`[73] Assignee: Samsung Electronics Co., Ltd.,
`Kyungki-do, Rep. of Korea
`
`[21] Appl. No.: 09/078,809
`
`[22] Filed:
`
`May 14, 1998
`
`[30]
`
`Foreign Application Priority Data
`
`[KR]
`
`Rep. of Korea ...................... 97-477ll
`
`Sep. 19, 1997
`Int. C l.7
`..•..••..••.•.•.•.••.. .. ... . . . •. •.. ..•..•.•. •.•••...•• G06F 17/30
`[51)
`[52] U.S. CJ. .......................... 345/430; 345/425; 345/509;
`345/513
`[58) Field of Search ..................................... 345/ 430, 440,
`345/468, 115, 118, 121, 127, 501, 509,
`425, 426,507, 513, 433;382/154
`
`[56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,615,013
`5,224,208
`5,528,75 1
`5,936,632
`5,953,020
`
`............................... 345/430
`9/1986 Yan et al.
`6/ 1993 Miller, Jr. et al. ...................... 345/425
`6/ 1996 Priem et al. ............................ 345/509
`8/ 1999 Cunniff ct al. .......................... 345/430
`9/ 1999 Wang cl al. ............................ 345/513
`
`[57]
`
`ABSTRACT
`
`A textu re mapping system and a tex1ure mapping method are
`provided for generating pixels displayed on a screen by
`texture mapping. The texture mapping system includes a
`texture cache for storing texture image data fetched from a
`frame buffer memory with respect to one scanline, in which
`the texture cache comprises a column s tructure composed of
`a tag region where an image coordinate value (u, v) of the
`textu re image data is stored, a refill li ne region where the
`texture image da ta corresponding to tbe image coordinate
`value of the tag region is stored, and an effective bit region
`indicating whether data of the refill line region is accessed.
`The texture cache also has a row structu re in which the
`number of rows is the S<tme as the number texture image
`patch data with respect to an image of a maximum length
`covering at least one scan line to be texture mapped, to store
`texture image patch data to be texture mapped. Accordingly,
`by the texture mapping system including a texture cache and
`a da ta loading method of the texture cache, texture memory
`capacitance of the graphic process chip is reduced to reduce
`chip cost. Further, data access speed is reduced due to cache
`bit to rapidly perfom1 texture-mapping .
`
`6 Claims, 3 Drawing Sheets
`
`f-IRST EFFECTIVE SECOND l:.r r t.CTIVE
`BIT 0
`BIT 0
`FIRST EFFECTIVE SECOND EFFE.CIWE.
`BIT ,
`BIT 1
`
`TAG 0
`
`REFI LL Li NE 0
`
`TAG 1
`
`REFILL LINE 1
`
`FIRST EFFECTIVE SECOND fFFECTIVE
`BIT 16
`BIT 16
`
`TAG 16
`
`REFI LL I IN[ 1 6
`
`FIRST UT::CT1VE SCCOND FF=-ECTtV~
`BIT n
`BIT n
`" - - -y - __ / \
`.300
`
`.301
`
`TAG ..,
`REFILl LINE n
`/\._.-~ -y-------'
`310
`.320
`
`0001
`
`Volkswagen 1007
`
`
`
`U.S. Patent
`
`Aug. 29, 2000
`
`Sheet 1 of 3
`
`6,111,585
`
`FIG. 1 (PRIOR ART)
`
`100
`I
`
`1 1 c
`\
`
`GCOMEI RY
`PROCESSOR
`
`R/\STtR IZER
`
`ljQ
`I
`tR/\M 1:.
`BUFFER
`M EM O f~Y I
`TE XTUR E
`M EMOf~Y
`
`VONITOR
`
`t--- 1 20
`
`FI G. 2
`
`200
`I
`
`GEOME. TRY
`PROClSSOR
`
`210
`(
`I
`
`RASTFRI?F~
`
`l[ X fURF
`CAC-lF
`
`/SO
`
`FR/\M E
`IJUtFT R
`MlMORY
`
`\
`??0
`
`0002
`
`
`
`U.S. Patent
`
`Aug. 29,2000
`
`Sheet 2 of 3
`
`6,111,585
`
`FIG . 3
`
`FIRST i:F~ ECTIVE SECO~D EFFECTIVE
`BIT 0
`BIT 0
`~ IRST EFFEC IIVl SECO~D Eri"TCTIVE
`BIT '.
`BIT 1
`
`TI\G 0
`
`REF LL ~1\JE 0
`
`fAG 1
`
`RCFILL LI NE 1
`
`FIRST EFFfC riV[ SECOND EFFECTIVE
`BIT 16
`BIT 16
`
`T/\G 16
`
`REFILL I lt\JE 1 6
`
`FIKST EFFECT 1VL SECOND LFFECTIVE
`B1T n
`BIT r1
`-v-
`v
`30.
`300
`
`\
`
`1\__
`
`A
`
`TAG n
`
`v
`YO
`
`REJ Ill
`
`INE I
`
`~- _____J
`320
`
`FIG. 4
`
`' 28
`
`0003
`
`
`
`U.S. Patent
`
`Aug. 29, 2000
`
`Sheet 3 of 3
`
`6,111,585
`
`FIG. 5
`
`SH II- liNG DATA OF SECON[") Ff:"FECTIVE
`31T =<EGlON ~0 F I ~S- [lfTCT'Vt BIT REGION
`
`500
`
`I
`
`R~SF.TT I NG DATA OF SECOND
`EFFCCTIV[ 8 '7 REGION
`
`--510
`
`NO
`
`530
`
`Fe.·· C-Jif\ G -[XT ...... ~E ltvlAC:.
`DATA 1\RC,Jf\D CC~RESPOI\01\JG
`( u, v) ADDRESS FROrv FRArv::
`8UF 1--ER M:: MORY TO BE S-ORCJ
`N T:::XTURC CJ\C-1E
`
`V r -::;;
`
`SETTING DAIA Or
`CORRFSPONDING
`COl LJMN CF =-IRST
`FFFF.C-IVF Rl- R:::C ON
`
`~[AO I NG TEXTURE IMAGf ~550
`DATA o~ coRRES 0 0NDING
`RUILL Llf\t.
`
`St.i l iNG J.t..IA 01
`CO~ I~[SPC'\JD NC COLU~/N 01-
`SlC8~J [II[CTIV[ ]IT RCGIO\J
`
`---~;GC
`
`570
`
`ND
`
`0004
`
`
`
`6,111,585
`
`1
`TEXTURE MA PPING SYSTEM A ND
`M ETHOD USl NG A TEXTURE CACHE FOR
`MINIMUM CAPACITY AN O MfNfM UM
`ACCESS TIME
`
`BACKGROUND OF THE INVENTION
`
`2
`a column structure composed of a tag region where an image
`coordinate value (u, v) of the texture image data is stored, a
`refill line region where the texture image data corresponding
`to the image coordinate value of the tag region is stored, and
`5 an effective bit region indicating whet her data of the refill
`line region is accessed; and a row structure of tbe number
`same as the number texture image patcln data with respect to
`an image of a maximum length covering at least one scaolioe
`to be texture-mapped to store texture image patch data to be
`texture mapped.
`Preferably, in the refill line region, capacity of one line is
`determined by a da ta compression met bod and bits per pixel
`(bpp) indicating color of a texel and transparency thereof,
`and texel data around the image coordinate is stored in each
`15 line.
`It is also preferable that the effective bit region is com(cid:173)
`posed of: a ftrst effective bit region for storing data indicat(cid:173)
`ing whether texture image patch data of the refill line region
`is used for previous scanline texture mapping; and a second
`eJiective bit region for writing data of w hether texture image
`patch data of the refill line region is used for the curren t
`scaolioe texture mapping, aocl shifting the stored data to the
`first effective bit region after the current scanline texture
`mapping.
`To achieve the above object, there is provided a texture
`mapping meibod using texture cache for storing texture
`image data [etched (rom a frame buffer memory to be texture
`mapped with respect to one scanline image, comprising the
`steps of: a) shifting data of a second effective bit region,
`30 which indicates whether texture image patch data stored in
`a corresponding texture cache line is used for previous
`scanlioe tcx1ure mapping, to a first effective bit region which
`is another memory in the tex ture cache and resetting the data
`of the second effective bit region when texture mapping of
`35 a new scaolinc begins; b) checking whether a tag region for
`storing an image coordinate (u, v) of texel da ta to be texture
`mapped includes an address same as a (u, v) address
`generated with respect to one image of a current scanline; c)
`reading texture image data patch around the (u, v) address
`40 fTom the frame memory buffer and storing the textu.re image
`data patch in the refill line region where the data of the first
`e!l"ective bit region is reset, when the tag region includes no
`address same as the (u, v) add ress generated with respect to
`one image of a current scanline; d) reading values of the
`45 texture image patch data of the corresponding refill line
`region and setting da ta of tbe second effective bit region of
`ibe corresponding line when the tag region includes an
`address same as the (u, v) address generated with respect to
`one image of the curren t scanline or after the step c) is
`so performed; and e) completing texture mapping data access
`of tbe current scan line when a pixel to 'be tex ture mapped is
`a last pixel of the current scanline, and repeatedly perform(cid:173)
`ing the process from the step b) when not.
`To accomplish tbe above object, there is provided a
`ss texture mapping system comprising: a geometry processor
`for calculating changes of geometric information on an
`object to be rendered in a polygon unit, and converting the
`result to be projected on a screen of a mo nitor; a frame buffer
`memory for storing data with respect to intensity values of
`60 each pixel forming an image; a texture cache including a
`column structure composed of a tag region where an image
`coordinate value (u, v) of tbe texture image data fetched
`from the frame buffer memory is slored during texture
`mapping with respect to an image covering one scaoline, a
`65 refill line region where the texture image data corresponding
`to the image coordinate value of the tag region is stored, and
`an effective bit region indicating whether data of the refill
`
`10
`
`1. Field of the Invention
`The present invention relates to a texture mapping system
`and method, and more particularly, to a texture mapping
`system and method using a texture cache for minimum
`capacity and minimum access time.
`2. Description of the Related Art
`In general, io a three-dimensional (3D) graphics field,
`most of pixels on a screen are generated by texture mapping,
`so that performance of the graphics depends on performance
`of the texture mapping.
`FIG. 1 shows an embodiment of a conventional graphic
`processor for texture mapping. The graphic processor
`includes a geometry processor 100, a rasterizer 110, a 20
`monitor 120 and a frame buffer memory/texture memory
`130. The geometry processor 100 calculates changes of
`geometric information on an object to be rendered as a unit
`of a polygon, and converts the result to be projected on a
`screen of the monitor 120. The rasterizer 110 calculates a 25
`parameter necessary for rasterization from the projected
`polygons and generates pixel values in ibe polygons using
`the parameter. T he frame buffer memory/texture memory
`130 for storing intensity data of each pixel forming an
`image, allots its portion partially acts as a texture memory
`region for storing texel data to be texture-mapped. In a
`structure as shown in FIG. 1, a memory bandwidth is
`narrow, so tha t a fetch speed of the texel data is undesirably
`reduced.
`To solve the problem, a texture memory for storing image
`data to be texture-mapped may be provided separately from
`lbe frame buffer memory. Accordingly, the memory band(cid:173)
`width may increase, however, the data fetch speed for access
`to an external memory is still limited. Also, a memory
`capable of storing one texture, where one scene may be
`composed of dozens or hundreds of texture images, may be
`embedded in the rasterizer. Here, the memory fetch speed
`increases, however, a memory having capacity as large as
`tbe texture image data can be stored is required for the
`rasterizer.
`As described above, in texture mapping, bottleneck prob(cid:173)
`lems may occur in fetching the texel, which is data for the
`textu.re mapping, from the texture memory. Preferably, the
`fetch speed of the texel is increased by rapidly fetching data
`using a texture cache. However, the texture image da ta is
`two-dimensional, and each of the objects to be texture(cid:173)
`mapped is momentarily changed on the screen by shifting of
`the eye position. Therefore, the address value to pre-fetch
`the texel is not predictable.
`
`SUMMARY OF THE INVENTION
`
`To solve the above problems, it is an object of the present
`invention to provide a texture mapping system including a
`texture cache fo r minimizing memory capacity and reducing
`times of the data access to thereby increase a texture
`mapping speed, and a textu re mapping method.
`Accordingly, to achieve lbe above object, a texture map(cid:173)
`ping system for generating pixels displayed on a screen by
`texture mapping, comprising a tex ture cacbe for storing
`texture image data fetched fTom a frame buffer memory with
`respect to one scanline, wberein the texture cacbe comprises
`
`0005
`
`
`
`6,111,585
`
`3
`line region is accessed and a row s tructure of the number
`same as the number texture image patch data with respect to
`an image of a maximum length covering at least one scanline
`to be texture-mapped for storing texture image patch data to
`be texture mapped; and a rasterizer for performing raster- 5
`ization using a signal generated by the geometry processor
`and the texture image patch data read from the textwe cache.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`1l1e above object and advantages of the present invention
`will become more apparent by describing in detail a pre(cid:173)
`ferred embodiment thereof w ith reference to the attached
`drawings in whicb:
`FIG. 1 shows an embodiment of a conventional graphic
`processor;
`FIG. 2 shows a texture mapping system according to the
`present invention;
`FIG. 3 shows a structure of a texture cache according to
`the present invention;
`FIG. 4 shows a texture image for illustrating the present
`invention; and
`FIG. 5 is a flowchart of a texture mapping method
`according to the present invention.
`
`DESCIUPTION OF THE PREFERRED
`EM13001MENTS
`
`4
`The second effective bit region 301 stores data indicating
`whether the texture image fetch data stored in the corre(cid:173)
`sponding refill line region 320 is used for current scanlioe
`texture mapping. When the current scanline texture mapping
`is completed, the data stored in the second effective bit
`region 301 is shifted to the first effective bit region 300 and
`thereafter is reset.
`The first and second effective bit regions 300 and 301 for
`managing the cache memory to generate maximum cache hit
`10 in texture mapping with respect to a next scanline, may
`reduce a time for fe tching tcxel data of the frame buffer
`memory 230 to the texture cache 220 and times therefor. The
`data of the refill line in which the fi rst effective bit is set, may
`be accessed again in texture mapping of the current scanline.
`15 That is, possibility of the cache bit may be increased.
`However, since data of the refill line in which the first
`eJlective bit of a corresponding row is reset, is not used fo r
`the texture mapping of the previous scanline, there is no
`possibility of the cache bit occurring. Accordingly, the
`20 texture cache 220 is updated by new data read from the
`frame bufter memory 230. In other words, data of whether
`data of the corresponding refill line region was used for the
`previous scanline texture mapping, is stored in the first
`effective bit region 300. The data stored in the first effective
`25 bit region 300 determines whether new data .is updated to the
`refill line region of a corresponding line during texture
`mapping of the current scanline. The data indicating whether
`data of the refill line region is used for the texture mapping
`of the current scanl ine, is stored in the second effective bit
`30 region 301 and all data of the second elfective bit region 301
`are shifted to the first effe.ctive bit region 300 rigbt just
`before the next scaoline texture mapping begins. Tbeo, the
`second effective bit region 301 is reset.
`The image coordinate (u, v) of the texture data is stored
`35 in the tag region 310. The coordinate (u, v) calculated for the
`scanline texture mapping is compared to the coordinate (u,
`v) stored in the tag region, to thereby determine whether the
`texture data corresponding to the coordinate (u, v) calculated
`for the scanline texture mapping exists in the texture cache
`40 220. Here, the calculated value (u, v) is simultaneously
`compared to all data of the tag region 310. When the texture
`cacbe 220 i.ncludes the image coordinate value calculated for
`the texture mapping, the cache bit occurs, and when not, the
`cache miss occurs. In the cache miss, data of the frame
`45 buffer memory 230 is read to texture cache io a patch unit.
`The number of bits of the tag depe nds on a screen
`resolution of an application and an image compression
`method. For example, when a size of the texture image is
`1280xl024, the number of bits composing the coordinate (u,
`v) are 11 and 10, respectively. At this time, when tbe texture
`image is compressed using JPEG method, 8x8 pixels are
`compressed to one block package to be stored in the refill
`line region 320 of the texture cache of FIG. 2. Accordingly,
`the number of bits of an add ress indkating one data patch
`are 8 and 7 obtained by subtracting LSB 3 bits from the 11
`and 10, respectively, and the number of the bits of the tag
`data (or coordinates of u, v) stored in the tag region is 15
`obtained by adding the 8 and 7.
`The refill Line region 320 stores texture image patch data
`corresponding to an image coordi nate of the tag region. A
`size of one refill line is determined by the compression
`method and bits per pixel (bpp) according to information on
`color of a texel and transparency.
`Referring to FIG. 4, a size of a texture image is 128xl28.
`When the bpp is 16 bits and the compression is performed
`by a JPEG method, 32 patch data are required for covering
`
`Referring to FIG. 2, a texture mapping system includes a
`geometry processor 200, a rasterizer 210, a texture cache
`220 and a frame buffer memory 230. The geometry proces(cid:173)
`sor 200 calculates changes of geometric information on an
`object to be rendered as a unit of a polygon, and converts the
`result to be projected on a screen of a monitor. The rasterizer
`210 calculates a parameter necessary for rasterization from
`the projected polygons aod generates pixel values in the
`polygon using the parameter. The frame butler memory 230
`stores data with respect to intensity values of each pixel
`forming an image. The texture cache 220 stores texture
`image data fetched from the frame buffer memory 230 by the
`rasterizer 210 during texture mapping with respect to an
`image covering one scanline. The texture cache 220, which
`is a typical cache memory, determines whether the texture
`image data used for the texture mapping of a previous
`scanline includes texture image data to be used for current
`scanline texture mapping. When the texture image data,
`stored in the texture cache 220, which is fetched from frame
`bulier memory 230 in texture mapping of a previous
`scan line, includes data to be used for current scan line texture
`mapping, the cache bit occurs, to thereby increase a data
`access speed, however, wben the cache miss occurs, corre(cid:173)
`sponding texture image data is read from the frame buffer
`memory 230 to be stored in the texture cache 220.
`FIG. 3 shows a structure of the texture cache 220 accord(cid:173)
`ing to the present invention, and the texture cache 220 is
`composed of a first effective bit region 300, a second
`effective bit region 301, a tag region 310 and a refill region
`320.
`The first ellecrive bit region 300 stores data indicating
`whether texture image fetch data of the corresponding refill 60
`region was used for texture mapping with respect to the
`previous scanlinc. For example, when ·a first effective bit 0'
`of FIG. 3 is set, it indicates that the texture image fetch data
`stored in ·a refill 0 ' was used for the previous scanline
`texture mapping. When 'a first eftective bit 2 ' is reset, it 65
`indicates that the texture image fetch da ta stored in 'a refill
`2 ' was not used for the previous scanl ine texture mapping.
`
`50
`
`55
`
`0006
`
`
`
`6,111,585
`
`25
`
`5
`one scanline. Accordingly, memory capacity for storing 32
`or more texel data of 8x8x16 is required. In the image of
`FTG. 4, maximum 32 patch da ta are required for texture
`mapping, regardless of a scan direction with respect to an
`overall texture image of 128xl28xl6. For example, in FIG. 5
`4, the scanlioe ex1ends over a portion covering maximum
`length of the image and 16x2 patch data is aligned along the
`scaolioe. As described in FIG. 3, the texture image patch
`data used for texture-mapping of the previous scanline are
`still stored in the texture cache without being refreshed, so 10
`that when cache miss occms in texture-mapping of the
`current scanline, a space for storing new data may be
`deficient. Accordingly, a memory space must be larger than
`a space for storing the number of maximum patch data
`required for texture-mapping of one scanlir1e. Considering 15
`the nwnber of patch data covering one scaoline and the
`number of patch data shared with the scaolioe neighboring
`thereto (i.e., the number of patch data which need not be
`stored by external access due to cache hit), a hal( of the
`number of the maximum patch data may be further required 20
`for a space of the texture cache 220. The number of lines or
`rows of the texture cacbe with respect to the image of FIG.
`4 is 48, which is 1.5 times the number of maximum patch
`data, to thereby require a memory of approximately 6 KB for
`the texture cache 220.
`The conventional texture memory for texture-mapping
`the image of FIG. 4 requires capacity for storing data of
`65536 pixels. Meanwhile, the texture cache of FIG. 2
`requires on ly capacity for storing data of 8x8x48, i.e., 3072
`pixels at most, where 8x8 is patch data and 48 is tbe number 30
`of refill lines. This shows that the capacity of the texture
`cache of the rasterizer is reduced to 4.68% for the conven(cid:173)
`tional texture memory capacity.
`In FIG. 5, when a new scanline begins, data of the second
`effective bit region 301 is shifted to the first effective bit 35
`region 300 (step 500). The data of the second effective bit
`region 301 is reset (step 501). It is determined whether (u,
`v) address of a pixel included in the current scanline exists
`in the tag region 310 of the texture cache (step 520). When
`there is not corresponcting (u, v) address, textme image 40
`patch data arouod the (u, v) address is read from an external
`memory, i.e.,the frame buffer memory 230 ofFIG. 2 to store
`the data in the refill line region 320 of a row where data of
`tbe first effective bit regioo 300 is reset (step 530). The data
`of a corresponding row in the first effective bit region is set 45
`as '1' (step 540) . When there is the (u, v) add ress in the tag
`region in the step 520 or after the step 530 is performed,
`vaJues of the texture image patch data of the refill line region
`320 of the corresponding row are read (step 550), and data
`of the corresponding second effective bit region 301 is set 50
`(step 560). It is determined whether the pixel to be text me
`mapped is a last pixel (step 570). If the pixel is last one,
`texture mapping data access of the current scaolioe is
`completed, and if not, the process is repeatedly performed
`from the step 520.
`According to the texture mapping system including a
`textu.re cache and a data loading method of tbe texture cache
`of the present inveotion, texture memory capacity of the
`graphic process chip is reduced, to thereby reduce chip cost,
`and a data access Lime is tremendously reduced due to cache 60
`bit, to thereby rapidly perform texture-mapping.
`What is claimed is:
`1. A texture mapping system for generating pixels dis(cid:173)
`played on a screen by texture mapping, comprising a texture
`cache for storing texture image data fetched from a frame 65
`buJier memory with respect to one scanl ine, said texture
`cache comprising:
`
`55
`
`6
`a column structure including a tag region for storing an
`image coordinate value (u,v) of the texture image data,
`a refi ll line region for storing texture image data
`corresponding to the image coordinate value or the tag
`region, and an effective bit region for storing data
`indicating whether data of the refill line regioo is used
`for scaoline texntre mapping; and
`a row structure for storing texture image patch data to be
`texture mapped, wherein said row s tructure bas a
`number rows which is equal to tbe number of texture
`image patch data with respect to an image of a maxi(cid:173)
`mum length covering at least one scanlioe to be texture
`mapped.
`2. The system of claim 1, wherein the row structure has
`a number of rows which is 1.5 times the number of maxi(cid:173)
`mum text11re image patch data corresponding to one scanline
`to be texture mapped.
`3. The system of claim 1, wherein in the refill line region,
`capacity of one line is determined by a da ta compression
`method and a number of bits per pixel (bpp) indicating color
`and tra nsparency of a texel, and texel data around the image
`coordinate is stored in each line.
`4. The system of claim 1, wherein the effective bit region
`comprises:
`a fi rst eftective bit region for storing data indicating
`whether texture image patch data of the refill line
`region is used for previous scanline texture mapping;
`and
`a second effective bit region for storing data indicating
`whether texture image patch data of tbe refill line
`region is used for the current scaoline texture mapping,
`and shifting the stored data to (be first effective bit
`region after completion of the current scaolioe texture
`mapping.
`5. A texture mapping method using texture cache tor
`storing tex111re image data received from a frame buffer
`memory to be texture mapped with respect to one scanline
`image, tbe method comprising the steps of:
`(a) shiftiog data stored in a second effective bit region of
`the texture cache, which indicates whether texture
`image patch data stored in a corresponding textme
`cache line was used for previous scaoline texture
`mapping, to a first etiective bit region in the texture
`cache and rescuing tbe data of the second effective bit
`region when textme mapping of a new scan line begins;
`(b) determining whether a tag region of the texture cache
`for s toring an image coordinate (u.v) of texel data to be
`texture mapped contains an address which is same as a
`(u,v) address generated with respect to one image of a
`current scanlioe;
`(c) reading texture image patch data around the (u,v)
`address from the frame memory buller and storing the
`texture image patch data in the refill line region where
`the data of the first effective bit region is reset, if it is
`determined in step (b) tbat the tag region does not
`contain an address which is same as the (u,v) address
`generated with respect to one image or a current
`scanl ine;
`(d) reading values of the texture image patch data of tbe
`corresponding refill line region and setting data of the
`second effective bit region of the corresponding line, if
`it is determined in step (b) that the tag region contains
`an address same as the (u,v) address generated with
`respect to one image of the curren t scan line or after step
`(c) is performed; and
`e) completing texture mapping da ta access of the curren t
`scaoline if a pixel to be texture mapped is a last pixel
`
`0007
`
`
`
`6,111,585
`
`7
`of the current scanline, and repeatedly perfo rmi ng step
`(b) if the pixel to be texture mapped is not the last pixel
`of the current scanline .
`6. A texture mapping system comprising:
`a geometry processor for calculating changes of geomet- 5
`ric information on an object to be rendered in a polygon
`unit, and converting the result to be projected on a
`screen of a monitor;
`a frame buffer memory for storing data corresponding to
`intensity values of each pixel forming an image;
`a texture cache comprising a column structure having a
`tag region for storing an image coordinate value (u, v)
`of the texture image data, a refill line region for storing
`texture image data corresponding to the image coordi-
`
`10
`
`8
`nate value of the tag region, and an effective bit region
`for s toring data indicating whether data of the refill line
`region is used for scanline texture mapping, and a row
`structure for storing texture image patcb data to be
`texture mapped, wherein said row s tructure bas a
`number rows wbicb is equal to tbe number of texture
`image patch data with respect to an image of a maxi(cid:173)
`mum length covering at least one scaoline to be texture
`mapped; and
`a rasterizer for performing rasterization using a signal
`generated by the geometry processor and the texture
`image patch data read Erom tbe texture cacbe.
`
`* * * * *
`
`0008