TW200537369A - Method for accessing frame data and data accessing device thereof - Google Patents
Method for accessing frame data and data accessing device thereof Download PDFInfo
- Publication number
- TW200537369A TW200537369A TW93113043A TW93113043A TW200537369A TW 200537369 A TW200537369 A TW 200537369A TW 93113043 A TW93113043 A TW 93113043A TW 93113043 A TW93113043 A TW 93113043A TW 200537369 A TW200537369 A TW 200537369A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- memory
- address
- frame data
- memory bank
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000015654 memory Effects 0.000 claims abstract description 137
- 230000008878 coupling Effects 0.000 claims 2
- 238000010168 coupling process Methods 0.000 claims 2
- 238000005859 coupling reaction Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 14
- 238000000605 extraction Methods 0.000 description 2
- 102100021568 B-cell scaffold protein with ankyrin repeats Human genes 0.000 description 1
- 101000971155 Homo sapiens B-cell scaffold protein with ankyrin repeats Proteins 0.000 description 1
- 230000037237 body shape Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Image Input (AREA)
Abstract
Description
200537369 發明說明(1) 發明所屬之技術 本發明是有關於一種資料存取的方法與裝置, 是有關於一種圖框資料存取方法及其資料存取穿 ’ 先前技4好 又置。 在動態補償視訊壓縮演算法(例如MPEG —丨、Μρε^2、 MPEG-4等)中,需於圖框(frame)中依照移動向量(_;^⑽ vector)而去摘取參考方塊(reference bi〇ck)。装士七祕 (baS1C block)之尺寸通常為8*8或者16*16個像素 (pixel ),由於移動向量於水平與垂直的擷取單位可能分 別比像素以及水平線多出半個像素大小,因此參考方之 類取通常為9*9或者17*17個像素。圖1是顯示一般在搜尋 窗(search window) 100中擷取9*9參考方塊(例如圖中之 虛線框110)之範例。其中Pi〗表示第i行第j個像素資料(8位 元)。因為移動向量可能發生在搜尋窗中任何位置,因此 參考方塊110通常並不同於搜尋窗中之基本方塊範圍 (block boundary)(圖中粗線框120)。 假設有6 4位元記憶體匯流排於每一時脈週期擷取基本 方塊範圍1 2 0中一整行,亦即每次可以存取基本方塊範圍 120中8個像素資料。參考方塊ι10中每一行涵蓋了二個基 本方塊範圍120,因此操取9*9參考方塊ho將需要9*2 = 18 個時脈週期。由圖1中我們可以清楚看出所擷取的資料中 有一些是不需要的。例如於第一行中共擷取了 p2。」 .....P2,15,但是卻只需要使用P2,3、P24……p2,u像素資 料而已。擷取其他各行時亦有相同情形。因此,造成浪費200537369 Description of the invention (1) The technology to which the invention belongs The present invention relates to a method and device for data access, and relates to a frame data access method and data access method. In dynamic compensation video compression algorithms (eg MPEG — 丨, Μρε ^ 2, MPEG-4, etc.), it is necessary to extract the reference block in the frame according to the motion vector (_; ^ ⑽ vector). biOck). The size of the baS1C block is usually 8 * 8 or 16 * 16 pixels (pixels). The horizontal and vertical capture units of the motion vector may be half a pixel larger than the pixels and horizontal lines, respectively. The reference side or the like is usually 9 * 9 or 17 * 17 pixels. Fig. 1 is an example showing a 9 * 9 reference block (for example, a dashed box 110 in the figure) is generally taken in a search window 100. Among them Pi〗 is the j-th pixel data of the i-th row (8 bits). Because the motion vector may occur anywhere in the search window, the reference block 110 is usually not the same as the basic block boundary in the search window (frame 120 in the figure). Assume that there is a 64-bit memory bus that fetches an entire line in the basic block range 120 in each clock cycle, that is, 8 pixels of data in the basic block range 120 can be accessed each time. Each row in reference block ι10 covers two basic block ranges 120, so accessing 9 * 9 reference block ho will require 9 * 2 = 18 clock cycles. From Figure 1, we can clearly see that some of the captured data is not needed. For example, p2 is captured in the first row. ..... P2,15, but only need to use P2,3, P24 ... p2, u pixel data. The same is true when fetching other rows. And therefore waste
13203twf.ptd 第6頁13203twf.ptd Page 6
200537369200537369
五、發明說明(2) 記憶體匯流排頻寬之缺點 發明内容 4 ί t 3 2目的就是在提供一種圖框資料存取方法,以 即渴=體存取頻寬並增進整體系統效能。 月的再一目的是提供一種資料存取裝置,除前述 :★更因減少了非必要之資料存取而可以操作於較 低之時脈頻率,功率消耗亦因此降低。 本發明提出一種圖框資料存取方法,以獲取具有X位 疋之欲讀取圖框資料,其中χ為正整數。此圖框資料存取 方法包括下述各步驟。首先提供γ個記憶庫ΒΑΝ&,其中 BANKi•表不第i個記憶庫,γ為大於1並且小於等於X之整數, 以及1為大於等於0並且小於Y之整數。將具有χ/γ位元之部 分圖框資料WL,A存放於BANKj中,其中wLA表示第L行第A個部 分圖框資料,L與A皆為大於等於〇之整數,j = (L + A) m〇d Y ’ m〇j為模數運算。然後接收並依據Y個字元位址WAk判斷 所欲碩取之部分圖框資料分別位於哪個記憶庫中,其中 表示第k個欲讀取部分圖框資料之位址,k為大於等於〇並k 且小於Y之整數。依據前述之判斷結果自記憶庫BANKi獲得 ,有χ/γ位元之各部分圖框資料。各記憶庫BANKi所輸出之 部分圖框資料之組合即為欲讀取圖框資料。 本發明另提出一種資料存取裝置,用以依據位址訊號 輸出具有X位元之一預儲存資料,其中χ為正整數。此資料 存取裝置包括記憶體控制器、γ個記憶庫以及多工組合電 β己G體控制益用以接收位址訊號並輸出γ個記憶庫位V. Description of the Invention (2) Disadvantages of Memory Bus Bandwidth Summary of the Invention 4 The purpose of this invention is to provide a frame data access method, that is, to equal the bandwidth of the body access and improve the overall system performance. Another purpose of the month is to provide a data access device, in addition to the foregoing: ★ It can operate at a lower clock frequency due to the reduction of unnecessary data access, thereby reducing power consumption. The present invention provides a frame data access method to obtain frame data with X bits 疋, where χ is a positive integer. This frame data access method includes the following steps. First, γ memory banks BAN & are provided, where BANKi represents the ith memory bank, γ is an integer greater than 1 and less than or equal to X, and 1 is an integer greater than or equal to 0 and less than Y. Store part of the frame data WL and A with χ / γ bits in BANKj, where wLA represents the data of part A of the L-th row of the frame, L and A are integers greater than or equal to 0, j = (L + A) mOd Y ′ m〇j is a modulo operation. Then, it receives and determines according to the Y character address WAk in which memory part of the frame data to be obtained is located, which represents the address of the kth frame data to be read, where k is greater than or equal to 0 and k and an integer less than Y. According to the aforementioned judgment results, BANKi is obtained from the memory bank, and there are frame data of each part of the χ / γ bit. The combination of some frame data output by each memory bank BANKi is to read the frame data. The present invention further provides a data access device for outputting pre-stored data having one of X bits according to an address signal, where χ is a positive integer. This data access device includes a memory controller, γ memory banks, and a multiplexed combination of β and G memory controllers to receive address signals and output γ memory banks.
200537369200537369
^以及記憶庫判斷訊號,其中γ為大於i並且小 -數。γ個記憶庫皆耦接至記憶體控制$,任庫 別接收對應之記憶庫位址其中之一, 。己隐庫刀 豆古γ / v a -七加、这从 並且分別輪出對應之 八有X/Y位兀之部/刀預儲存資料。多工組合電路 憶體控制器以及各記憶庫,用以佑摅 σ ^ -V a ^v/v 一 用以依據圮憶庫判斷訊號將所 接收之/、有X/Y位兀之各部分預儲存資料多工切換並組合 輸出為X位元之預儲存資料。其中,記憶體控制器接收並 依據位址訊號判斷所欲讀取之預儲存資料所包含之各部分 預儲存資料分別位於哪些記憶庫中,並將其判斷結果輸出 為記憶庫判斷訊號。^ And the memory judgment signal, where γ is greater than i and small-number. The γ memory banks are all coupled to the memory control $, and any bank receives one of the corresponding memory bank addresses,. Hidden library knife dougu γ / v a-seven plus, this from and in turn respectively corresponding to the X / Y position of the part / knife pre-stored data. Multiplex combination circuit memory controller and each memory bank, used to save σ ^ -V a ^ v / v-used to judge the signal according to the memory bank to receive the /, X / Y positions Pre-stored data is multiplexed and output as X-bit pre-stored data. Among them, the memory controller receives and judges which parts of the pre-stored data contained in the pre-stored data to be read according to the address signal, and outputs the judgment result as a memory judgment signal.
本發明因將資料(例如為圖框資料、搜尋窗資料)分開 存放於不同之記憶庫中,而使每次讀取資料時其所欲讀取 資料中之各部分均可同時從相對應之記憶庫中獲得,因此 減少了非必要之資料存取、節省記憶體存取頻寬進而增進 整體系統效能。故而可以使記憶體之存取操作於較低之時 脈頻率,因此降低功率消耗。 為讓本發明之上述和其他目的、特徵和優點能更明顯 易懂,下文特舉較佳實施例,並配合所附圖式,作詳細說 明如下。 實施方式 圖2是依照本發明較佳實施例所繪示的一種圖框資料 存取方法之流程圖。請參照圖2,本實施例譬如用於視訊 處理(video process),尤其用於視訊處理中圖框參考方 塊(reference block of frame)之取得,以獲取具有X位In the present invention, because data (for example, frame data and search window data) are stored separately in different memories, each time the data is read, each part of the data can be read from the corresponding one at the same time. Obtained in the memory, thus reducing unnecessary data access, saving memory access bandwidth and improving overall system performance. Therefore, the memory access operation can be performed at a lower clock frequency, thereby reducing power consumption. In order to make the above and other objects, features, and advantages of the present invention more comprehensible, preferred embodiments are described below in detail with reference to the accompanying drawings, as follows. Embodiment FIG. 2 is a flowchart of a method for accessing frame data according to a preferred embodiment of the present invention. Please refer to FIG. 2. This embodiment is used, for example, for video processing, and particularly for obtaining a reference block of frame in video processing to obtain an X-bit
13203twf.ptd 第8頁 200537369 五、發明說明(4) 元之一欲讀取圖框資料。其中’ X為正整數。該圖框資料 存取方法包括下列各步驟。步驟S2l〇,提供¥個記憶庫 BANK。其中,BANK表示第i個記憶庫,γ為大於i並且小於 等於X之整數,i為大於等於〇並且小於Y之整數。步驟 S220,將圖框資料WL,A存放於記憶庫βΑΝΚ中,直中w表示 第L行第A個部分圖框資料(χ/γ位元),L與人皆為、大等於〇 之整數,p(L + A) mod Y(其中mod為模數運算)。步驟 S230,接收並依據γ個字元位址WAk判斷所欲讀取之部分圖 框資料分別在哪個記憶庫中。其中,W4表示第1(個欲讀取 部分圖框資料之位址,k為大於等於〇並且小於Y之整數。 步驟S240,依據步驟S230之判斷結果自各記憶庫^㈣獲得 欲讀取圖框資料。 1 上述步驟S240可參照下列各步驟實施之。步驟S241, 依據步驟S230之判斷結果產生γ個記憶庫位址,其中BAi 表二第i個記憶庫之存取位址。步驟S242,依據記憶庫位1 址存取記憶庫BAMi。步驟S243 ,自各記憶庫“Μ獲得 對,二部分圖框資料。步驟S244,依據字元位址^判斷各 5己庫BANKi所輸出部分圖框資料U/Y位元)之排列順序並 依此組合輸出為欲讀取圖框資料(X位元)。 <上所述,在此假設系統記憶體匯流排(fflemory bus) ^ 位元,並且使用2個記憶庫以儲存圖框資料。換句 ^ ’即假設χ等於64,而。因此,每個記憶庫各自 :所給^之部分料。圖3是依照本發明較佳實施 、、曰不的一種搜尋窗(search wind〇w)中使用2個記憶庫 1 13203twf.ptd 第9頁 200537369 五、發明說明(5) BANK〇與BANK!的資料結構之範例。請參照圖3,在此假設搜 尋窗300之大小為64*48個像素資料,並且圖中w表示第土 行第j個部分圖框資料。於本實施例中,%〗譬如為32位元 字το ’其包含4個像素資料。例如,W2 q即包含有如圖丨岬 2,〇、Pu、匕2、P2,3等像素資料。因此,在圖】中所欲擷取之 參考方塊(reference block) 11〇即被包含於圖3中之虛線 方塊3 1 0中。 本:施例雖使用二個記憶庫,然而卻不應以此限制本 RANHf。1 S己憶體匯流排具有X位元,則可使用Y個記憶庫 。其中,Χ為正整數(通常為2的幂次方,例如位 =’ 則為大於1並且小於等於χ之整數(例如為2、4、8 於Y i i I i BANKi表示第丨個記憶庫,1為大於等於0並且小 同之ΓΓ庙V相鄰之部分圖框資料Wi,j與^係存放於不 二W V : 。例如,若W2,。存放於第0個記憶庫BANK0中, J f放於第1個記憶庫ΒΑΝΚι中。而相鄰二行令相同位置 圖框資料Wij與Vj亦須存放於不同之記憶庫中。例 中。放於記憶庫BANK°中,則W3,。存放於記憶庫BANKi 框資料w ’將具有X/Y位元(例如為32位元)之部分圖 之整Λ記憶庫BANU,其中L與Α皆為大於等於〇 、习 卜(L + A) m〇d Y。前式中m〇d為模數運算。 圖!之^^°^ # i若欲透過64位元記憶體匯流排摘取如 施例,工:」10時,需要9*2=18個時脈週期。若依本實 、而彌取圖3之虛線方塊31 〇即可。例如,於第i時13203twf.ptd Page 8 200537369 V. Description of the Invention (4) One of the Yuan Yuan wants to read the frame information. Where 'X is a positive integer. The frame data access method includes the following steps. In step S210, ¥ banks BANK are provided. Among them, BANK represents the i-th memory bank, γ is an integer greater than i and less than or equal to X, and i is an integer greater than or equal to 0 and less than Y. In step S220, the frame data WL, A are stored in the memory bank βANK, and the straight middle w represents the frame data (χ / γ bit) of the Ath part of the Lth row, and L is an integer that is equal to 0. , P (L + A) mod Y (where mod is a modulo operation). Step S230: Receive and judge in which memory part of the frame data to be read according to the γ character addresses WAk. Among them, W4 represents the first (the address of the frame data to be read, k is an integer greater than or equal to 0 and less than Y. Step S240, according to the judgment result of step S230, obtain the frame to be read from each memory bank ^ ㈣ Data. 1 The above step S240 can be implemented with reference to the following steps. Step S241, according to the judgment result of step S230, γ memory bank addresses are generated, among which BAi table 2 is the access address of the ith memory bank. Step S242, according to The memory bank 1 accesses the bank BAMi. Step S243: Obtain the right, two-part frame data from each bank "M. Step S244, judge the part of the frame data U output from each of the 5 banks BANKi based on the character address ^. / Y bit) and output the frame data (X bit) according to the combination. ≪ As mentioned above, it is assumed that the system memory bus (fflemory bus) ^ bit, and use 2 memory banks to store picture frame data. In other words, ^ 'is assumed that χ is equal to 64, and. Therefore, each memory bank has its own part of the given ^. Figure 3 is a preferred implementation according to the present invention. Used in a search window (search wind〇w) 2 Memory bank 1 13203twf.ptd Page 9 200537369 V. Explanation of the invention (5) An example of the data structure of BANK〇 and BANK! Please refer to FIG. 3, and assume that the size of the search window 300 is 64 * 48 pixel data, and In the figure, w represents the frame data of the j-th part of the first row. In this embodiment,%〗 is, for example, a 32-bit word το ', which contains 4 pixel data. For example, W2 q contains the image shown in Figure 2, Cape 2. 〇, Pu, Dagger 2, P2, 3 and other pixel data. Therefore, the reference block (reference block) 11 in the figure] is included in the dotted box 3 1 0 in Figure 3. This: Although the embodiment uses two memory banks, this RANHf should not be limited in this way. 1 S memory bus has X bits, and Y memory banks can be used. Among them, X is a positive integer (usually 2) Powers, for example, bit = 'is an integer greater than 1 and less than or equal to χ (for example, 2, 4, 8, and Y ii I i BANKi represents the first memory bank, 1 is greater than or equal to 0 and the same as ΓΓ temple The frame data Wi, j and ^ adjacent to V are stored in Fuji WW: For example, if W2, they are stored in the 0th memory In BANK0, J f is placed in the first memory bank BANIK. And the adjacent two lines of the same position frame data Wij and Vj must also be stored in different memory banks. For example. In the memory bank BANK °, Then W3 ,. is stored in the memory bank BANKi frame data w 'will have the entire Λ memory bank BANU with a part of the graph of X / Y bits (for example, 32 bits), where L and Α are both greater than or equal to 0, Xibu ( L + A) mOd Y. In the above formula, m 0d is a modulus operation. Figure! Zhi ^^ ° ^ # i If you want to extract through the 64-bit memory bus as in the example, work: "At 10, 9 * 2 = 18 clock cycles are required. If according to the actual situation, the dotted line 31 in FIG. 3 can be obtained. For example, at time i
I 13203twf.ptd 第10頁 200537369 五、發明說明(6) 5週期中擷取W2,0 (從BANK0取得)與W21 (從βΑΝΚι取得) ^時脈週期中擷μ2,2 (從BANKg取得)與%。(從副[取; =;於第3時脈週期中擷取W3i (從ΒΜΚ〇取得)與(從 BAN&取得),以此類推。每一時脈週期中均可同時從各 憶庫BANKi中獲取欲取得之部分圖框資料。最後,於第w 脈週期中擷取Vg (從BANK。取得)_igi (從ΒΑΝΚι取得),·時 於第14時脈週期中擷取^ 2 (從βΑΝΚ〇取得)。因此,本 施例只須1 4個時脈週期即可完成參考方塊〗】〇之擷取工 本實施例明顯改善了習知技術中浪費記憶體匯 ^排頻寬之缺點,進而加速參考方塊之讀取效率。 在此另舉一實施例以說明本發明。本實施例與前述 施例相似,其不同之處在於使用4個記憶庫以輸出64位元 之部分圖框資料。換句話說,即假設义等於64,而γ為4。 ,此,每個記憶庫各自輸出16位元之部分圖框資料#。圖4 是依照本發明另一較佳實施例所繪示的一種搜尋窗 (search window)中使用4個記憶庫BANKg至ΒΑΝκ3的資料結 構之範例。請參照圖4,在此亦假設搜尋窗4〇〇之大小為 64*48個像素資料。為與圖3之32位元部分圖框資料%』作區 別,圖4中以表示第i行第j個部分圖框資料(16位^)。 於本實施例中,譬如包含2個像素資料。例如,扎』即包 含有如圖1中1"2,0、等像素資料。本實施例只須12個時脈 週期即可完成9*9參考方塊之擷取工作。本實施例之詳細 操作與前述實施例相似,凡熟習此藝者可由前述實施例中 類推獲知,故不在此贅述。I 13203twf.ptd Page 10 200537369 V. Description of the invention (6) W2,0 (obtained from BANK0) and W21 (obtained from βΑΝΚι) in 5 cycles ^ 2,2 (obtained from BANKg) and %. (Take from [[take; =; extract W3i (obtained from BMKO) and (obtained from BAN &) in the 3rd clock cycle, and so on.) Each clock cycle can be simultaneously retrieved from each bank BANKi Get some of the frame data you want to get. Finally, get Vg (from BANK.) _Igi (from ΑΝΚι) in the wth pulse cycle, and ^ 2 (from βΑΝΚ〇) at the 14th clock cycle. (Acquisition). Therefore, this embodiment only needs 14 clock cycles to complete the reference block.] The extraction process in this embodiment significantly improves the shortcomings of wasted memory and bandwidth in the conventional technology, thereby speeding Reference is made to the reading efficiency of the block. Here is another embodiment to illustrate the present invention. This embodiment is similar to the previous embodiment, except that it uses 4 memory banks to output a part of the frame data of 64 bits. In other words, it is assumed that the meaning is equal to 64 and γ is 4. Therefore, each memory bank outputs a part of the frame data # of 16 bits, respectively. FIG. 4 is a diagram according to another preferred embodiment of the present invention. Search window using data from 4 banks BANKg to ΒΑΝκ3 An example of the structure. Please refer to FIG. 4. Here, it is also assumed that the size of the search window 400 is 64 * 48 pixel data. To distinguish it from the 32-bit portion of the frame data% in FIG. 3, it is shown in FIG. The i-th row and j-th part of the frame information (16 bits ^). In this embodiment, for example, it contains 2 pixel data. For example, "Za" contains pixel data such as 1 " 2, 0, etc. in this figure. This The embodiment only needs 12 clock cycles to complete the 9 * 9 reference block acquisition. The detailed operation of this embodiment is similar to the previous embodiment. Those who are familiar with this art can be obtained by analogy in the previous embodiment, so it is not here. To repeat.
IH 13203twf.ptd 第11頁 200537369 五、發明說明(7) 綜合前述,茲以存取搜尋窗資料為例將本發明之資料 存取方法及資料結構與習知技術作一比較,比較結果如圖 5所示。圖5是本發明與習知技術之資料讀取效能比較表。 由圖5可知,越多記憶庫(越小資料寬度)將有越佳讀取效 能。 >IH 13203twf.ptd Page 11 200537369 V. Description of the invention (7) To sum up, I will use the search window data as an example to compare the data access method and data structure of the present invention with the conventional technology. The comparison results are shown in the figure. 5 shown. FIG. 5 is a comparison table of data reading performance of the present invention and the conventional technology. As can be seen from Figure 5, the more memory banks (the smaller the data width), the better the reading performance. >
在此依照本發明再舉一實施例,如圖6所示。圖6是依 照本發明較佳實施例所緣示之一種資料存取裝置方塊圖。 此資料存取裝置用以依據位址訊號addr輸出具有X位元之 預儲存資料(例如是圖框資料或搜尋窗資料)rdata。記憶 體控制器610接收位址訊號a(idr、讀取要求req — r、寫入要 求req —w以及寫入資料data—w,並且輸出Y個記憶庫位址 b〇 —addr至bY-1 一addr、記憶庫致能訊號CS0至CSY-1、讀寫 控制訊號r/w、寫入資料b〇一data—w至bY-Ι一data-w以及記 憶庫判斷訊號BS。其中,X與γ之定義與前述實施例相同。 記憶庫耦接至記憶體控制器61〇。於本 實施例中,例如將搜尋窗資料依照前述實施例之資料結構 分開存放於記憶庫BANK。至ΒΑΝΚη中。每個記憶庫BANKq1 banKw分別接收對應之記憶庫位址、記憶庫致能訊號至 CSY-1、Ί買寫控制訊號r/w以及寫入資料b〇 — data —w至Here is another embodiment according to the present invention, as shown in FIG. 6. FIG. 6 is a block diagram of a data access device according to a preferred embodiment of the present invention. This data access device is used to output pre-stored data (such as frame data or search window data) rdata with X bits according to the address signal addr. The memory controller 610 receives the address signal a (idr, read request req — r, write request req — w, and write data data — w, and outputs Y memory bank addresses b 0 — addr to bY-1 An addr, a memory enable signal CS0 to CSY-1, a read / write control signal r / w, a write data b0-data-w to bY-1-data-w, and a memory judgment signal BS. Among them, X and The definition of γ is the same as the previous embodiment. The memory bank is coupled to the memory controller 61. In this embodiment, for example, the search window data is stored separately in the memory bank BANK according to the data structure of the previous embodiment. It is stored in BANK. Each bank BANKq1 banKw receives the corresponding bank address, bank enable signal to CSY-1, buy / write control signal r / w, and write data b〇 — data —w to
1—data—w,以儲存搜尋窗資料,或者各自輸出對應之 錚分預儲存資料bO—data —r至bY-1-data—r (X/Y位元)。 其中’ §己憶體控制器61 〇係接收並依據位址訊號addr 2斷所欲讀取之預儲存資料rdata所包含之各部分預儲存 資料分別位於記憶庫中之何者,並將其判斷結果輸出為記1—data—w to store the search window data, or output the corresponding pre-stored data bO—data —r to bY-1-data—r (X / Y bits). Among them, § The self-memory controller 61 〇 receives the pre-stored data to be read according to the address signal addr 2 and judges which part of the pre-stored data contained in rdata is located in the memory respectively. The output is recorded
第12頁 200537369Page 12 200537369
憶庫判斷訊號BS。多工組合電路62〇耦接至記憶體控制器 610以及記憶庫BANKqSBANKw,用以依據記憶庫判斷訊號 BS將所接收具有χ/γ位元之部分預儲存資料加以多工切換 並組合輸出為X位元之預儲存資料rdata (本實施例中譬如 是圖框資料或搜尋窗資料)。 為能更清楚說明本發明,以下假設經由系統記憶體匯 流排所讀取之預儲存資料rdata計有64位元,並且使用2個 =庫以儲存搜尋窗資料。換句話說,即於本實施例中假 於64 ’而Y為2。因此,每個記憶庫各自輸出32位元 :二广搜尋窗資料,如圖7A所示。圖7A是依照本發明較佳 也列所繪不之一種使用二個記憶庫之資料存取裝置方塊 φ m cT '照圖7A,其中例如將搜尋窗資料依照前述實施4 U4之^資料結構分開存放於記憶庫BANKD以及BANKi中。>( hHH ^AG產生讀取要求req —Γ、讀取位址訊號addr-r0i 一 f — 以便摘取對應之第一字元(word 0)與第二字 資料Η + 要求req-w、寫入位址訊號addr — w以及寫入 搜尋窗a資?而=電路更新記憶庫BANK。以及BA叫中之The memory library judges the signal BS. The multiplexing combination circuit 62 is coupled to the memory controller 610 and the memory bank BANKqSBANKw, and is used to multiplex and switch the received part of the pre-stored data with χ / γ bits according to the memory judgment signal BS and output as X. Bit pre-stored data rdata (for example, frame data or search window data in this embodiment). In order to explain the present invention more clearly, the following assumes that the pre-stored data rdata read through the system memory bus counts 64 bits, and 2 = banks are used to store the search window data. In other words, it is assumed that 64 'and Y is 2 in this embodiment. Therefore, each memory bank outputs 32-bit data: the search window data of the two channels, as shown in FIG. 7A. FIG. 7A is a data access device block φ m cT 'using two memories according to the present invention, which is also not shown in the drawing. According to FIG. 7A, for example, the search window data is separated according to the aforementioned 4 U4 data structure. Stored in memory banks BANKD and BANKi. > (hHH ^ AG generates a read request req —Γ, reads the address signal addr-r0i-f — in order to extract the corresponding first character (word 0) and the second character data Η + requires req-w, Write address signal addr — w and write search window a? And = circuit update memory bank BANK.
addr—"以及窝入^貫知例中’讀取位址訊號addr-r0、 一字元 —馬入位址訊號addrj例如皆為1 〇位元,而第 备一 ϋί二字元與寫入資料data-w例如皆為32位元(若 ^ 貝料為8位元,則其包含有4個像素資料)。 且八體控制器71〇用以仲裁讀取要求與寫入要求,並 刀 生記憶庫^^()與“化1所需之讀寫控制訊號r/waddr— " and the nested example of the 'read address signal addr-r0, one character—the address signal addrj is, for example, all 10 bits, and the first two characters and write The data data-w are, for example, 32 bits (if ^ is 8 bits, it contains 4 pixel data). And the eight-body controller 71 is used to arbitrate the read request and the write request, and generates the memory bank ^^ () and the read-write control signal r / w
200537369 五、發明說明(9) δ己fe庫致能訊號C S 0與C S1以及記憶庫位址b 〇 _ a d d r與 bl —addr。記憶體控制器7i〇亦產生記憶庫判斷訊號“以指 出第一字元係位於各記憶庫中之何者。例如,當BS = 〇即表 不第一字元係位於記憶庫BANKQ中,若BS = 1則表示第一字元 位於έ己憶庫BAN&中。由圖3所示之資料結構可以明顯看 出,第一字元與第二字元之擷取必定是來自不同之記憶 庫。也就是說,當第一字元係位於記憶庫BANKq,則第二字 元位於記憶庫ΒΑΝΚι ;反之,若當第一字元係位於記憶庫 BANI ’則第二字元位於記憶庫Bankg。每一記憶庫之輸出 bO-data_r與bl—data一r(皆為32位元)將經由多工組合電路 72〇 (依照記憶庫判斷訊號BS)加以切換組合為欲讀取之搜 尋窗資料rdata(64位元)。此搜尋窗資料rdata例如可以提 供視訊處理中之動態補償電路ME所使用。 在此,上述之記憶體控制器71 〇譬如可以參照圖7B實 施之。圖7B是依照本發明較佳實施例所繪示圖7A中之一種 記憶體控制器710方塊圖。讀取位址訊號addr_rO、 addr 一rl以及寫入位址訊號addr_w經過多工器711與712(依 照讀取要求req—r及寫入要求req_w)切換以產生第一字元 位址〜0一8〇1(1]:與第二字元位址〜1一3(1(1]:。於本實施例中,例 如將第一字元位址w〇 — addr耦接至判斷電路713以產生記憶 庫判斷訊號bs。第一字元位址w〇_addr與第二字元位址 wl一addr經由切換電路714依照記憶庫判斷訊號bs分別切換 輸出為記憶庫BANK0與BANK1所需之記憶庫位址bO — addr與 bl一addr。例如,當bs = 〇時,表示第一字元位於記憶庫200537369 V. Description of the invention (9) The δ-fe library enabling signals C S 0 and C S1 and the memory address b 0 _ a d d r and bl —addr. The memory controller 7i〇 also generates a memory judgment signal "to indicate which of the first character system is located in each memory bank. For example, when BS = 0, it means that the first character system is located in bank BANKQ. If BS = 1 indicates that the first character is located in the BAN & from the data structure shown in Figure 3, it can be clearly seen that the extraction of the first character and the second character must come from different memory banks. That is, when the first character line is located in the memory bank BANKq, the second character is located in the memory bank ΑΝΚι; conversely, when the first character line is located in the memory bank BANI ', the second character is located in the memory bank Bank. Every The outputs bO-data_r and bl-data-r (both 32-bit) of a memory bank will be switched and combined into the search window data rdata ( 64 bit). This search window data rdata can be used, for example, to provide a dynamic compensation circuit ME in video processing. Here, the above-mentioned memory controller 71 can be implemented with reference to FIG. 7B. FIG. 7B is a comparison according to the present invention. One of the best embodiments shown in FIG. 7A Memory controller 710 block diagram. The read address signal addr_rO, addr_rl and the write address signal addr_w are switched by the multiplexers 711 and 712 (according to the read request req_r and the write request req_w) to generate the first One character address ~ 0-8001 (1): and second character address ~ 1-3 (1 (1) :. In this embodiment, for example, the first character address w0- addr is coupled to the judging circuit 713 to generate a memory judgment signal bs. The first character address w0_addr and the second character address wl_addr are respectively switched and output as memories according to the memory judgment signal bs via the switching circuit 714 The bank addresses bO — addr and bl — addr required for banks BANK0 and BANK1. For example, when bs = 〇, it means that the first character is located in the memory bank
13203twf.ptd 第14頁 200537369 五、發明說明(ίο) B A N KQ中,因此將第一字元位址w 0 — a d d r搞接輸出為記悚庫 位址bO一addr,而將第二字元位址w l_addr耦接輸出為記惊 庫位址bl—addr。反之,若bs = l則表示第一字元位於記情、 庫BANI^t,因此將第一字元位址wO一addr_接輸出為記憶 庫位址bl—addr,而將第二字元位址wl_addr耦接輸出為兮己 憶庫位址bO_addr。13203twf.ptd Page 14 200537369 V. Description of the invention (ίο) In the BAN KQ, the first character address w 0 — addr is outputted as the memory address bO-addr, and the second character bit The address w l_addr is coupled to the output of the memory library address bl_addr. Conversely, if bs = l, it means that the first character is located in the memory and bank BANI ^ t, so the first character address wO_addr_ is connected to the memory address bl_addr, and the second character is The address wl_addr is coupled to the output bX_addr.
切換電路714例如由多工器71 4a與71 4b所組成。其 中,多工器71 4a依據判斷訊號bs選擇第一字元位址 、 wO一addr以及第二字元位址wl一addr二者之一以輸出為紀憶 庫位址bO — addr。而多工器714b與多工器714a類似,其不… 同在於若多工器714a將第一字元位iW〇 一 a(jdr輸出為纪憶 庫位址bO_addr時,則多工器714b將第二字元位awl_°ad^ 輸出為記憶庫位址bl_addr ’以此類推。判斷訊號“再經 由延遲電路715緩衝後輸出為判斷訊號以。因為記憶 行讀取指令時往往需要數個時脈週期(依照所採用^ 體形態之不同,其所需之時脈週期亦有所不同) : 所需資料’因此利用延遲電路715以配合於 二 時序。 T _山 於本實施例中’判斷電路713例如可 之。圖咖照本發明較佳實施例所 冗、、圖 斷電路713之電路圖。請同時參照圖3以 甲1種判 以看出,字元位址wO — addr中之第〇杨 、 圖可 示)與第4位元(以w0 — addr[4]表干)从=WW〇〜addr[0]表 第-字元位址w〇_addr所對應之^考右窗同次時社為〇(或1) ’則該 >号_資料(圖框資料)係The switching circuit 714 is composed of, for example, multiplexers 71 4a and 71 4b. Among them, the multiplexer 71 4a selects one of the first character address, wO_addr and the second character address wl_addr according to the judgment signal bs, and outputs it as the memory address bO_addr. The multiplexer 714b is similar to the multiplexer 714a, except that if the multiplexer 714a outputs the first character bit iW〇aa (jdr is output as the memory bank address bO_addr, the multiplexer 714b will The second character bit awl_ ° ad ^ is output as the memory address bl_addr 'and so on. The judgment signal "is buffered by the delay circuit 715 and is output as the judgment signal. Because memory line read instructions often require several clocks Period (depending on the adopted body shape, the required clock period is also different): the required data 'so use the delay circuit 715 to match the two timing. T _ mountain in this embodiment' judgment circuit 713 can be, for example. Figure 3 shows the circuit diagram of circuit 713, which is redundant and broken according to the preferred embodiment of the present invention. Please also refer to Figure 3 and use the first judgment to see that the character address wO — addr 〇 Yang, the picture can be shown) and the fourth bit (w0-addr [4] table stem) from = WW〇 ~ addr [0] table-character address corresponding to w〇_addr ^ At the same time, the agency is 0 (or 1) 'then the> number _ data (frame data)
200537369 五、發明說明(11) 存放於記憶庫BANK。。反之,若w〇 —addr[0]與w〇 —addr[4]不 同時,則該第一字元位址wO_addr所對應之參考窗資料(圖 框資料)係存放於記憶庫BANK】。因此,判斷電路613即可以 簡單之互斥或閘X0R完成之。 於本實施例中,多工組合電路720例如可以參照圖7D 實施之。圖7D是依照本發明較佳實施例所繪示圖7A中之一 種多工組合電路720之方塊圖。請參照圖7D,其中 rdata[63:32]表示搜尋窗資料rdata中第32至63位元資 料’同理’ rdata[31 : 0]表示搜尋窗資料r(jata中第〇至31 位元資料。所以,獲得64位元之搜尋窗資料rdata以提供 下一級電路(例如動態補償電路)做進一步處理。於圖7A中鲁 之記憶庫BANK0與BANK所輸出資料b〇_data一r與 bl—data一r (皆為32位元)將連接至多工器721與722。多工 器721依照記憶庫判斷訊號BS (由記憶體控制器71〇所產 生)選擇資料b0 —data一r與bl一data —r二者中為第一字元者 輸出為搜尋窗資料rdata[ 63:32 ]。反之,多工器722依照 記憶庫判斷訊號BS選擇資料b〇一data — r與bl—data — r二者中 為第二字元者輸出為搜尋窗資料rdata[31:〇]。例如,當 B^O時’則多工器721選擇將資料b〇 — data — r輸出為搜尋窗 二貝料rdata[ 63 : 32 ],並且多工器72 2選擇將資料bl一data〜r _ ,出為搜尋窗資料^以3[31:〇];反之,若33 = 1,則多1 為721選擇將資料bl—data—r輸出為搜尋窗資料 rdata[ 63:32 ],並且多工器722選擇將資料b〇-data —r輸出 為搜尋窗資料rdata [ 3 1 : 0 ]。200537369 V. Description of invention (11) Stored in memory bank BANK. . Conversely, if w0 —addr [0] and w0 —addr [4] are different, the reference window data (frame data) corresponding to the first character address wO_addr is stored in the memory bank BANK]. Therefore, the judging circuit 613 can be simply mutually exclusive OR gate X0R. In this embodiment, the multiplexing combination circuit 720 can be implemented with reference to FIG. 7D, for example. FIG. 7D is a block diagram illustrating a multiplexing combination circuit 720 in FIG. 7A according to a preferred embodiment of the present invention. Please refer to FIG. 7D, where rdata [63:32] represents the 32-63th bit data in the search window data rdata 'similarly' rdata [31: 0] represents the search window data r (0-31 bit data in the jata Therefore, the 64-bit search window data rdata is obtained to provide the next-level circuit (such as a dynamic compensation circuit) for further processing. In Figure 7A, the memory bank BANK0 and BANK output data b0_data_r and bl- data_r (both 32 bits) will be connected to the multiplexers 721 and 722. The multiplexer 721 selects the data b0 —data_r and bl_ according to the memory judgment signal BS (generated by the memory controller 71). data —r The output of the first character is the search window data rdata [63:32]. Conversely, the multiplexer 722 selects the data BS according to the memory judgment signal b〇 a data — r and bl — data — r The second character of the two is output as search window data rdata [31: 〇]. For example, when B ^ O ', the multiplexer 721 chooses to output the data b〇—data—r as the search window data. rdata [63: 32], and the multiplexer 72 2 selects the data bl a data ~ r _, and outputs it as the search window data ^ 3 [31: 〇]; If 33 = 1, then more than 1 is 721 and the data bl_data_r is selected as the search window data rdata [63:32], and the multiplexer 722 is selected to output the data b〇-data_r as the search window data rdata [3 1: 0].
200537369 五、發明說明(12) 雖然本發明已以較佳實施例揭露如上,然其並非用以 限定本發明,任何熟習此技藝者,在不脫離本發明之精神 和範圍内,當可作些許之更動與潤飾,因此本發明之保護 範圍當視後附之申請專利範圍所界定者為準。200537369 V. Description of the invention (12) Although the present invention has been disclosed as above with a preferred embodiment, it is not intended to limit the present invention. Any person skilled in the art can make some changes without departing from the spirit and scope of the present invention. Changes and retouching, therefore, the protection scope of the present invention shall be determined by the scope of the appended patent application.
13203twf.ptd 第17頁 200537369 圖式簡單說明 Θ疋,’、、員示身又在搜哥窗(search window)中擷取9*9 參考方塊(圖中之虛線框)之範例。 圖2是依照本發明較佳實施例所繪示的一種圖框資料 存取方法之流程圖。 圖3疋依…、本發明較佳實施例所繪示的一種搜尋窗中 使用二個記憶庫的資料結構之範例。 ^囷4疋依”、、本發明另一較佳實施例所繪示的一種搜尋 囪(search window)中使用4個記憶庫βΑΝΚ〇至^龍^的資料 結構之範例。 、 圖5是本發明與習知技術之資料讀取效能比較表。 圖6疋依照本發明較佳實施例所繪示之一 裝置方塊圖。 貝料存取 圖7Α是依照本發明較佳實施例所繪示之一種 吕己憶庫之資料存取裝置方塊圖。 圖7Β是依照本發明較佳實施例所繪示圖中之一 憶體控制器方塊圖。 種記 圖7C是依照本發明較佳實施例所繪示圖7β中之一 斷電路之電路圖。 判 圖7D是依照本發明較佳實施例所繪示圖中之— 工組合電路之方塊圖。 種夕 【圖式標不說明】 100 :習知搜尋窗(search window)資料之結構 110 : 9*9參考方塊 120 :擷取基本方塊範圍13203twf.ptd Page 17 200537369 Brief description of the diagram Θ 疋, ’, and the staff show an example of a 9 * 9 reference box (the dashed box in the figure) in the search window. FIG. 2 is a flowchart of a frame data access method according to a preferred embodiment of the present invention. Fig. 3 is an example of a data structure using two memories in a search window shown in a preferred embodiment of the present invention. ^ 囷 4 疋 依 ", an example of a data structure using 4 memories βΑΝΚ〇 ~ ^ 龙 ^ in a search window shown in another preferred embodiment of the present invention. FIG. 5 is the present example. Comparison table of the data reading performance of the invention and the conventional technology. Figure 6: A block diagram of a device according to a preferred embodiment of the present invention. Access to material Figure 7A is a diagram according to a preferred embodiment of the present invention. A block diagram of a data access device for Lu Jiyi Library. Fig. 7B is a block diagram of a memory controller in accordance with a preferred embodiment of the present invention. Fig. 7C is a diagram according to a preferred embodiment of the present invention. 7B is a circuit diagram of a broken circuit in FIG. 7β. FIG. 7D is a block diagram of an industrial-combination circuit according to the preferred embodiment of the present invention. Know the structure of the search window data 110: 9 * 9 Reference box 120: Extract the basic box range
13203twf.ptd 第18頁 200537369 圖式簡單說明 3 0 0、4 0 0 :依照本發明較佳實施例之搜尋窗資料結構 3 1 0 :欲讀取參考方塊之所在範圍 6 1 0、7 1 0 :記憶體控制器 620、720 :多工組合電路 711 、712 、714a 、714b 、721 、722 :多工器 7 1 3 :判斷電路 71 5 :延遲電路 S210〜S244 :依照本發明較佳實施例所述的一種圖框 資料存取方法之各步驟13203twf.ptd Page 18 200537369 Brief description of the diagrams 3 0 0, 4 0 0: Search window data structure according to the preferred embodiment of the present invention 3 1 0: The range of the reference block to be read 6 1 0, 7 1 0 : Memory controllers 620, 720: Multiplex combination circuits 711, 712, 714a, 714b, 721, 722: Multiplexer 7 1 3: Judgment circuit 71 5: Delay circuits S210 ~ S244: According to a preferred embodiment of the present invention Steps of a picture frame data access method
13203twf.ptd 第19頁13203twf.ptd Page 19
Claims (1)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW93113043A TWI242741B (en) | 2004-05-10 | 2004-05-10 | Method for accessing frame data and data accessing device thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW93113043A TWI242741B (en) | 2004-05-10 | 2004-05-10 | Method for accessing frame data and data accessing device thereof |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TWI242741B TWI242741B (en) | 2005-11-01 |
| TW200537369A true TW200537369A (en) | 2005-11-16 |
Family
ID=37022586
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW93113043A TWI242741B (en) | 2004-05-10 | 2004-05-10 | Method for accessing frame data and data accessing device thereof |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI242741B (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI391912B (en) * | 2008-11-14 | 2013-04-01 | Orise Technology Co Ltd | Frame memory access method and display driver using the same |
-
2004
- 2004-05-10 TW TW93113043A patent/TWI242741B/en not_active IP Right Cessation
Also Published As
| Publication number | Publication date |
|---|---|
| TWI242741B (en) | 2005-11-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5663009B2 (en) | Apparatus for displaying original image by warping or rotating, method thereof, computer program thereof, and recording medium recording the same | |
| TWI637313B (en) | Apparatuses and methods for operations using compressed and decompressed data | |
| TW200828314A (en) | Memory device, memory controller and memory system | |
| TW200828341A (en) | Memory device, memory controller and memory system | |
| US20030058368A1 (en) | Image warping using pixel pages | |
| TW200844898A (en) | Method and apparatus for graphics processing unit | |
| JPH10341444A (en) | Memory manager in MPEG decoder | |
| US20060098021A1 (en) | Graphics system and memory device for three-dimensional graphics acceleration and method for three dimensional graphics processing | |
| US7898880B2 (en) | Dual port memory device, memory device and method of operating the dual port memory device | |
| US7861043B2 (en) | Semiconductor memory device, semiconductor integrated circuit system using the same, and control method of semiconductor memory device | |
| JP2003007052A (en) | Semiconductor storage device and memory system using the same | |
| TW200537369A (en) | Method for accessing frame data and data accessing device thereof | |
| US20130100757A1 (en) | Dual-Port Memory and a Method Thereof | |
| Gong et al. | Design of high-speed real-time sensor image processing based on FPGA and DDR3 | |
| KR100872018B1 (en) | A virtual dual-port synchronous ram architecture | |
| TW200619956A (en) | Data buffer circuit, interface circuit and control method therefor | |
| US8731071B1 (en) | System for performing finite input response (FIR) filtering in motion estimation | |
| US20060007235A1 (en) | Method of accessing frame data and data accessing device thereof | |
| JP2002312233A (en) | Signal processing device | |
| EP1459291B1 (en) | Digital line delay using a single port memory | |
| JP2002112163A (en) | Image data storage device and image data storage method | |
| JP2012113597A (en) | Memory device, memory control circuit, and memory control system | |
| JP4549001B2 (en) | Information processing apparatus and semiconductor integrated circuit | |
| KR100333745B1 (en) | Interface apparatus and method of coding image data | |
| JP2008146235A (en) | Image processor |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MM4A | Annulment or lapse of patent due to non-payment of fees |