TWI839085B - Multi-resolution cache - Google Patents

Multi-resolution cache Download PDF

Info

Publication number
TWI839085B
TWI839085B TW112102305A TW112102305A TWI839085B TW I839085 B TWI839085 B TW I839085B TW 112102305 A TW112102305 A TW 112102305A TW 112102305 A TW112102305 A TW 112102305A TW I839085 B TWI839085 B TW I839085B
Authority
TW
Taiwan
Prior art keywords
resolution
cache
segment
cache segment
data
Prior art date
Application number
TW112102305A
Other languages
Chinese (zh)
Inventor
巴曼 扎法里法爾
杰羅恩 瑪麗亞 凱蒂尼斯
Original Assignee
大陸商威視芯半導體(合肥)有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 大陸商威視芯半導體(合肥)有限公司 filed Critical 大陸商威視芯半導體(合肥)有限公司
Priority to TW112102305A priority Critical patent/TWI839085B/en
Application granted granted Critical
Publication of TWI839085B publication Critical patent/TWI839085B/en

Links

Landscapes

  • Image Processing (AREA)

Abstract

A multi-resolution cache includes a first, second and third cache segments the first segment having a first resolution and the second and third segments having a second resolution, the second resolution less than the first resolution, the first and third cache segments communicatively coupled to an off-chip memory, the first and third cache segments configured to each receive a cache line of data having the first and second resolutions, a fourth and fifth cache segments having the second resolution, a first downscaler communicatively coupled to the first and fourth cache segments configured to reduce the resolution when a first resolution cached data is shifted from the first cache segment to the fourth cache segment, a first upscaler communicatively coupled to the all cache segments that have the second resolution, and is configured to increase the reduced resolution cached data to the first resolution and output it.

Description

多分辨率高速緩存Multi-resolution cache

本發明有關於一種多分辨率高速緩存。The present invention relates to a multi-resolution cache.

圖像處理操作,例如空間濾波和運動補償幀插值MCFI(也稱為運動估計和運動補償或MEMC),是在局部圖像鄰域上運行,例如,空間域中的局部鄰域。典型地,圖像數據高速緩存用於減少內存訪問帶寬,其僅從內存讀取一次圖像數據,並從緩存的數據提供對局部鄰域的訪問。因此,較大的鄰域意味著更大的高速緩存大小,並且由此意味著更高的高速緩存成本。Image processing operations, such as spatial filtering and motion compensated frame interpolation MCFI (also known as motion estimation and motion compensation or MEMC), are operated on local image neighborhoods, e.g., local neighborhoods in the spatial domain. Typically, image data caches are used to reduce memory access bandwidth, which read image data from memory only once and provide access to local neighborhoods from the cached data. Therefore, larger neighborhoods mean larger cache sizes and, therefore, higher cache costs.

有鑑於此,吾等發明人乃潛心進一步研究,並著手進行研發及改良,期以一較佳發明以解決上述問題,且在經過不斷試驗及修改後而有本發明之問世。In view of this, we, the inventors, have devoted ourselves to further research and development and improvement, hoping to find a better invention to solve the above problems. After continuous testing and modification, the present invention was finally born.

在一個方面,多分辨率高速緩存包括分別具有第一分辨率、第二分辨率和第三分辨率的第一高速緩存分段(102)、第二高速緩存分段(108)和第三高速緩存分段(110);第二分辨率小於第一分辨率,第三分辨率小於第二分辨率,第一高速緩存分段(102)、第二高速緩存分段(108)和第三高速緩存分段(110)以通信方式耦合到片外存儲器(120);第一高速緩存分段(102)、第二高速緩存分段(108)和第三高速緩存分段(110)被配置成從片外存儲器(即,位於高速緩存的外部,例如DDRRAM、(緩存的)視頻流等)接收具有第一分辨率、第二分辨率和第三分辨率的一個高速緩存行的(圖像)數據;第四高速緩存分段(106)和第五高速緩存分段(104)分別具有第二分辨率和第三分辨率;第一分辨率降低器(114)以通信方式耦合到第一高速緩存分段(102)和第四高速緩存分段(106),其被配置成在第一分辨率高速緩存行從第一高速緩存分段(102)移位到第四高速緩存分段(106)時降低分辨率;第二分辨率降低器(112)以通信方式耦合到第四高速緩存分段(106)和第五高速緩存分段(104),且被配置成在降低分辨率的緩存數據行從第四高速緩存分段(106)移位到第五個高速緩存(104)分段時進一步降低所述降低分辨率的緩存數據的分辨率;第一分辨率提升器(118)和第二分辨率提升器(116)分別與第二高速緩存分段(108)和第三高速緩存分段(110)以通信方式耦合,並且還分別與第四高速緩存分段(106)和第五高速緩存分段(104)以通信方式耦合,其被配置成將所述降低分辨率的緩存數據和進一步降低分辨率的緩衝數據提升到第一分辨率,並輸出提升了分辨率的緩存數據。In one aspect, a multi-resolution cache includes a first cache segment (102), a second cache segment (108), and a third cache segment (110) having a first resolution, a second resolution, and a third resolution, respectively; the second resolution is smaller than the first resolution, and the third resolution is smaller than the second resolution; the first cache segment (102), the second cache segment (108), and the third cache segment (110) are communicatively coupled to an off-chip memory (120); the first cache segment (102) ), a second cache segment (108) and a third cache segment (110) are configured to receive (image) data of a cache line having a first resolution, a second resolution and a third resolution from an off-chip memory (i.e., located outside the cache, such as a DDRRAM, a (cached) video stream, etc.); a fourth cache segment (106) and a fifth cache segment (104) have the second resolution and the third resolution, respectively; a first resolution reducer (114) is communicatively coupled to the first cache The invention relates to a first cache segment (102) and a fourth cache segment (106) configured to reduce the resolution of a first resolution cache line when it is shifted from the first cache segment (102) to the fourth cache segment (106); a second resolution reducer (112) communicatively coupled to the fourth cache segment (106) and the fifth cache segment (104) and configured to further reduce the resolution of the cache data line when the reduced resolution is shifted from the fourth cache segment (106) to the fifth cache segment (104). The resolution of the reduced-resolution cache data; a first resolution enhancer (118) and a second resolution enhancer (116) are respectively coupled to the second cache segment (108) and the third cache segment (110) in a communication manner, and are also respectively coupled to the fourth cache segment (106) and the fifth cache segment (104) in a communication manner, and are configured to enhance the reduced-resolution cache data and the further reduced-resolution cache data to the first resolution, and output the cache data with enhanced resolution.

關於吾等發明人之技術手段,茲舉數種較佳實施例配合圖式於下文進行詳細說明,俾供  鈞上深入瞭解並認同本發明。Regarding the technical means of our inventors, several preferred embodiments are described in detail below with reference to the drawings so that you can have a deeper understanding and recognize the present invention.

多個實施例使用多分辨率高速緩存,由此高速緩存的一部分包含具有較高(例如完全)分辨率的圖像,並且高速緩存的其他部分包含具有較低分辨率的圖像。以這種方式,與單個分辨率高速緩存相比,相同的高速緩存大小能夠提供對更大的鄰域區域的訪問,或者換句話說,相同的鄰域大小所需要的高速緩存大小更低。Several embodiments use a multi-resolution cache, whereby a portion of the cache contains images with a higher (e.g., full) resolution and other portions of the cache contain images with a lower resolution. In this way, the same cache size can provide access to a larger neighborhood area than a single resolution cache, or in other words, a lower cache size is required for the same neighborhood size.

如果高速緩存中有較高分辨率數據可用,則高速緩存系統可以由較高分辨率數據生成較低分辨率數據,以及當高速緩存中沒有較高分辨率數據可用時,它從存儲器讀取較低分辨率數據。The cache system may generate lower resolution data from the higher resolution data if the higher resolution data is available in the cache, and read the lower resolution data from the memory when the higher resolution data is not available in the cache.

高速緩存系統以最高可用分辨率提供數據,或者它提供兩個分辨率的混合,其中兩個高速緩存分辨率分段重疊或過渡。The cache system provides data at the highest available resolution, or it provides a mix of two resolutions where two cache resolution segments overlap or transition.

圖像處理功能(例如空間或時空)通常能夠受益於更大尺寸的局部鄰域(濾波器孔徑大小)。實施例能夠通過增加孔徑大小實現更好的圖像處理結果,從而不以(位於存儲器中的)原圖像數據的分辨率而是以降低的分辨率來提供相距中心像素較遠的像素的數據。Image processing functions (e.g., spatial or spatiotemporal) can often benefit from a larger size of the local neighborhood (filter aperture size). Embodiments can achieve better image processing results by increasing the aperture size, thereby providing data for pixels farther from a center pixel not at the resolution of the original image data (located in memory), but at a reduced resolution.

儘管分辨率降低仍能夠獲益於更大孔徑的應用的實踐示例是MCFI。在MCFI中,在原視頻幀之間產生中間幀,例如,將每秒24幀(fps)膠片轉換到120fps膠片。MCFI需要沿著運動軌跡從相鄰輸入幀提取圖像像素,為此需要每個輸入幀處一個空間孔徑。可用的局部鄰域(孔徑)大小定義了在插值之前能夠正確地補償的最大運動量。例如,如果垂直可用孔徑大小為以當前像素位置為中心的101個線,則能夠對具有最高+/-50個垂直線的輸入幀到輸出幀運動的對象進行正確地插值,而具有更大垂直運動的對象將產生不正確的插值結果。如果我們以較低分辨率提供超過101線孔徑的像素,則MCFI能夠正確地執行運動補償,儘管是採用較低輸出分辨率。A practical example of an application that can benefit from a larger aperture despite reduced resolution is MCFI. In MCFI, intermediate frames are generated between the original video frames, for example, converting a 24 frames per second (fps) film to a 120fps film. MCFI requires extracting image pixels from neighboring input frames along the motion trajectory, for which a spatial aperture is required at each input frame. The available local neighborhood (aperture) size defines the maximum amount of motion that can be correctly compensated before interpolation. For example, if the vertical available aperture size is 101 lines centered at the current pixel position, objects with input frame to output frame motion of up to +/-50 vertical lines will be correctly interpolated, while objects with larger vertical motion will produce incorrect interpolation results. If we provide pixels with an aperture of more than 101 lines at a lower resolution, MCFI will be able to perform motion compensation correctly, despite the lower output resolution.

因此,實施例提供一種用於在高速緩存中以多個分辨率存儲圖像數據以及提供對圖像數據的訪問的系統,從而與單一分辨率高速緩存機制相比,對於相同訪問範圍,減少了高速緩存大小,或者換言之,與單一分辨率高速緩存機制相比,對於相同高速緩存大小,提供了更大的訪問範圍。Thus, embodiments provide a system for storing image data at multiple resolutions in a cache and providing access to the image data, thereby reducing the cache size for the same access range compared to a single resolution cache mechanism, or in other words, providing a larger access range for the same cache size compared to a single resolution cache mechanism.

該多分辨率高速緩存系統包括:The multi-resolution cache system includes:

1.至少2個高速緩存分段,其中一個用於以高分辨率存儲圖像,並且其中一個或多個用於以較低分辨率存儲圖像,由此不同的分辨率分段可以彼此可選地部分或完全重疊。1. At least 2 cache segments, one of which is used to store images at a high resolution and one or more of which is used to store images at a lower resolution, whereby the different resolution segments can optionally partially or completely overlap each other.

2.一種以(圖像)數據填充高速緩存的機制,由此從高速緩存中移除給定量的舊數據(例如一個圖像行),該高速緩存中的數據按給定量移位(注意,被移位不一定意味著物理上,確認是在概念上,例如,使用數據指針),並將該給定量的新數據寫入高速緩存,從而使用高速緩存中可用或從存儲器中讀取的較高分辨率數據來生成用於較低分辨率高速緩存分段的較低分辨率數據(例如,通過將可用的相鄰高分辨率像素數據降低分辨率),並且僅對於高速緩存中沒有更高分辨率版本可用的情況才從存儲器讀取數據。2. A mechanism for filling a cache with (image) data whereby a given amount of old data (e.g. one image line) is removed from the cache, the data in the cache is shifted by a given amount (note that being shifted does not necessarily mean physically, but conceptually, e.g. using data pointers), and the given amount of new data is written to the cache, whereby lower resolution data for a lower resolution cache segment is generated using higher resolution data available in the cache or read from memory (e.g. by reducing the resolution of available adjacent high resolution pixel data), and data is only read from memory for the case where no higher resolution version is available in the cache.

3.一種從高速緩存中訪問(讀取)所需(圖像)位置的數據的機制,由此:3. A mechanism to access (read) data at a desired (image) location from a cache, whereby:

•      如果在高分辨率高速緩存分段中有該數據位置可用而在低分辨率分段中沒有,則返回高分辨率數據。•      If the data location is available in the high-resolution cache segment but not in the low-resolution segment, the high-resolution data is returned.

•      如果在高分辨率高速緩存分段中沒有數據位置可用但低分辨率高速緩存分段中存在數據,則使用該低分辨率數據計算並返回該數據的近似值,例如通過對來自該低分辨率高速緩存分段中的直接鄰域的數據進行內插(提升分辨率)。•      If no data location is available in the high-resolution cache segment but data exists in the low-resolution cache segment, an approximation of the data is calculated and returned using the low-resolution data, such as by interpolating (upgrading resolution) data from its immediate neighbors in the low-resolution cache segment.

•      如果數據位置位於兩個分辨率分段重疊或過渡的區域,則可以返回 (1) 源自高分辨率高速緩存分段的數據與 (2) 源自低分辨率高速緩存分段的數據之間的“混合”,使得混合比率為例如與數據位置至兩個分辨率分段的距離成比例。該機制可確保分辨率重疊區域或分辨率過渡區域中的輸出數據從一個分辨率向另一個分辨率急劇過渡,但在兩種分辨率之間逐漸淡入。•      If a data location is located in an area where two resolution segments overlap or transition, a “mix” of (1) data from a higher resolution cache segment and (2) data from a lower resolution cache segment may be returned, such that the mix ratio is, for example, proportional to the distance of the data location from the two resolution segments. This mechanism ensures that output data in areas of resolution overlap or resolution transition transition transitions abruptly from one resolution to another, but fades gradually between the two resolutions.

o例如,所述“混合”操作可以例如通過“插值”來實現,從而隨著與分段1的像素距離D1越小,返回的像素值Pout將越趨於像素值P1,並且隨著與分段2的像素距離D2越小,返回的像素值Pout將越趨於來自分段2的像素值P2。例如,當使用“線性插值”時,上述操作能夠實現為Pout = (P1 * D2 + P2 * D1) / (D1+ D2)。o For example, the "blending" operation can be implemented, for example, by "interpolation", so that as the pixel distance D1 from segment 1 becomes smaller, the returned pixel value Pout will be closer to the pixel value P1, and as the pixel distance D2 from segment 2 becomes smaller, the returned pixel value Pout will be closer to the pixel value P2 from segment 2. For example, when "linear interpolation" is used, the above operation can be implemented as Pout = (P1 * D2 + P2 * D1) / (D1+ D2).

o備選地,“混合”可以返回重疊區域中可用的最高分辨率,而不是上述的平滑過渡。o Alternatively, Blend may return the highest resolution available in the overlapping region, rather than the smooth transition described above.

圖1示出根據一個實施例的多分辨率高速緩存100。多分辨率高速緩存100包括垂直對稱地佈置的全分辨率高速緩存分段102、半分辨率分段106和半分辨率分段108、以及四分之一分辨率高速緩存分段104和四分之一分辨率高速緩存分段110。半分辨率高速緩存分段106和半分辨率高速緩存分段108被分別佈置在全分辨率高速緩存分段102的垂直上方和下方。四分之一分辨率高速緩存分段104和四分之一分辨率高速緩存分段110被分別佈置在半分辨率高速緩存分段106和半分辨率高速緩存分段108的垂直上方和下方。多分辨率高速緩存100還包括分辨率降低器114和分辨率降低器112,其(例如,使用雙線性分辨率降低器)分別將分辨率從全分辨率高速緩存分段102降低50%到半分辨率高速緩存分段106,以及從半分辨率高速緩存分段106進一步降低50%到四分之一分辨率高速緩存分段104。對於分別來自四分之一分辨率高速緩存分段104和110以及半分辨率高速緩存分段106和108的輸出,4X分辨率提升器116和2X分辨率提升器118(例如,通過使用雙線性插值或其他插值算法)將分辨率從四分之一分辨率和二分之一分辨率提升到全分辨率。1 shows a multi-resolution cache 100 according to one embodiment. The multi-resolution cache 100 includes a full-resolution cache segment 102, a half-resolution segment 106 and a half-resolution segment 108, and a quarter-resolution cache segment 104 and a quarter-resolution cache segment 110 arranged vertically symmetrically. The half-resolution cache segment 106 and the half-resolution cache segment 108 are arranged vertically above and below the full-resolution cache segment 102, respectively. The quarter-resolution cache segment 104 and the quarter-resolution cache segment 110 are arranged vertically above and below the half-resolution cache segment 106 and the half-resolution cache segment 108, respectively. The multi-resolution cache 100 also includes a resolution downsizer 114 and a resolution downsizer 112 that respectively downs the resolution from the full-resolution cache segment 102 to the half-resolution cache segment 106 by 50% (e.g., using a bilinear resolution downsizer), and further downs the resolution from the half-resolution cache segment 106 to the quarter-resolution cache segment 104 by 50%. For the outputs from the quarter-resolution cache segments 104 and 110 and the half-resolution cache segments 106 and 108, respectively, a 4X upscaling 116 and a 2X upscaling 118 upscale the resolution from the quarter-resolution and half-resolution to the full resolution (e.g., by using bilinear interpolation or other interpolation algorithms).

在多分辨率高速緩存100中,全分辨率分段的大小為C = H*W(其中H表示高度,W表示寬度),二分之一分辨率分段的大小為C/4 = (H/2)*(W/2),以及四分之一分辨率分段的大小為C/16 = (H/4)*(W/4)。因此,總高速緩存大小為1.625*C 個數據元素 (1.625 = 1+2*(四分之一) + 2*(1/16))。In the multi-resolution cache 100, the size of a full-resolution segment is C = H*W (where H represents height and W represents width), the size of a half-resolution segment is C/4 = (H/2)*(W/2), and the size of a quarter-resolution segment is C/16 = (H/4)*(W/4). Therefore, the total cache size is 1.625*C data elements (1.625 = 1+2*(quarter) + 2*(1/16)).

假設從上至下圖像行掃描方向,可以按如下方式填充多分辨率高速緩存100。Assuming an image row scan direction from top to bottom, the multi-resolution cache 100 may be filled as follows.

•      在每個新的全分辨率圖像行處,將全分辨率高速緩存分段的數據向上移位一行,並且從片外存儲器120讀取新的全分辨率(圖像)數據行,並且將其寫在全分辨率高速緩存分段102的空(已被移位的)行處。•      At each new full-resolution image row, the data in the full-resolution cache segment is shifted up by one row, and a new full-resolution (image) data row is read from the off-chip memory 120 and written to the empty (shifted) row of the full-resolution cache segment 102.

•      在每個新的二分之一分辨率圖像行處,將圖1底部的半分辨率高速緩存分段108的數據向上移位一行,並且從片外存儲器120讀取新的二分之一分辨率(圖像)數據行,並且將其寫在圖1底部的半分辨率高速緩存分段108的空(已被移位的)行處。•      At each new half-resolution image row, the data in the half-resolution cache segment 108 at the bottom of FIG. 1 is shifted up one row, and a new half-resolution (image) data row is read from the off-chip memory 120 and written to the empty (shifted) row of the half-resolution cache segment 108 at the bottom of FIG. 1 .

•      在每個新的四分之一分辨率圖像行處,將圖1底部處的四分之一分辨率高速緩存分段110的數據向上移位一行,並且從片外存儲器120讀取新的四分之一分辨率(圖像)數據行,並且將其寫在圖1底部的四分之一分辨率高度高速緩存分段110的空(已被移位的)行處。•      At each new quarter resolution image row, the data in the quarter resolution cache segment 110 at the bottom of FIG. 1 is shifted up one row, and a new quarter resolution (image) data row is read from the off-chip memory 120 and written to the empty (shifted) row of the quarter resolution high cache segment 110 at the bottom of FIG. 1 .

•      在每個新的二分之一分辨率圖像行處,將圖1頂部的半分辨率高速緩存分段106的數據移位一行,並且通過使用全分辨率高速緩存分段102中緩存的數據(例如,使用分辨率降低器114降低分辨率)生成新的二分之一分辨率(圖像)數據行,並將其寫在圖1頂部的半分辨率高速緩存分段106的空(已被移位的)行處。•      At each new half-resolution image row, the data in the half-resolution cache segment 106 at the top of FIG. 1 is shifted by one row, and a new half-resolution (image) data row is generated using data cached in the full-resolution cache segment 102 (e.g., reduced in resolution using the resolution reducer 114) and written to the empty (shifted) row of the half-resolution cache segment 106 at the top of FIG. 1.

•      在每個新的四分之一分辨率圖像行處,將圖1頂部的四分之一分辨率高速緩存分段104的數據移位一行,並且使用圖1頂部的半分辨率高速緩存分段106中緩存的數據(例如使用分辨率降低器112降低分辨率)生成新的四分之一分辨率(圖像)數據行,並且將其寫在圖1頂部的四分之一分辨率高速緩存分段104的空(已被移位的)行處。•      At each new quarter-resolution image row, the data in the quarter-resolution cache segment 104 at the top of FIG. 1 is shifted by one row, and a new quarter-resolution (image) data row is generated using the data cached in the half-resolution cache segment 106 at the top of FIG. 1 (e.g., reduced in resolution using the resolution reducer 112) and written to the empty (shifted) row of the quarter-resolution cache segment 104 at the top of FIG. 1 .

由此,在多分辨率高速緩存100中,處理整個圖像只需要在三個分辨率(全分辨率、二分之一分辨率和四分之一分辨率)中讀取每個分辨率的圖像數據一次,如圖1中所示,由“總內存讀取:1.3125*F”(1+四分之一+1/16 = 1.3125),其中F標識圖像幀的大小。Therefore, in the multi-resolution cache 100, processing the entire image only requires reading the image data of each resolution once in three resolutions (full resolution, half resolution and quarter resolution), as shown in Figure 1, by "Total memory read: 1.3125*F" (1+quarter+1/16=1.3125), where F identifies the size of the image frame.

總之,多分辨率高速緩存100以3個分辨率提供緩存的數據訪問,其成本為1.625*C個高速緩存單元和1.3125*F的內存帶寬。In summary, the multi-resolution cache 100 provides access to cached data at three resolutions at a cost of 1.625*C cache units and 1.3125*F of memory bandwidth.

如果掃描方向不是自上至下方向,而是自下至上,左至右或右至左,則相應地調整移位高速緩存數據並填充空數據行(或列)的順序,以便實現上文解釋的高速緩存填充機制的等效機制,但是採用鏡像或循環的順序。If the scanning direction is not top-to-bottom, but bottom-to-top, left-to-right, or right-to-left, the order of shifting cache data and filling empty data rows (or columns) is adjusted accordingly to achieve an equivalent mechanism to the cache filling mechanism explained above, but in a mirrored or cyclic order.

當訪問低分辨率高速緩存分段104和106中緩存的數據時,在以降低的空間分辨率存儲該分段中的數據的情況下,可以使用相鄰的低分辨率數據來生成所請求位置的數據的近似值,例如使用2維空間插值。When accessing data cached in low resolution cache segments 104 and 106, where the data in the segment is stored at a reduced spatial resolution, adjacent low resolution data may be used to generate an approximation of the data at the requested location, for example using 2-dimensional spatial interpolation.

正如將在以下實施例中論述的,注意:As will be discussed in the following examples, note that:

•      高速緩存可以有2級或更多個級。•      Cache can have 2 or more levels.

•      堆棧可以水平或垂直實現。•      Stacks can be implemented horizontally or vertically.

•      數據縮減因子(例如空間分辨率降低因子)可以根據所需的訪問範圍和可用高速緩存大小來動態選擇。•      Data reduction factors (e.g. spatial resolution reduction factor) can be selected dynamically based on the required access range and available cache size.

•      每個分辨率級的水平和垂直數據縮減(例如空間分辨率降低級)可以是相等的或可以彼此不同。•      The horizontal and vertical data reduction for each resolution level (e.g., spatial resolution reduction levels) can be equal or can be different from each other.

•      高速緩存不需要圍繞當前像素位置對稱地定位,而是可以與相對於當前像素位置有(水平和/垂直)偏移(即所說的高速緩存的傾斜定位)來佈置。•      The cache does not need to be positioned symmetrically around the current pixel position, but can be arranged with a (horizontal and/or vertical) offset relative to the current pixel position (so-called tilted positioning of the cache).

•      每個分辨率級的高速緩存數據分配可以動態地且以非相等的方式完成。例如,在需要時,與頂部高速緩存分段相比,可以將更大量的高速緩存大小分配給底部高速緩存分段。•      Cache data allocation for each resolution level can be done dynamically and in an unequal manner. For example, a larger amount of cache size can be allocated to the bottom cache segments compared to the top cache segments when needed.

圖2示出根據一個實施例的多分辨率高速緩存200。多分辨率高速緩存200包括全分辨率高速緩存分段202、分辨率降低器204、半分辨率高速緩存分段206、半分辨率高速緩存分段208、半分辨率高速緩存分段210、半分辨率高速緩存分段212以及分辨率提升器。片外存儲器214以通信方式耦合到全分辨率高速緩存分段202和半分辨率高速緩存分段210。多分辨率高速緩存200以類似於多分辨率高速緩存100的方式工作,只是沒有四分之一分辨率高速緩存分段。因此,只需一次分辨率降低操作,由高速緩存分段202中可用的全分辨率數據生成用於填充高速緩存分段206的二分之一分辨率數據。用於填充高速緩存分段210的二分之一分辨率數據從存儲器讀取。如圖所示,多分辨率高速緩存200具有對稱的頂部/底部分辨率分段(為了由高速緩存中可用的全分辨率數據生成二分之一分辨率數據,需要分辨率降低操作)。所需的高速緩存大小為2*C,所需的存儲器讀取帶寬大小為1.25*F。FIG. 2 illustrates a multi-resolution cache 200 according to one embodiment. The multi-resolution cache 200 includes a full-resolution cache segment 202, a resolution reducer 204, a half-resolution cache segment 206, a half-resolution cache segment 208, a half-resolution cache segment 210, a half-resolution cache segment 212, and a resolution enhancer. An off-chip memory 214 is communicatively coupled to the full-resolution cache segment 202 and the half-resolution cache segment 210. The multi-resolution cache 200 operates in a manner similar to the multi-resolution cache 100, except that there is no quarter-resolution cache segment. Therefore, only one resolution reduction operation is required to generate half-resolution data for filling the cache segment 206 from the full-resolution data available in the cache segment 202. The half-resolution data used to fill the cache segment 210 is read from the memory. As shown, the multi-resolution cache 200 has symmetrical top/bottom resolution segments (in order to generate the half-resolution data from the full-resolution data available in the cache, a resolution reduction operation is required). The required cache size is 2*C and the required memory read bandwidth size is 1.25*F.

在一個實施例中,全分辨率高速緩存分段202下方的高速緩存分段210和212被有效地統一以形成像是本來就如此的單個分段,並且全分辨率高速緩存分段202上方的高速緩存分段206和208被有效地統一以形成像是本來就如此的另一個單個分段。即,只有3個分段:全分辨率分段和兩個半分辨率(或其他分辨率)分段。In one embodiment, cache segments 210 and 212 below full-resolution cache segment 202 are effectively unified to form a single segment as it were, and cache segments 206 and 208 above full-resolution cache segment 202 are effectively unified to form another single segment as it were. That is, there are only three segments: a full-resolution segment and two half-resolution (or other resolution) segments.

圖3示出根據一個實施例的多分辨率高速緩存300。多分辨率高速緩存300以類似於多分辨率高速緩存200的方式工作,所不同的是全分辨率高速緩存分段302與半分辨率高速緩存分段304完全重疊,從而不再需要分辨率降低操作。具體地,多分辨率高速緩存300包括全分辨率高速緩存分段302、半分辨率高速緩存分段304、半分辨率高速緩存分段308、半分辨率高速緩存分段310、半分辨率高速緩存分段312、半分辨率高速緩存分段314以及分辨率提升器316。片外存儲器306以通信方式耦合到全分辨率高速緩存分段302和半分辨率高速緩存分段314。所需的高速緩存大小為2.25*C,所需的存儲器讀取帶寬大小為1.25*F。FIG3 illustrates a multi-resolution cache 300 according to one embodiment. The multi-resolution cache 300 operates in a manner similar to the multi-resolution cache 200, except that the full-resolution cache segment 302 completely overlaps the half-resolution cache segment 304, thereby eliminating the need for a resolution reduction operation. Specifically, the multi-resolution cache 300 includes a full-resolution cache segment 302, a half-resolution cache segment 304, a half-resolution cache segment 308, a half-resolution cache segment 310, a half-resolution cache segment 312, a half-resolution cache segment 314, and a resolution upscaling device 316. The off-chip memory 306 is communicatively coupled to the full-resolution cache segment 302 and the half-resolution cache segment 314. The required cache size is 2.25*C, and the required memory read bandwidth is 1.25*F.

圖4示出根據一個實施例的多分辨率高速緩存400。多分辨率高速緩存400包括全分辨率高速緩存分段402、半分辨率高速緩存分段404、半分辨率高速緩存分段406、半分辨率高速緩存分段408、半分辨率高速緩存分段410、分辨率降低器412、分辨率降低器414、分辨率提升器418以及分辨率提升器420。片外存儲器416以通信方式耦合到全分辨率高速緩存分段402。4 illustrates a multi-resolution cache 400 according to one embodiment. The multi-resolution cache 400 includes a full-resolution cache segment 402, a half-resolution cache segment 404, a half-resolution cache segment 406, a half-resolution cache segment 408, a half-resolution cache segment 410, a resolution downsizer 412, a resolution downsizer 414, a resolution upsizer 418, and a resolution upsizer 420. An off-chip memory 416 is communicatively coupled to the full-resolution cache segment 402.

多分辨率高速緩存400,與多分辨率高速緩存100一樣,具有3個分辨率,但具有不對稱的頂部/底部分辨率分段。為了由全分辨率高速緩存分段406中可用的全分辨率數據生成二分之一分辨率數據,以及由半分辨率高速緩存分段408中可用的二分之一分辨率數據生成四分之一分辨率數據,需要兩次降低分辨率的操作。在高速緩存堆棧的下半部處使用3個全分辨率級,消除了從存儲器中讀取多個圖像分辨率的必要性;只需要從存儲器中讀取單個(全)分辨率圖像。所需的高速緩存大小為3.3125*C,所需的存儲器讀取帶寬大小為1*F。Multi-resolution cache 400, like multi-resolution cache 100, has 3 resolutions, but has asymmetric top/bottom resolution segments. In order to generate half-resolution data from the full-resolution data available in full-resolution cache segment 406, and to generate quarter-resolution data from the half-resolution data available in half-resolution cache segment 408, two resolution reduction operations are required. Using 3 full-resolution levels in the bottom half of the cache stack eliminates the necessity to read multiple image resolutions from memory; only a single (full) resolution image needs to be read from memory. The required cache size is 3.3125*C, and the required memory read bandwidth size is 1*F.

圖5示出根據一個實施例的多分辨率高速緩存500。多分辨率高速緩存500與全分辨率高速緩存分段502、半分辨率高速緩存分段504、四分之一分辨率高速緩存分段506、半分辨率高速緩存分段508、四分之一分辨率高速緩存分段510、分辨率降低器512、分辨率降低器514、分辨率提升器518以及分辨率提升器520。然而,當前像素行在該示例中向上傾斜(即,當前像素行無需居中於全分辨率高速緩存分段502中間)。片外存儲器516以通信方式耦合到全分辨率高速緩存分段502和四分之一分辨率高速緩存分段506。FIG5 illustrates a multi-resolution cache 500 according to one embodiment. The multi-resolution cache 500 is coupled to a full-resolution cache segment 502, a half-resolution cache segment 504, a quarter-resolution cache segment 506, a half-resolution cache segment 508, a quarter-resolution cache segment 510, a resolution reducer 512, a resolution reducer 514, a resolution upscaling 518, and a resolution upscaling 520. However, the current pixel row is tilted upward in this example (i.e., the current pixel row need not be centered in the middle of the full-resolution cache segment 502). An off-chip memory 516 is communicatively coupled to the full-resolution cache segment 502 and the quarter-resolution cache segment 506.

圖6示出根據一個實施例的多分辨率高速緩存600。在該實施例中,所有高速緩存分段的大小被動態地分配。多分辨率高速緩存600包括全分辨率高速緩存分段602、半分辨率高速緩存分段604、半分辨率高速緩存分段606、半分辨率高速緩存分段608、四分之一分辨率高速緩存分段610、分辨率降低器612、分辨率降低器614、分辨率提升器618以及分辨率提升器620。全分辨率高速緩存分段602、半分辨率高速緩存分段604和半分辨率高速緩存分段606以通信方式耦合到片外存儲器616。FIG6 shows a multi-resolution cache 600 according to an embodiment. In this embodiment, the sizes of all cache segments are dynamically allocated. The multi-resolution cache 600 includes a full-resolution cache segment 602, a half-resolution cache segment 604, a half-resolution cache segment 606, a half-resolution cache segment 608, a quarter-resolution cache segment 610, a resolution reducer 612, a resolution reducer 614, a resolution enhancer 618, and a resolution enhancer 620. The full-resolution cache segment 602, the half-resolution cache segment 604, and the half-resolution cache segment 606 are coupled to an off-chip memory 616 in a communication manner.

多分辨率高速緩存600以類似於多分辨率高速緩存500的方式工作,其中當前像素行在該示例中向上傾斜(即,當前像素行無需居中於全分辨率高速緩存分段602中間),所不同的是高速緩存數據分配在全分辨率高速緩存分段602的頂部和底部是不均等的(較多高速緩存數據被分配給底部,以及較少的被分配給頂部,這可以動態地來執行)。Multi-resolution cache 600 operates in a manner similar to multi-resolution cache 500, where the current pixel row is tilted upward in this example (i.e., the current pixel row need not be centered in the middle of full-resolution cache segment 602), except that the cache data is distributed unequally at the top and bottom of full-resolution cache segment 602 (more cache data is allocated to the bottom and less is allocated to the top, which can be performed dynamically).

在其最基本的實施例中,多分辨率高速緩存系統包括兩個分段,每個分段具有不同的分辨率,由此較高分辨率的高速緩存分段從片外存儲器獲得其內容,如果高分辨率分段中沒有該內容可用,則較低分辨率的高速緩存分段從片外存儲器獲取其內容,或如果高分辨率分段中有該內容可用,則通過將高分辨率分段的內容降低分辨率來獲得其內容。In its most basic implementation, a multi-resolution cache system comprises two segments, each having a different resolution, whereby the higher resolution cache segment obtains its content from an off-chip memory if the content is not available in the higher resolution segment, and the lower resolution cache segment obtains its content from an off-chip memory if the content is available in the higher resolution segment, or obtains its content by downscaling the content of the higher resolution segment if the content is available in the higher resolution segment.

圖7示出根據一個實施例的方法700。本文描述的任何緩存可以執行方法700。在框702中,多分辨率高速緩存從片外存儲器讀取全分辨率的一個高速緩存行的數據。在框704中,多分辨率高速緩存將讀取數據存儲在高速緩存的第一全分辨率高速緩存分段中。在框706中,在數據被移位出全分辨率高速緩存時,多分辨率高速緩存將讀取的數據降低分辨率到比全分辨率低的分辨率。在框708中,多分辨率高速緩存將降低分辨率的數據移位到高速緩存的第一低分辨率高速緩存分段。在框710中,多分辨率高速緩存從片外存儲器讀取全分辨率的第二高速緩存行的數據。在框712中,多分辨率高速緩存將讀取的第二高速緩存行的數據存儲在第一全分辨率高速緩存分段中。在框714中,多分辨率高速緩存將降低分辨率的數據提升分辨率到全分辨率。在框716中,多分辨率高速緩存輸出提升了分辨率的數據(例如,用於顯示或其他目的)。FIG. 7 illustrates a method 700 according to one embodiment. Any cache described herein may perform method 700. In box 702, a multi-resolution cache reads data of a cache line at full resolution from an off-chip memory. In box 704, the multi-resolution cache stores the read data in a first full-resolution cache segment of the cache. In box 706, as the data is shifted out of the full-resolution cache, the multi-resolution cache reduces the resolution of the read data to a resolution lower than the full resolution. In box 708, the multi-resolution cache shifts the reduced-resolution data to a first low-resolution cache segment of the cache. In box 710, the multi-resolution cache reads data of a second cache line at full resolution from the off-chip memory. In block 712, the multi-resolution cache stores the data of the read second cache line in the first full-resolution cache segment. In block 714, the multi-resolution cache upscales the reduced-resolution data to full resolution. In block 716, the multi-resolution cache outputs the upscaled-resolution data (e.g., for display or other purposes).

以下示例描述了本文論述的方法、計算機可讀介質和系統(例如,機器、設備或其他裝置)的多種實施例。The following examples describe various embodiments of the methods, computer-readable media, and systems (eg, machines, devices, or other apparatuses) discussed herein.

1.一種多分辨率緩存,包括:1. A multi-resolution cache comprising:

第一高速緩存分段、第二高速緩存分段和第三高速緩存分段,所述第一高速緩存分段、第二高速緩存分段和第三高速緩存分段分別具有第一分辨率、第二分辨率和第三分辨率,所述第二分辨率小於所述第一分辨率和所述第三分辨率小於所述第二分辨率,所述第一高速緩存分段、第二高速緩存分段和第三高速緩存分段以通信方式耦合到片外存儲器,所述第一高速緩存分段、第二高速緩存分段和第三高速緩存分段被配置成接收具有所述第一分辨率、第二分辨率和第三分辨率的高速緩存行的數據;a first cache segment, a second cache segment, and a third cache segment, the first cache segment, the second cache segment, and the third cache segment having a first resolution, a second resolution, and a third resolution, respectively, the second resolution being less than the first resolution and the third resolution being less than the second resolution, the first cache segment, the second cache segment, and the third cache segment being communicatively coupled to an off-chip memory, the first cache segment, the second cache segment, and the third cache segment being configured to receive data of cache lines having the first resolution, the second resolution, and the third resolution;

第四高速緩存分段和第五高速緩存分段,所述第四高速緩存分段和第五高速緩存分段分別具有所述第二分辨率和所述第三分辨率;a fourth cache segment and a fifth cache segment, the fourth cache segment and the fifth cache segment having the second resolution and the third resolution, respectively;

第一分辨率降低器,所述第一分辨率降低器以通信方式耦合到所述第一高速緩存分段和第四高速緩存分段,且被配置成在所述分辨率高速緩存行從所述第一高速緩存分段移位到所述第四高速緩存分段時降低所述分辨率;a first resolution reducer communicatively coupled to the first cache segment and a fourth cache segment and configured to reduce the resolution when the resolution cache line is shifted from the first cache segment to the fourth cache segment;

第二分辨率降低器,所述第二分辨率降低器以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,且被配置成在降低分辨率的緩存數據行從所述第四高速緩存分段移位到所述第五個高速緩存分段時進一步降低所述降低分辨率的緩存數據的分辨率;a second resolution reducer communicatively coupled to the fourth cache segment and the fifth cache segment and configured to further reduce a resolution of the reduced-resolution cache data as the reduced-resolution cache data line is shifted from the fourth cache segment to the fifth cache segment;

第一分辨率提升器和第二分辨率提升器,所述第一分辨率提升器和第二分辨率提升器分別以通信方式耦合到所述第二高速緩存分段和第三高速緩存分段且還分別以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,其被配置成將所述降低分辨率的緩存數據和進一步降低分辨率的緩衝數據提升到所述第一分辨率,並且輸出提升了分辨率的緩存數據。A first resolution upscaling device and a second resolution upscaling device, wherein the first resolution upscaling device and the second resolution upscaling device are respectively coupled to the second cache segment and the third cache segment in a communication manner and are also respectively coupled to the fourth cache segment and the fifth cache segment in a communication manner, and are configured to upscale the reduced-resolution cache data and the further reduced-resolution cache data to the first resolution and output the cache data with the upscaled resolution.

2.示例1的多分辨率高速緩存,其中所述第二分辨率是所述第一分辨率的一半,以及所述第三分辨率是所述第一分辨率的四分之一。2. The multi-resolution cache of Example 1, wherein the second resolution is half of the first resolution, and the third resolution is one quarter of the first resolution.

3.前述示例中任一示例的多分辨率高速緩存,其中所述第一分辨率是全分辨率。3. The multi-resolution cache of any of the preceding examples, wherein the first resolution is full resolution.

4.前述示例中任一示例的多分辨率高速緩存,其中所述第二高速緩存分段、第三高速緩存分段、第四高速緩存分段和第五高速緩存分段被配置成圍繞所述第一高速緩存分段對稱的配置。4. The multi-resolution cache of any of the preceding examples, wherein the second cache segment, the third cache segment, the fourth cache segment, and the fifth cache segment are configured in a symmetrical configuration around the first cache segment.

5.前述示例中任一示例的多分辨率高速緩存,其中所述第二高速緩存分段的高速緩存數據分配不等於所述第四高速緩存分段的高速緩存數據分配。5. The multi-resolution cache of any of the preceding examples, wherein the cache data allocation of the second cache segment is not equal to the cache data allocation of the fourth cache segment.

6.前述示例中任一示例的多分辨率高速緩存,其中所有高速緩存分段的高速緩存數據大小分配和分辨率是被動態地或非均等地分配的,從而對降頻器進行相應調整,以從數據源分辨率生成降低分辨率的目標分辨率。6. A multi-resolution cache as in any of the preceding examples, wherein cache data size allocations and resolutions of all cache segments are dynamically or unequally allocated, such that a downscaler is adjusted accordingly to generate a reduced resolution target resolution from a data source resolution.

7.前述示例中任一示例的多分辨率高速緩存,其中當前像素行不居中於所述第一高速緩存分段。7. The multi-resolution cache of any of the preceding examples, wherein the current row of pixels is not centered within the first cache segment.

8.前述示例中任一示例的多分辨率高速緩存,還包括第六高速緩存分段,所述第六高速緩存分段具有小於所述第一分辨率的分辨率且重疊於所述第一高速緩存分段。8. The multi-resolution cache of any of the preceding examples, further comprising a sixth cache segment having a resolution less than the first resolution and overlapping the first cache segment.

9.一種操作前述示例中任一示例的多分辨率高速緩存的方法,包括:9. A method of operating a multi-resolution cache of any of the preceding examples, comprising:

從所述片外存儲器讀取全分辨率的一個高速緩存行的數據;Reading data of one cache line at full resolution from the off-chip memory;

將讀取的數據存儲在所述高速緩存的所述第一個高速緩存分段中;storing the read data in the first cache segment of the cache;

將所述第一高速緩存分段的所述數據降低分辨率到低於所述全分辨率的分辨率;reducing the resolution of the data of the first cache segment to a resolution lower than the full resolution;

將降低分辨率的數據移位到所述高速緩存的所述第四高速緩存分段;shifting reduced resolution data to the fourth cache segment of the cache;

從所述片外存儲器讀取全分辨率的第二高速緩存行的數據;Reading data of a second cache line at full resolution from the off-chip memory;

將讀取的第二緩存行的數據存儲在所述第一高速緩存分段中;storing the read data of the second cache line in the first cache segment;

將降低分辨率的數據提升分辨率到所述全分辨率;以及Upscaling the reduced resolution data to the full resolution; and

輸出提升了分辨率的數據。Outputs data with increased resolution.

10.一種多分辨率緩存,包括:10. A multi-resolution cache comprising:

第一高速緩存分段、第二高速緩存分段和第三高速緩存分段,所述第一高速緩存分段具有第一分辨率以及所述第二高速緩存分段和第三高速緩存分段具有第二分辨率,所述第二分辨率小於所述第一分辨率,所述第一高速緩存分段和第三高速緩存分段以通信方式耦合到片外存儲器,所述第一高速緩存分段和第三高速緩存分段被配置成接收具有所述第一分辨率和第二分辨率的高速緩存行的數據;a first cache segment, a second cache segment, and a third cache segment, the first cache segment having a first resolution and the second cache segment and the third cache segment having a second resolution, the second resolution being less than the first resolution, the first cache segment and the third cache segment being communicatively coupled to an off-chip memory, the first cache segment and the third cache segment being configured to receive data of cache lines having the first resolution and the second resolution;

第四高速緩存分段和第五高速緩存分段,所述第四高速緩存分段和第五高速緩存分段具有所述第二分辨率;a fourth cache segment and a fifth cache segment, the fourth cache segment and the fifth cache segment having the second resolution;

第一分辨率降低器,所述第一分辨率降低器以通信方式耦合到所述第一高速緩存分段和第四高速緩存分段,且被配置成在所述第一分辨率的緩存數據行從所述第一高速緩存分段移位到所述第四高速緩存分段時降低所述分辨率;a first resolution reducer communicatively coupled to the first cache segment and a fourth cache segment and configured to reduce the resolution when a cache data line at the first resolution is shifted from the first cache segment to the fourth cache segment;

第一分辨率提升器,所述第一分辨率提升器以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,且被配置成將降低分辨率的緩存數據提升到所述第一分辨率並輸出提升了分辨率的緩存數據。A first resolution upscaling device is communicatively coupled to the fourth cache segment and the fifth cache segment and is configured to upscale the reduced-resolution cache data to the first resolution and output the upscaled-resolution cache data.

11.前述示例中任一示例的多分辨率緩存,其中所述第二緩存分段被配置成在數據從所述第三高速緩存分段移位到所述第二緩存分段時從所述第三緩存分段接收具有所述第二分辨率的緩存數據。11. The multi-resolution cache of any of the preceding examples, wherein the second cache segment is configured to receive cache data having the second resolution from the third cache segment when data is shifted from the third cache segment to the second cache segment.

12.前述示例中任一示例的多分辨率高速緩存,其中所述第二分辨率是所述第一分辨率的二分之一。12. The multi-resolution cache of any of the preceding examples, wherein the second resolution is half the first resolution.

13.前述示例中任一示例的多分辨率高速緩存,其中所述第二高速緩存分段、第三高速緩存分段、第四高速緩存分段和第五高速緩存分段被配置成圍繞所述第一高速緩存分段對稱的配置。13. The multi-resolution cache of any of the preceding examples, wherein the second cache segment, the third cache segment, the fourth cache segment, and the fifth cache segment are configured in a symmetrical configuration around the first cache segment.

14.前述示例中任一示例的多分辨率高速緩存,其中所有高速緩存分段的高速緩存數據分配是不均等的。14. The multi-resolution cache of any of the preceding examples, wherein cache data distribution across all cache segments is unequal.

15.前述示例中任一示例的多分辨率高速緩存,還包括第六高速緩存分段,所述第六高速緩存分段具有小於所述第一分辨率的分辨率且重疊於所述第一高速緩存分段。15. The multi-resolution cache of any of the preceding examples, further comprising a sixth cache segment having a resolution less than the first resolution and overlapping the first cache segment.

16.一種多分辨率緩存,包括:16. A multi-resolution cache comprising:

第一高速緩存分段、第二高速緩存分段和第三高速緩存分段,所述第一高速緩存分段、第二高速緩存分段和第三高速緩存分段具有第一分辨率,所述第一高速緩存分段以通信方式耦合到片外存儲器,所述第一高速緩存分段被配置成接收具有所述第一分辨率的高速緩存行的數據;a first cache segment, a second cache segment, and a third cache segment, the first cache segment, the second cache segment, and the third cache segment having a first resolution, the first cache segment being communicatively coupled to an off-chip memory, the first cache segment being configured to receive data of a cache line having the first resolution;

第四高速緩存分段和第五高速緩存分段,所述第四高速緩存分段和第五高速緩存分段分別具有所述第二分辨率和第三分辨率,所述第二分辨率小於所述第一分辨率和所述第三分辨率小於所述第二分辨率;a fourth cache segment and a fifth cache segment, the fourth cache segment and the fifth cache segment having the second resolution and a third resolution, respectively, the second resolution being smaller than the first resolution and the third resolution being smaller than the second resolution;

第一分辨率降低器,所述第一分辨率降低器以通信方式耦合到所述第四高速緩存分段,且被配置成在第一分辨率的高速緩存行從所述第三高速緩存分段移位到所述第四高速緩存分段時降低所述分辨率;a first resolution reducer communicatively coupled to the fourth cache segment and configured to reduce the resolution of a cache line of a first resolution when the cache line is shifted from the third cache segment to the fourth cache segment;

第二分辨率降低器,所述第二分辨率降低器以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,且被配置成在所述降低分辨率的緩存數據行從所述第四高速緩存分段移位到所述第五個高速緩存分段時進一步降低所述降低分辨率的緩存數據的分辨率;以及a second resolution reducer communicatively coupled to the fourth cache segment and the fifth cache segment and configured to further reduce a resolution of the reduced-resolution cache data line as the reduced-resolution cache data line is shifted from the fourth cache segment to the fifth cache segment; and

第一分辨率提升器和第二分辨率提升器,所述第一分辨率提升器和第二分辨率提升器分別以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,且被配置成將所述降低分辨率的緩存數據和進一步降低率的緩存數據提升到所述第一分辨率並輸出提升了分辨率的緩存數據。A first resolution upscaling device and a second resolution upscaling device are respectively coupled to the fourth cache segment and the fifth cache segment in a communication manner, and are configured to upscale the reduced-resolution cache data and the further reduced-rate cache data to the first resolution and output the cache data with the upscaled resolution.

17.前述示例中任一示例的多分辨率高速緩存,其中所述第二分辨率是所述第一分辨率的一半,以及所述第三分辨率是所述第一分辨率的四分之一。17. The multi-resolution cache of any of the preceding examples, wherein the second resolution is half the first resolution, and the third resolution is one quarter the first resolution.

18.前述示例中任一項的多分辨率高速緩存,其中當前像素行不居中於所述第三高速緩存分段。18. The multi-resolution cache of any of the preceding examples, wherein the current pixel row is not centered within the third cache segment.

19.一種操作前述示例中任一示例的多高速緩存系統的方法,包括:19. A method of operating a multi-cache system as in any of the preceding examples, comprising:

從所述片外存儲器讀取全分辨率的一個高速緩存行的數據;Reading data of one cache line at full resolution from the off-chip memory;

將讀取的數據存儲在所述高速緩存的所述第一個高速緩存分段中;storing the read data in the first cache segment of the cache;

將所述第一高速緩存分段的數據降低分辨率到低於所述全分辨率的分辨率;reducing the resolution of the data of the first cache segment to a resolution lower than the full resolution;

將降低分辨率的數據移位到所述高速緩存的所述第四高速緩存分段;shifting reduced resolution data to the fourth cache segment of the cache;

從所述片外存儲器讀取全分辨率的第二高速緩存行的數據;Reading data of a second cache line at full resolution from the off-chip memory;

將讀取的第二緩存行的數據存儲在所述第一高速緩存分段中;storing the read data of the second cache line in the first cache segment;

將降低分辨率的數據提升分辨率到全分辨率;以及Upscaling the reduced resolution data to full resolution; and

輸出提升了分辨率的數據。Outputs data with increased resolution.

20.一種多分辨率緩存,包括:20. A multi-resolution cache comprising:

第一高速緩存分段和第二高速緩存分段,所述第一分段具有第一分辨率以及所述第二分段具有第二分辨率,所述第二分辨率小於所述第一分辨率,所述第一高速緩存分段以通信方式耦合到片外存儲器,所述第一高速緩存分段被配置成接收具有所述第一分辨率的高速緩存行的數據;a first cache segment and a second cache segment, the first segment having a first resolution and the second segment having a second resolution, the second resolution being less than the first resolution, the first cache segment being communicatively coupled to an off-chip memory, the first cache segment being configured to receive data of a cache line having the first resolution;

第一分辨率降低器,所述第一分辨率降低器以通信方式耦合到所述第一高速緩存分段和第二高速緩存分段,且被配置成在接收的第一分辨率的高速緩存行數據從所述第一高速緩存分段移位到所述第二高速緩存分段時降低所述接收的高速緩存行數據的分辨率;a first resolution reducer communicatively coupled to the first cache segment and the second cache segment and configured to reduce a resolution of received cache line data at a first resolution as the received cache line data is shifted from the first cache segment to the second cache segment;

第一分辨率提升器,所述第一分辨率提升器以通信方式耦合到所述第二高速緩存分段,且被配置成將降低分辨率的緩存數據提升到所述第一分辨率並輸出提升了分辨率的緩存數據。A first resolution upscaling device is communicatively coupled to the second cache segment and is configured to upscale the reduced resolution cache data to the first resolution and output the upscaled resolution cache data.

21.前述示例中任一示例的多分辨率高速緩存,其中所有高速緩存分段的高速緩存數據大小分配和分辨率是被動態地或非均等地分配的,從而對降頻器進行相應調整,以從數據源分辨率生成降低分辨率的目標分辨率。21. A multi-resolution cache as in any of the preceding examples, wherein cache data size allocations and resolutions of all cache segments are dynamically or unequally allocated, such that a downscaler is adjusted accordingly to generate a reduced resolution target resolution from a data source resolution.

22.前述示例中任一示例的多分辨率高速緩存,其中所述第二高速緩存分段以通信方式耦合到所述片外存儲器,且還被配置成在所述第一高速緩存分段中沒有所述高速緩存行數據可用時,從所述片外存儲器接收所述高速緩存行數據。22. The multi-resolution cache of any of the preceding examples, wherein the second cache segment is communicatively coupled to the off-chip memory and is further configured to receive the cache line data from the off-chip memory when the cache line data is not available in the first cache segment.

儘管所描述的流程圖可能將操作圖示為順序處理,但是可以並行或同時執行許多操作。此外,可以重新安排操作的順序。當其操作完成時,過程被終止。過程可以對應方法、程序、算法等。方法的操作可以被全部或部分執行,可以與其他方法中的部分或全部操作結合來執行,也可以由任何數量的不同系統,例如本文所述的系統,或其任何部分,例如包括在這些系統中任一個系統中包括的處理器來執行。Although the described flow charts may illustrate operations as a sequential process, many operations may be performed in parallel or simultaneously. In addition, the order of the operations may be rearranged. A process is terminated when its operations are completed. A process may correspond to a method, procedure, algorithm, etc. The operations of a method may be performed in whole or in part, may be performed in conjunction with some or all of the operations in other methods, and may be performed by any number of different systems, such as the systems described herein, or any portion thereof, such as a processor included in any of these systems.

綜上所述,本發明所揭露之技術手段確能有效解決習知等問題,並達致預期之目的與功效,且申請前未見諸於刊物、未曾公開使用且具長遠進步性,誠屬專利法所稱之發明無誤,爰依法提出申請,懇祈  鈞上惠予詳審並賜准發明專利,至感德馨。In summary, the technical means disclosed in this invention can effectively solve the problems of knowledge and achieve the expected purpose and effect. Moreover, it has not been seen in publications and has not been publicly used before the application, and it has long-term progress. It is indeed an invention as referred to in the Patent Law. Therefore, I have filed an application in accordance with the law and sincerely pray that the Supreme Court will give a detailed review and grant the invention patent. I will be very grateful.

惟以上所述者,僅為本發明之數種較佳實施例,當不能以此限定本發明實施之範圍,即大凡依本發明申請專利範圍及發明說明書內容所作之等效變化與修飾,皆應仍屬本發明專利涵蓋之範圍內。However, the above are only several preferred embodiments of the present invention, and should not be used to limit the scope of implementation of the present invention. In other words, all equivalent changes and modifications made according to the scope of the patent application of the present invention and the contents of the invention specification should still fall within the scope of the present invention patent.

〔本發明〕 100:多分辨率高速緩存 102、104、106、108、110:高速緩存分段 114、112:分辨率降低器 116、118:分辨率提升器 120:片外存儲器 200:多分辨率高速緩存 202、206、208、210、212:高速緩存分段 204:分辨率降低器 300:多分辨率高速緩存 306:片外存儲器 302、304、308、310、312、314:高速緩存分段 316:分辨率提升器 400:多分辨率高速緩存 402、404、406、408、410:高速緩存分段 412、414:分辨率降低器 418、420:分辨率提升器 416:片外存儲器 500:多分辨率高速緩存 502:全分辨率高速緩存分段 504:半分辨率高速緩存分段 506、510:四分之一分辨率高速緩存分段 508:半分辨率高速緩存分段 516:片外存儲器 512、514:分辨率降低器 518、520:分辨率提升器 600:多分辨率高速緩存 602:全分辨率高速緩存分段 604、606、608:半分辨率高速緩存分段 610:四分之一分辨率高速緩存分段 612、614:分辨率降低器 618、620:分辨率提升器 616:片外存儲器 700:方法 702、704、706、708、710、712、714、716:框 [The present invention] 100: multi-resolution cache 102, 104, 106, 108, 110: cache segment 114, 112: resolution reducer 116, 118: resolution enhancer 120: off-chip memory 200: multi-resolution cache 202, 206, 208, 210, 212: cache segment 204: resolution reducer 300: multi-resolution cache 306: off-chip memory 302, 304, 308, 310, 312, 314: cache segment 316: resolution enhancer 400: multi-resolution cache 402, 404, 406, 408, 410: cache segment 412, 414: resolution reducer 418, 420: resolution upscaling 416: off-chip memory 500: multi-resolution cache 502: full-resolution cache segment 504: half-resolution cache segment 506, 510: quarter-resolution cache segment 508: half-resolution cache segment 516: off-chip memory 512, 514: resolution reducer 518, 520: resolution upscaling 600: multi-resolution cache 602: full-resolution cache segment 604, 606, 608: half-resolution cache segment 610: quarter-resolution cache segment 612, 614: resolution reducer 618, 620: resolution upscaling 616: off-chip memory 700: method 702, 704, 706, 708, 710, 712, 714, 716: frame

為了容易地辨明任何具體元件或動作的論述,引用編號中的一個或多個最高有效數字指代首次引入該元件所在的附圖編號。 [圖1]示出根據一個實施例的多分辨率高速緩存; [圖2]示出根據一個實施例的多分辨率高速緩存; [圖3]示出根據一個實施例的多分辨率高速緩存; [圖4]示出根據一個實施例的多分辨率高速緩存; [圖5]示出根據一個實施例的多分辨率高速緩存; [圖6]示出根據一個實施例的多分辨率高速緩存; [圖7]示出根據一個實施例的方法。 To easily identify the discussion of any specific element or action, one or more of the most significant digits in a reference number refers to the figure number in which the element is first introduced. [Figure 1] shows a multi-resolution cache according to an embodiment; [Figure 2] shows a multi-resolution cache according to an embodiment; [Figure 3] shows a multi-resolution cache according to an embodiment; [Figure 4] shows a multi-resolution cache according to an embodiment; [Figure 5] shows a multi-resolution cache according to an embodiment; [Figure 6] shows a multi-resolution cache according to an embodiment; [Figure 7] shows a method according to an embodiment.

300:多分辨率高速緩存 300:Multi-resolution cache

306:片外存儲器 306: Off-chip memory

302、304、308、310、312、314:高速緩存分段 302, 304, 308, 310, 312, 314: Cache segments

316:分辨率提升器 316: Resolution Enhancer

Claims (19)

一種多分辨率緩存,其特徵在於,包括:第一高速緩存分段、第二高速緩存分段和第三高速緩存分段,所述第一高速緩存分段、第二高速緩存分段和第三高速緩存分段分別具有第一分辨率、第二分辨率和第三分辨率,所述第二分辨率小於所述第一分辨率以及所述第三分辨率小於所述第二分辨率,所述第一高速緩存分段、第二高速緩存分段和第三高速緩存分段以通信方式耦合到片外存儲器,所述第一高速緩存分段、第二高速緩存分段和第三高速緩存分段被配置成接收具有所述第一分辨率、第二分辨率和第三分辨率的高速緩存行的數據,當前像素行不居中於所述第一高速緩存分段;第四高速緩存分段和第五高速緩存分段,所述第四高速緩存分段和第五高速緩存分段分別具有所述第二分辨率和第三分辨率;第一分辨率降低器,所述第一分辨率降低器以通信方式耦合到所述第一高速緩存分段和第四高速緩存分段,且被配置成在所述分辨率高速緩存行從所述第一高速緩存分段移位到所述第四高速緩存分段時降低所述分辨率;第二分辨率降低器,所述第二分辨率降低器以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,且被配置成在降低分辨率的緩存數據行從所述第四高速緩存分段移位到所述第五個高速緩存分段時進一步降低所述降低分辨率的緩存數據的分辨率;第一分辨率提升器和第二分辨率提升器,所述第一分辨率提升器和第二分辨率提升器分別以通信方式耦合到所述第二高速緩存分段和第三高速緩存分段且還分別以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段, 其被配置成將所述降低分辨率的緩存數據和進一步降低分辨率的緩衝數據提升到所述第一分辨率,並且輸出提升了分辨率的緩存數據。 A multi-resolution cache, characterized in that it includes: a first high-speed cache segment, a second high-speed cache segment and a third high-speed cache segment, wherein the first high-speed cache segment, the second high-speed cache segment and the third high-speed cache segment have a first resolution, a second resolution and a third resolution respectively, the second resolution is smaller than the first resolution and the third resolution is smaller than the second resolution, the first high-speed cache segment, the second high-speed cache segment and the third high-speed cache segment are coupled to an off-chip memory in a communication manner a cache memory, the first cache segment, the second cache segment, and the third cache segment configured to receive data of cache lines having the first resolution, the second resolution, and the third resolution, the current pixel line not being centered in the first cache segment; a fourth cache segment and a fifth cache segment, the fourth cache segment and the fifth cache segment having the second resolution and the third resolution, respectively; a first resolution reducer, the first resolution reducer being communicatively coupled to The first cache segment and the fourth cache segment are configured to reduce the resolution when the resolution cache line is shifted from the first cache segment to the fourth cache segment; a second resolution reducer, the second resolution reducer is communicatively coupled to the fourth cache segment and the fifth cache segment and is configured to further reduce the reduced resolution when the reduced resolution cache data line is shifted from the fourth cache segment to the fifth cache segment. The first and second resolution upscaling devices are respectively coupled to the second and third cache segments in a communication manner and are also respectively coupled to the fourth and fifth cache segments in a communication manner, and are configured to upscale the reduced-resolution cache data and the further reduced-resolution cache data to the first resolution, and output the cache data with the upscaled resolution. 如請求項1所述之多分辨率高速緩存,其中,所述第二分辨率是所述第一分辨率的一半,以及所述第三分辨率是所述第一分辨率的四分之一。 A multi-resolution cache as claimed in claim 1, wherein the second resolution is half of the first resolution, and the third resolution is one quarter of the first resolution. 如請求項2所述之多分辨率高速緩存,其中,所述第一分辨率是全分辨率。 A multi-resolution cache as claimed in claim 2, wherein the first resolution is full resolution. 如請求項1所述之多分辨率高速緩存,其中,所述第二高速緩存分段、第三高速緩存分段、第四高速緩存分段和第五高速緩存分段被配置成圍繞所述第一高速緩存分段對稱的配置。 A multi-resolution cache as claimed in claim 1, wherein the second cache segment, the third cache segment, the fourth cache segment and the fifth cache segment are configured to be symmetrical around the first cache segment. 如請求項1所述之多分辨率高速緩存,其中,所述第二高速緩存分段的高速緩存數據分配不等於所述第四高速緩存分段的高速緩存數據分配。 A multi-resolution cache as claimed in claim 1, wherein the cache data allocation of the second cache segment is not equal to the cache data allocation of the fourth cache segment. 如請求項1所述之多分辨率高速緩存,其中,所有高速緩存分段的高速緩存數據大小分配和分辨率是被動態地或非均等地分配的,從而對降頻器進行相應調整,以從數據源分辨率生成降低分辨率的目標分辨率。 A multi-resolution cache as claimed in claim 1, wherein cache data size allocations and resolutions of all cache segments are dynamically or unequally allocated, thereby adjusting the downscaler accordingly to generate a reduced resolution target resolution from a data source resolution. 如請求項1所述之多分辨率高速緩存,其中,還包括第六高速緩存分段,所述第六高速緩存分段具有小於所述第一分辨率的分辨率且重疊於所述第一高速緩存分段。 The multi-resolution cache as claimed in claim 1, further comprising a sixth cache segment, wherein the sixth cache segment has a resolution less than the first resolution and overlaps the first cache segment. 一種操作如請求項1所述之多分辨率高速緩存的方法,其特徵在於,包括:從所述片外存儲器讀取全分辨率的一個高速緩存行的數據;將讀取的數據存儲在所述高速緩存的所述第一個高速緩存分段中;將所述第一高速緩存分段的數據降低分辨率到低於所述全分辨率的分辨率; 將降低分辨率的數據移位到所述高速緩存的所述第四高速緩存分段;從所述片外存儲器讀取全分辨率的第二高速緩存行的數據;將讀取的第二緩存行的數據存儲在所述第一高速緩存分段中;將降低分辨率的數據提升分辨率到全分辨率;以及輸出提升了分辨率的數據。 A method of operating a multi-resolution cache as described in claim 1, characterized in that it includes: reading data of a cache line at full resolution from the off-chip memory; storing the read data in the first cache segment of the cache; reducing the resolution of the data in the first cache segment to a resolution lower than the full resolution; shifting the reduced resolution data to the fourth cache segment of the cache; reading data of a second cache line at full resolution from the off-chip memory; storing the read data of the second cache line in the first cache segment; upscaling the resolution of the downscaling data to the full resolution; and outputting the upscaling data. 一種多分辨率緩存,其特徵在於,包括:第一高速緩存分段、第二高速緩存分段和第三高速緩存分段,所述第一高速緩存分段具有第一分辨率以及所述第二高速緩存分段和第三高速緩存分段具有第二分辨率,所述第二分辨率小於所述第一分辨率,所述第一高速緩存分段和第三高速緩存分段以通信方式耦合到片外存儲器,所述第一高速緩存分段和第三高速緩存分段被配置成接收具有所述第一分辨率和第二分辨率的高速緩存行的數據;第四高速緩存分段和第五高速緩存分段,所述第四高速緩存分段和第五高速緩存分段具有所述第二分辨率;第一分辨率降低器,所述第一分辨率降低器以通信方式耦合到所述第一高速緩存分段和第四高速緩存分段,且被配置成在所述第一分辨率的緩存數據行從所述第一高速緩存分段移位到所述第四高速緩存分段時降低所述分辨率;第一分辨率提升器,所述第一分辨率提升器以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,且被配置成將降低分辨率的緩存數據提升到所述第一分辨率並輸出提升了分辨率的緩存數據,所有高速緩存分段的高速緩存數據分配是不均等的。 A multi-resolution cache, characterized in that it includes: a first cache segment, a second cache segment, and a third cache segment, wherein the first cache segment has a first resolution and the second cache segment and the third cache segment have a second resolution, the second resolution being less than the first resolution, the first cache segment and the third cache segment being coupled to an off-chip memory in a communication manner, the first cache segment and the third cache segment being configured to receive data of cache lines having the first resolution and the second resolution; a fourth cache segment and a fifth cache segment, wherein the fourth cache segment and the fifth cache segment are coupled to an off-chip memory in a communication manner, A cache segment has the second resolution; a first resolution reducer, the first resolution reducer is communicatively coupled to the first cache segment and the fourth cache segment and is configured to reduce the resolution when a cache data line of the first resolution is shifted from the first cache segment to the fourth cache segment; a first resolution upscaling device, the first resolution upscaling device is communicatively coupled to the fourth cache segment and the fifth cache segment and is configured to upscale the downscaled cache data to the first resolution and output the upscaled cache data, and the cache data distribution of all cache segments is unequal. 如請求項9所述之多分辨率緩存,其中,所述第二緩存分段被配置成在數據從所述第三高速緩存分段移位到所述第二緩存分段時從所述第三緩存分段接收具有所述第二分辨率的緩存數據。 A multi-resolution cache as described in claim 9, wherein the second cache segment is configured to receive cache data having the second resolution from the third cache segment when data is shifted from the third cache segment to the second cache segment. 如請求項9所述之多分辨率高速緩存,其中,所述第二分辨率是所述第一分辨率的二分之一。 A multi-resolution cache as described in claim 9, wherein the second resolution is half of the first resolution. 如請求項9所述之多分辨率高速緩存,其中,所述第二高速緩存分段、第三高速緩存分段、第四高速緩存分段和第五高速緩存分段被配置成圍繞所述第一高速緩存分段對稱的配置。 A multi-resolution cache as claimed in claim 9, wherein the second cache segment, the third cache segment, the fourth cache segment and the fifth cache segment are configured to be symmetrical around the first cache segment. 如請求項9所述之多分辨率高速緩存,其中,還包括第六高速緩存分段,所述第六高速緩存分段具有小於所述第一分辨率的分辨率且重疊於所述第一高速緩存分段。 The multi-resolution cache as described in claim 9, further comprising a sixth cache segment, wherein the sixth cache segment has a resolution less than the first resolution and overlaps the first cache segment. 一種多分辨率緩存,其特徵在於,包括:第一高速緩存分段、第二高速緩存分段和第三高速緩存分段,所述第一高速緩存分段、第二高速緩存分段和第三高速緩存分段具有第一分辨率,所述第一高速緩存分段以通信方式耦合到片外存儲器,所述第一高速緩存分段被配置成接收具有所述第一分辨率的高速緩存行的數據,當前像素行不居中於所述第三高速緩存分段;第四高速緩存分段和第五高速緩存分段,所述第四高速緩存分段和第五高速緩存分段分別具有所述第二分辨率和第三分辨率,所述第二分辨率小於所述第一分辨率和所述第三分辨率小於所述第二分辨率; 第一分辨率降低器,所述第一分辨率降低器以通信方式耦合到所述第四高速緩存分段,且被配置成在第一分辨率的高速緩存行從所述第三高速緩存分段移位到所述第四高速緩存分段時降低所述分辨率;第二分辨率降低器,所述第二分辨率降低器以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,且被配置成在所述降低分辨率的緩存數據行從所述第四高速緩存分段移位到所述第五個高速緩存分段時進一步降低所述降低分辨率的緩存數據的分辨率;以及第一分辨率提升器和第二分辨率提升器,所述第一分辨率率提升器和第二分辨率提升器分別以通信方式耦合到所述第四高速緩存分段和第五高速緩存分段,且被配置成將所述降低分辨率的緩存數據和進一步降低率的緩存數據提升到所述第一分辨率並輸出提升了分辨率的緩存數據。 A multi-resolution cache, characterized in that it includes: a first cache segment, a second cache segment, and a third cache segment, wherein the first cache segment, the second cache segment, and the third cache segment have a first resolution, the first cache segment is coupled to an off-chip memory in a communication manner, the first cache segment is configured to receive data of a cache line having the first resolution, and a current pixel line is not centered in the third cache segment; a fourth cache segment and a fifth cache segment, wherein the fourth cache segment and the fifth cache segment have the second resolution and the third resolution, respectively, the second resolution is less than the first resolution and the third resolution is less than the second resolution; a first resolution reducer, the first resolution reducer is coupled to the fourth cache segment in a communication manner, and A cache line of a first resolution configured to reduce the resolution when the cache line is shifted from the third cache segment to the fourth cache segment; a second resolution reducer, the second resolution reducer is communicatively coupled to the fourth cache segment and the fifth cache segment, and is configured to further reduce the resolution of the cache data of the reduced resolution when the cache data line of the reduced resolution is shifted from the fourth cache segment to the fifth cache segment; and a first resolution upscaling device and a second resolution upscaling device, the first resolution upscaling device and the second resolution upscaling device are communicatively coupled to the fourth cache segment and the fifth cache segment, respectively, and are configured to upscale the cache data of the reduced resolution and the cache data of the further reduced resolution to the first resolution and output the cache data of the upscaled resolution. 如請求項14所述之多分辨率高速緩存,其中,所述第二分辨率是所述第一分辨率的一半,以及所述第三分辨率是所述第一分辨率的四分之一。 A multi-resolution cache as claimed in claim 14, wherein the second resolution is half of the first resolution, and the third resolution is one quarter of the first resolution. 一種操作如請求項14所述之多高速緩存系統的方法,其特徵在於,包括:從所述片外存儲器讀取全分辨率的一個高速緩存行的數據;將讀取的數據存儲在所述高速緩存的所述第一個高速緩存分段中;將所述第一高速緩存分段的數據降低分辨率到低於所述全分辨率的分辨率;將降低分辨率的數據移位到所述高速緩存的所述第四高速緩存分段;從所述片外存儲器讀取全分辨率的第二高速緩存行的數據;將讀取的第二緩存行的數據存儲在所述第一高速緩存分段中;將降低分辨率的數據提升分辨率到全分辨率;以及 輸出提升了分辨率的數據。 A method of operating a multi-cache system as described in claim 14, characterized in that it includes: reading data of a cache line at full resolution from the off-chip memory; storing the read data in the first cache segment of the cache; reducing the resolution of the data in the first cache segment to a resolution lower than the full resolution; shifting the reduced resolution data to the fourth cache segment of the cache; reading data of a second cache line at full resolution from the off-chip memory; storing the read data of the second cache line in the first cache segment; upscaling the resolution of the downscaling data to the full resolution; and outputting the upscaling data. 一種多分辨率緩存,其特徵在於,包括:第一高速緩存分段和第二高速緩存分段,所述第一高速緩存分段具有第一分辨率以及所述第二分段具有第二分辨率,所述第二分辨率小於所述第一分辨率,所述第一高速緩存分段以通信方式耦合到片外存儲器,所述第一高速緩存分段被配置成接收具有所述第一分辨率的高速緩存行的數據;第一分辨率降低器,所述第一分辨率降低器以通信方式以通信方式耦合到所述第一高速緩存分段和第二高速緩存分段,且被配置成在接收的第一分辨率的高速緩存行數據從所述第一高速緩存分段移位到所述第二高速緩存分段時降低所述接收的高速緩存行數據的分辨率;第一分辨率提升器,所述第一分辨率提升器以通信方式耦合到所述第二高速緩存分段,且被配置成將降低分辨率的緩存數據提升到所述第一分辨率並輸出提升了分辨率的緩存數據。 A multi-resolution cache, characterized in that it includes: a first cache segment and a second cache segment, the first cache segment having a first resolution and the second segment having a second resolution, the second resolution being less than the first resolution, the first cache segment being communicatively coupled to an off-chip memory, the first cache segment being configured to receive cache line data having the first resolution; a first resolution reducer, the first resolution reducer being communicatively coupled to the first cache segment and the second cache segment, and being configured to reduce the resolution of the received cache line data at the first resolution when the received cache line data is shifted from the first cache segment to the second cache segment; a first resolution upscaling device, the first resolution upscaling device being communicatively coupled to the second cache segment, and being configured to upscale the downscaled cache data to the first resolution and output the upscaled cache data. 如請求項17所述之多分辨率高速緩存,其中,所有高速緩存分段的高速緩存數據大小分配和分辨率是被動態地或非均等地分配的,從而對降頻器進行相應調整,以從數據源分辨率生成降低分辨率的目標分辨率。 A multi-resolution cache as claimed in claim 17, wherein cache data size allocations and resolutions of all cache segments are dynamically or unequally allocated, thereby adjusting the downscaler accordingly to generate a reduced resolution target resolution from a data source resolution. 如請求項17所述之多分辨率高速緩存,其中,所述第二高速緩存分段以通信方式耦合到所述片外存儲器,且還被配置成在所述第一高速緩存分段中沒有所述高速緩存行數據可用時,從所述片外存儲器接收所述高速緩存行數據。 A multi-resolution cache as claimed in claim 17, wherein the second cache segment is communicatively coupled to the off-chip memory and is further configured to receive the cache line data from the off-chip memory when the cache line data is not available in the first cache segment.
TW112102305A 2023-01-18 2023-01-18 Multi-resolution cache TWI839085B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW112102305A TWI839085B (en) 2023-01-18 2023-01-18 Multi-resolution cache

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW112102305A TWI839085B (en) 2023-01-18 2023-01-18 Multi-resolution cache

Publications (1)

Publication Number Publication Date
TWI839085B true TWI839085B (en) 2024-04-11

Family

ID=91618571

Family Applications (1)

Application Number Title Priority Date Filing Date
TW112102305A TWI839085B (en) 2023-01-18 2023-01-18 Multi-resolution cache

Country Status (1)

Country Link
TW (1) TWI839085B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101371312A (en) * 2005-12-08 2009-02-18 维德约股份有限公司 Systems and methods for error resilience and random access in video communication systems
CN102428439A (en) * 2009-05-14 2012-04-25 微软公司 Displaying transition images during a slide transition
US20140226070A1 (en) * 2013-02-08 2014-08-14 Ati Technologies Ulc Method and apparatus for reconstructing motion compensated video frames
TW202131692A (en) * 2017-04-21 2021-08-16 美商時美媒體公司 Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101371312A (en) * 2005-12-08 2009-02-18 维德约股份有限公司 Systems and methods for error resilience and random access in video communication systems
CN102428439A (en) * 2009-05-14 2012-04-25 微软公司 Displaying transition images during a slide transition
US20140226070A1 (en) * 2013-02-08 2014-08-14 Ati Technologies Ulc Method and apparatus for reconstructing motion compensated video frames
TW202131692A (en) * 2017-04-21 2021-08-16 美商時美媒體公司 Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors

Similar Documents

Publication Publication Date Title
KR100910860B1 (en) Transferring a video frame from memory into an on-chip buffer for video processing
US5838837A (en) Image synthesizing device
US6353438B1 (en) Cache organization—direct mapped cache
US7561195B2 (en) Image sensing apparatus
KR101127962B1 (en) Apparatus for image processing and method for managing frame memory in image processing
US5579418A (en) Image interpolation apparatus
JP4987688B2 (en) Method and apparatus for increasing image resolution
KR20120049851A (en) Apparatus and method for displaying a warped version of a source image
US9208537B1 (en) Super-resolution reconstructing method for enhancing smoothness and sharpness of video image
US20060007247A1 (en) Graphics resampling system and method for use thereof
US11146746B2 (en) Image processing device, image capturing device, image processing method, and storage medium
US8830395B2 (en) Systems and methods for adaptive scaling of digital images
US8872856B1 (en) Macroblock based scaling of images using reduced memory bandwidth
TWI839085B (en) Multi-resolution cache
US8463074B2 (en) System and method for rotating images
TWI279128B (en) Color non-uniformity correction method and apparatus
KR100283413B1 (en) Texture Mapping System
Beric et al. Memory-centric video processing
US20230176969A1 (en) Multi-resolution cache
AU2007219336B2 (en) Method and apparatus for abitrary ratio image reduction
US6670965B1 (en) Single-pass warping engine
Ramesh et al. An aphoristic study on different interpolation techniques for medical image scaling and its comparative analysis
CN108093192B (en) Method for operating a data processing system, data processing system
Greisen et al. Spatially-varying image warping: Evaluations and VLSI Implementations
US7567733B2 (en) Image resolution conversion apparatus