專利名稱:一種處理視頻圖像中多個宏塊單元的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻處理技術(shù),特別涉及一種通過并行處理多個宏塊單元對 宏塊單元進(jìn)行編碼或解碼的方法及相應(yīng)的視頻處理裝置。
背景技術(shù):
用以執(zhí)行視頻編碼算法(例如MPEG-1, MPEG-2, MPEG-4, H.263, H.264/AVC, SVC,H.265)的處理單元通常被稱為宏塊單元,其中每一宏塊單 元至少含有一個宏塊。例如,在宏塊自適應(yīng)幀/場(macroblock adaptive frame/field, MBAFF)編碼方式中,每一宏塊單元包含一個垂直相鄰的宏塊 對(macroblock-pair)。但是在非宏塊自適應(yīng)幀/場編碼方式中,每一宏塊 單元僅包含一個宏塊。當(dāng)編碼/解碼當(dāng)前宏塊單元時,來自多個上端宏塊單元 (upper macroblock units)的信息,即來自左上方宏塊單元(a top-left macroblock unit)、上方宏塊單元(a top macroblock unit)以及右上方宏塊單 元(a top-right macroblock unit)的信息,以及來自當(dāng)前宏塊單元的左端宏塊 單元的信息是必要的。來自多個上方宏塊單元(upper macroblock units)的 許多信息(如在H.264/AVC中的運(yùn)動向量,量化參數(shù),Y/U/V總系數(shù)等) 對于編碼當(dāng)前宏塊單元來說也是必要的。如果以光柵掃描的順序依次編碼/ 解碼宏塊單元,有必要在一個片區(qū)(slice)的同一行上緩存所有宏塊單元中 的信息。這是因為在編碼/解碼同一片區(qū)中的下一行中的宏塊單元時候,會參 考位于同一行中的宏塊單元的信息。所有宏塊單元中的信息是被緩存于動態(tài) 隨機(jī)存儲器(dynamic random access memory, DRAM)中。另夕卜,如果并非 以光柵掃描的順序而是以較為靈活的順序編碼/解碼宏塊單元,則將完整片區(qū) 中的所有宏塊單元中的信息儲存于動態(tài)隨機(jī)存儲器中是必需的。目前已存在相關(guān)的將宏塊單元中的信息儲存在動態(tài)隨機(jī)存儲器中的現(xiàn) 有技術(shù)。在宏塊非自適應(yīng)幀/場編碼方式中,通過不同種類的信息(例如運(yùn) 動向量或量化參數(shù))將所有宏塊單元中的信息分類。屬于同一類別且來自不 同宏塊單元中的信息將被儲存于動態(tài)隨機(jī)存儲器中連續(xù)的地址空間中。同樣 地,在宏塊自適應(yīng)幀/場編碼方式中,以不同種類的信息對所有宏塊單元中 的信息進(jìn)行分類,其中所有屬于同一類別且來自宏塊單元中頂端/底端宏塊的 信息同樣被儲存于動態(tài)隨機(jī)存儲器中連續(xù)的地址空間中。由于宏塊單元中的 信息的不同分類,致使當(dāng)編碼/解碼特定的宏塊單元時會間斷性地存取動態(tài)隨 機(jī)存儲器。由于間斷性地進(jìn)行存取,動態(tài)隨機(jī)存儲器的數(shù)據(jù)存取效率會降低,
盡管可以將編碼/解碼宏塊單元的處理過程劃分為許多管線級(pipelining stages)以分別執(zhí)行不同的操作(例如管線級可同時處理多個不同的宏塊 單元),如果間斷性的對動態(tài)隨機(jī)存儲器進(jìn)行存取,其帶寬仍然會不夠。
發(fā)明內(nèi)容
因此有必要提供一種處理視頻圖像中多個宏塊單元的方法及裝置來解 決上述技術(shù)問題。
依據(jù)本發(fā)明一實施例, 一種處理視頻圖像中多個宏塊單元的方法。該方 法包括對多個宏塊單元中的至少一第一宏塊單元執(zhí)行特定的視頻處理操 作;將第一宏塊單元中的信息儲存至第一緩沖裝置;將從第一緩沖裝置讀取 的第一宏塊單元中的信息儲存至第二緩沖裝置,其中第二緩沖裝置的數(shù)據(jù)存 取速度快于第一緩沖裝置的數(shù)據(jù)存取速度;以及依據(jù)儲存至第二緩沖裝置中 的第一宏塊單元中的信息對多個宏塊單元中的第二宏塊單元執(zhí)行特定的視 頻處理操作。
依據(jù)本發(fā)明另一實施例,揭示了一種處理視頻圖像中多個宏塊單元的裝 置。該裝置包括視頻處理電路,用以對多個宏塊單元中的至少一第一宏塊單 元執(zhí)行特定的視頻處理操作;第一緩沖裝置,耦接于視頻處理電路,用以儲存第一宏塊單元中的信息;以及第二緩沖裝置,耦接于視頻處理電路與第一 緩沖裝置,用以將從第一緩沖裝置讀取的第一宏塊單元中的信息儲存至第二 緩沖裝置;其中第二緩沖裝置的數(shù)據(jù)存取速度高于第一緩沖裝置的數(shù)據(jù)存取 速度;以及視頻處理電路依據(jù)儲存于第二緩沖裝置中的第一宏塊單元中的信 息對多個宏塊單元中的第二宏塊單元執(zhí)行特定的視頻處理操作。
實施本發(fā)明所揭示的方法或裝置同樣可執(zhí)行間斷性存取,并且存儲器的 帶寬不會因間斷性存取操作而逐漸緊缺。
圖1是本發(fā)明第一實施例視頻處理裝置的示意圖。
圖2是以光柵掃描的順序依次編碼視頻圖像的宏塊單元的示意圖。
圖3是圖1中視頻處理裝置的操作流程圖。
圖4是本發(fā)明第二實施例視頻處理裝置的示意圖。
圖5是圖4中視頻處理裝置的操作流程圖。
具體實施例方式
如上所述,為了解決因編碼/解碼宏塊單元而間斷性存取動態(tài)隨機(jī)存儲器 所引發(fā)的技術(shù)問題,提供一種可連續(xù)存取儲存于動態(tài)隨機(jī)存儲器中宏塊單元 中的信息的方法。因為各個宏塊單元中的信息被左下方宏塊單元,下方宏塊 單元,右下方宏塊單元所參考,宏塊單元中的信息被劃分為三個種類,分別 為標(biāo)頭信息(head information),主體信息(body information)禾fl尾部信息(tail information^對于具體的某一個宏塊單元而言,在處理下方宏塊單元時,包 含標(biāo)頭,主體及尾部的信息均是必需的。其中標(biāo)頭信息與尾部信息分別包含 了編碼/解碼左下方宏塊單元和右下方宏塊單元所必需的信息。換而言之,當(dāng) 編碼/解碼特定的宏塊單元時,參考此特定的宏塊單元中的上方宏塊單元中的 信息,以及此特定的宏塊單元中的左上方宏塊單元的尾部信息,并將其儲存 于動態(tài)隨機(jī)存儲器中連續(xù)的地址空間中。但是,不應(yīng)將本發(fā)明限制為以連續(xù)的方式從動態(tài)隨機(jī)存儲器中重新得到上方宏塊單元中的信息,如果宏塊單元 中的信息儲存于動態(tài)隨機(jī)存儲器中的間斷地址空間,編碼器/解碼器花費更多 的時間來從動態(tài)隨機(jī)存儲器中存取必需的信息。需要說明的是,在下文的描 述中,視頻處理裝置用以編碼宏塊單元。盡管如此,類似的原理可以實施于 視頻處理裝置中以解碼宏塊單元。
圖1是本發(fā)明第一實施例視頻處理裝置100的示意圖。如圖1所示,視 頻處理裝置IOO包括視頻處理電路105,第一緩沖裝置IIO,以及第二緩沖 裝置115。假定以光柵掃描的順序依次編碼多個宏塊單元。通過設(shè)置于視頻 處理電路105中的管線級120a, 120b, 120c以及120d來完成對每個宏塊單 元的編碼。以MPEG-2或H.264/AVC為例,有關(guān)編碼每個宏塊單元的處理 可通過設(shè)置四個管線級來執(zhí)行,比如,分別對應(yīng)于整數(shù)點移動預(yù)測(integer motion estimation, IME)、分?jǐn)?shù)f象素運(yùn)云力活動(fractional motion estimation, FME)、差分脈沖編碼調(diào)制(differential pulse code modulation, DPCM)以 及熵編碼(entropy coding, EC)的管線級。在本實施例中,管線級120a接 收輸入宏塊單元中的特定宏塊單元以執(zhí)行整數(shù)點移動預(yù)測;以及在管線級 120a完成處理特定的宏塊單元之后,管線級120b對特定的宏塊單元執(zhí)行分 數(shù)像素運(yùn)動估計;隨后處理緊接特定的宏塊單元的宏塊單元。同樣地,管線 級120c和管線級120d分別根據(jù)上述方式執(zhí)行差分脈沖編碼調(diào)制和熵編碼。 請注意,以上說明僅是用于闡述管線級120a、 120b、 120c以及120d的操作 過程,并非對本發(fā)明的限制。如,本發(fā)明所設(shè)置管線級的數(shù)量并不限于4個。
第一緩沖裝置110為具有多個儲存區(qū)125a、 125b、 125c、 ...、 125n的 動態(tài)隨機(jī)存儲器。在本實施例中,每個儲存區(qū)125a、 125b、 125c、 ...、 125n 用以儲存宏塊單元的信息。并且每個儲存區(qū)的數(shù)據(jù)容量均相同。第二緩沖裝 置115包含以管型結(jié)構(gòu)(pipelining configuration)排列的緩沖單元130a'、 130a、 130b、 130c和130d。比如,管線級120a, 120b, 120c以及120d編碼上方 宏塊單元后,上方宏塊單元的信息被儲存于第一緩沖裝置110。且在管線級120a、 120b、 120c以及120d開始處理(如編碼)當(dāng)前宏塊單元之前,預(yù)存 上方宏塊單元(uppermacroblockunit)的信息中的一部分必需的信息至緩沖 單元130a'。儲存于第一緩沖裝置110的每一信息被載入引導(dǎo)緩沖單元(如 緩沖單元130a'),儲存于緩沖單元130a'中的數(shù)據(jù)被轉(zhuǎn)送至緩沖單元130a。 同樣地,當(dāng)儲存于緩沖單元130c中的數(shù)據(jù)被轉(zhuǎn)送至緩沖單元130d時,除了 儲存于緩沖單元130d中的數(shù)據(jù)將被丟棄之外,各個緩沖單元130a、 130b、 130c在接收來自先前緩沖單元的數(shù)據(jù)之前,分別轉(zhuǎn)送儲存于自身的數(shù)據(jù)至隨 后(following)的緩沖單元。因此緩沖單元130a,、 130a、 130b、 130c和130d 是設(shè)置為管型結(jié)構(gòu)。
請注意,第二緩沖裝置115的數(shù)據(jù)存取速度高于第一緩沖裝置110的數(shù) 據(jù)存取速度。在其它實施例中,第二緩沖裝置115的緩沖單元由多個寄存器 構(gòu)成。各編碼管線級可以容易地存取儲存于寄存器中的數(shù)據(jù),并且僅需花費 一個時鐘周期來將數(shù)據(jù)從一個緩沖單元轉(zhuǎn)送(shifted)到另一個緩沖單元。
圖2是以光柵掃描的順序依次編碼視頻圖像200的宏塊單元的示意圖。 其中視頻圖像200包括宏塊單元MBU,、 MBU2、 MBU3、 ...、 MBUm、 MBUm+1、 MBUm+2、 ...、 MBUy。如圖2所示,視頻處理裝置首先編碼宏塊單元MBU,, 然后依次編碼宏塊單元MBU2、 MBU3、 ...、 MBUy。當(dāng)編碼宏塊單元MBUm+1、 MBUm+2、 ...、 MBUy時,先前已編碼的宏塊單元中的信息將會被參考。儲存 區(qū)125a是用以儲存標(biāo)頭信息INF01—h、主體信息INF01一b以及尾部信息 INF01J。同樣地,儲存區(qū)125b用以儲存宏塊單元MBU2的標(biāo)頭信息 INF02—h,主體信息INF02—b和尾部信息INF02—t。而儲存區(qū)125c則用以 儲存宏塊單元MBU3標(biāo)頭信息INF03—h、主體信息INF03—b、和尾部信息 INF03—t。此外,緩沖單元130a'用以預(yù)存(preloading)宏塊單元中的信息。 例如,如果管線級120a開始編碼宏塊單元MBUm并且編碼宏塊單元MBUm.4 的信息已儲存于第一緩沖裝置110,自第一緩沖裝置110讀取出宏塊單元 MBU,的信息和宏塊單元MBU2的標(biāo)頭信息,并隨后載入至緩沖單元130a'。換而言之,信息INFOl一h—INF02—h連續(xù)地自第一緩沖裝置U0讀出并預(yù)存 于緩沖單元130a'。在管線級120a完成對宏塊單元MBUm的編碼之后,儲存 于緩沖單元130a,的信息INF01—h—INFOl一t被傳送至緩沖單元130a,以及 主體信息INF02—b,尾部信息INF02一t以及標(biāo)頭信息INF03Ji連續(xù)地從第 一緩沖裝置110讀取至緩沖單元130a'。管線級120a通過參考緩存于第二緩 沖裝置115中的標(biāo)頭信息INF01—h、主體信息INF01—b、尾部信息INF01—t 以及標(biāo)頭信息INF02—h而不是參考第一緩沖裝置110 (即動態(tài)隨機(jī)存儲器) 可以編碼宏塊單元MBUm+"通過有效減少獲取先前宏塊信息的存取時間, 提高了第一緩沖裝置110的性能。
如上所述,在管線級120a完成對宏塊單元MBUm的編碼之后,以及在 管線級120a、 120b開始分別編碼宏塊單元MBUn^、 MBLL之前,宏塊單元 MBU,的標(biāo)頭信息INF01—h、主體信息INF01—b以及尾部信息INFOl—t從緩 沖單元130a轉(zhuǎn)送至緩沖單元130b,以及宏塊單元MBU2的標(biāo)頭信息 INF02Ji、主體信息INF02—b和尾部信息INF02—t從緩沖單元130a'轉(zhuǎn)送至 緩沖單元130a。宏塊單元MBU3的標(biāo)頭信息INF03—h被轉(zhuǎn)送至緩沖單元 130a,的尾部區(qū)域(tail area),宏塊單元MBU3的主體信息INF03—b、尾部 信息INF03—t以及宏塊單元MBU4的標(biāo)頭信息INF04—h從第一緩沖裝置110 連續(xù)地讀取至緩沖單元130a'。管線級120b參考儲存于緩沖單元130b中的 標(biāo)頭信息INF01一h、主體信息INF01一b、尾部信息INFOl—t和儲存于緩沖單 元130a中的標(biāo)頭信息INF02_h以編碼宏塊單元MBUm;管線級120a同樣可 以參考儲存于緩沖單元130b中的尾部信息INFOl—t和儲存于緩沖單元130a 中的標(biāo)頭信息INF02—h、主體信息INF02_b和尾部信息INF02_t以及儲存 于緩沖單元130a'中的標(biāo)頭信息INF03_h來編碼宏塊單元MBUm+1。以同樣 的方式,逐次地對其它的宏塊單元進(jìn)行編碼。此外,在本發(fā)明另一實施例中, 可以去除第二緩沖裝置115中的緩沖單元130a',即不再具備有關(guān)預(yù)存的功 能。盡管在編碼宏塊單元時,管線級120a與管線級120b可能會參考第一緩沖裝置110。在另外的實施例中,第二緩沖裝置115可由多個靜態(tài)存儲器 (SRAMS)實現(xiàn);即緩沖單元130a,、 130a、 130b、 130c、 130d為靜態(tài)存儲
器。盡管靜態(tài)存儲器的總?cè)萘啃∮诩拇嫫?,靜態(tài)存儲器的數(shù)據(jù)存取速度也小 于寄存器數(shù)據(jù)存取速度,以及靜態(tài)存儲器的存取可能比存取寄存器更復(fù)雜, 但此類設(shè)計應(yīng)屬于本發(fā)明所要求保護(hù)的范圍之內(nèi)。
圖3是圖1中視頻處理裝置100在編碼特定的宏塊單元時的操作流程圖。 倘若能達(dá)到相同的結(jié)果,圖3所示的流程圖的步驟并不限于以下所示的順序, 即,其它步驟也可以插入到下列步驟中。所示的步驟如下
步驟300:開始。
步驟305:當(dāng)編碼特定的宏塊單元時,視頻處理裝置IOO檢查是否需要
參考上方宏塊單元中的信息。如果需要參考,執(zhí)行步驟310;否則,執(zhí)行步
驟330。
步驟310:除了緩存于緩沖單元130d中的數(shù)據(jù)被丟棄之外,依據(jù)管型結(jié) 構(gòu)緩存于緩沖單元130a'、 130a、 130b、 130c的數(shù)據(jù)會轉(zhuǎn)送至下一個緩沖單 元。
步驟315:自第一緩沖裝置IIO讀取上方宏塊單元中的信息(例如左上 方宏塊單元的尾部信息,上方宏塊單元的信息,以及右上方宏塊單元的標(biāo)頭 信息),并儲存于第二緩沖裝置115。
步驟320:管線級120a、 120b、 120c和120d分別依據(jù)上方宏塊單元中 的信息來編碼特定的宏塊單元。
步驟325:將特定的宏塊單元的信息儲存于第一緩沖裝置110,最后的 宏塊單元除外。
步驟330:各個管線級120a、 120b、 120c和120d分別編碼特定的宏塊 單元。
步驟335:結(jié)束。
圖4是本發(fā)明第二實施例視頻處理裝置400的示意圖。視頻處理裝置400包括視頻處理電路405,第一緩沖裝置410,以及第二緩沖裝置415。同樣以 光柵掃描的順序依次編碼宏塊單元,視頻處理電路405中的管線級420a、 420b、 420c和420d編碼各個宏塊單元。關(guān)于管線級420a、 420b、 420c和 420d的操作或功能與管線級120a、 120b、 120c和120d—致,在此不再詳述。
第一緩沖裝置410是包含有多個數(shù)據(jù)儲存區(qū)425a、 425b、 425c..... 425n
的動態(tài)隨機(jī)存儲器。各個數(shù)據(jù)儲存區(qū)425a、 425b、 425c、 ...、 425n用以儲 存宏塊單元中的信息。第二緩沖裝置415包括多個緩沖單元430a、430b、430c、 430d和430e。在本實施例中,緩沖單元430a、 430b、 430c、 430d和430e 分別由靜態(tài)存儲器實現(xiàn)。
在本實施例中,若在解碼宏塊單元MBU,到宏塊單元MBUm的整個過程 中均未參考上方宏塊單元中的信息,則視頻處理裝置400的操作與圖1中視 頻處理裝置100的操作一致。但是,第二緩沖裝置415的操作不同于圖1中 的第二緩沖裝置115。儲存于第一緩沖裝置410的數(shù)據(jù)被分別傳送至緩沖單 元430a、 430b、 430c、 430d和430e,并不利用管型結(jié)構(gòu)。例如,在編碼宏 塊單元MBUmw、 MBUm+2、 MBUm+3、 MBU^之前,連續(xù)地從第一緩沖裝置 410讀取宏塊單元MBU,、 MBU2、 MBU3、 MBU4、 MBU5的信息并分別傳送 至緩沖單元430a、 430b、 430c、 430d和430e。因此,通過參考第二緩沖裝 置415,管線級420a、 420b、 420c、和420d可分別對宏塊單元MB"、 MBU2、 MBU3、 MBU4、 MBUs進(jìn)行編碼。以管線級420a為例,管線級420a參考緩 沖單元430a和430b以編碼宏塊單元MBUm+1 ,然后參考緩沖單元430a、430b、 430c以編碼宏塊單元MBUm+2;隨后,管線級420a參考緩沖單元430b、430c、 430d以編碼宏塊單元MBUm+3;以及管線級420a參考緩沖單元430c、 430d、 430e以編碼宏塊單元MBUm+4。但是,以上說明不應(yīng)理解為對本發(fā)明的限制。 如上所述,如能確保管線級420a、 420b、 420c和420d可以準(zhǔn)確地參考緩沖 單元430a、 430b、 430c、 430d和430e。那么宏塊單元MBU,、 MBU2、 MBU3、 MBU4、 MBU5的信息同樣可以隨機(jī)地儲存于緩存于緩沖單元430a、 430b、430c、 430d和430e。其它管線級420b、 420c和420d參考緩沖單元430a、 430b、 430c、 430d和430e以編碼宏塊單元的操作過程與管線級420a的操作 過程相似。因此不再詳細(xì)陳述。
在本發(fā)明提供的其它實施例中,各個管線級420a、 420b、 420c和420d 均具有第三緩沖裝置,例如,芯片內(nèi)寄存器(on-chip register)。第三緩沖 裝置是用以緩存從第二緩沖裝置415中的至少一緩沖單元中獲取的信息。因 此通過預(yù)先獲取編碼特定的宏塊單元所必需的信息,每一管線級420a、420b、 420c和420d可直接參考緩存于第三緩沖裝置中的信息。此外,第二緩沖裝 置可由單一的靜態(tài)存儲器(SRAM)實現(xiàn)。即緩沖單元430a、 430b、 430c、 430d和430e指的是單一靜態(tài)存儲器中的多個儲存區(qū)。以上設(shè)計同樣屬于本 發(fā)明的范疇。
圖5是圖4中視頻處理裝置400在編碼特定的宏塊單元時的操作流程圖。 其中管線級420a、 420b、 420c和420d包括第三緩沖裝置。如果可以達(dá)到相同 的效果,則不必按照此執(zhí)行順序,換句話說,其它步驟也可以插入到下列步 驟中。所示步驟如下
步驟500:開始。
步驟505:當(dāng)編碼特定的宏塊單元時,視頻處理裝置400檢查是否需要 參考上方宏塊單元中的信息。如果需要參考,執(zhí)行步驟510;否則,執(zhí)行步 驟530。
步驟510:自第一緩沖裝置410讀取上方宏塊單元中的信息,并分別儲 存于第二緩沖裝置415的對應(yīng)的緩沖單元中。
步驟515:管線級420a、 420b、 420c和420d獲取編碼特定的宏塊單元 所必需的信息,其中自第二緩沖裝置415獲取編碼特定的宏塊單元所必需的 信息,并分別儲存于對應(yīng)的第三緩沖裝置中。
步驟520:管線級420a、 420b、 420c和420d分別根據(jù)獲取編碼特定的 宏塊單元所必需的信息來編碼特定的宏塊單元。步驟525:將特定的宏塊單元的信息儲存于第一緩沖裝置410,最后的
宏塊單元除外。
步驟530:管線級420a、 420b、 420c和420d分別編碼特定的宏塊單元。 步驟535:結(jié)束。
以上各個實施方式中,視頻處理裝置執(zhí)行的特定的視頻處理操作是用來 說明編碼宏塊單元的范例;但是特定的視頻處理操作同樣可以是視頻解碼操 作。以上所提及的編碼操作(比如,IME,FME,DPCM,EC)可以用對應(yīng)的解碼 操作來替換。這些都是符合本發(fā)明的精神。由于本領(lǐng)域的技術(shù)人員可以容易 地了解應(yīng)用于宏塊單元編碼的上述數(shù)據(jù)緩沖機(jī)制之后的應(yīng)用于宏塊單元解 碼的數(shù)據(jù)緩沖機(jī)制,出于簡潔的目的,在此省略進(jìn)一步的描述。
雖然本發(fā)明已以較佳實施例揭露如上,然其并非用以限定本發(fā)明,任何 熟悉此領(lǐng)域技術(shù)的技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可做些許 更動與潤飾,因此本發(fā)明的保護(hù)范圍應(yīng)當(dāng)以權(quán)利要求書所界定的保護(hù)范圍為 準(zhǔn)。
權(quán)利要求
1.一種處理視頻圖像中多個宏塊單元的方法,其特征在于,所述方法包括以下步驟(a)對該多個宏塊單元中的至少一第一宏塊單元執(zhí)行特定的視頻處理操作;(b)將該第一宏塊單元中的信息儲存至第一緩沖裝置;(c)將從該第一緩沖裝置讀取的該第一宏塊單元中的信息儲存至第二緩沖裝置,其中該第二緩沖裝置的數(shù)據(jù)存取速度快于該第一緩沖裝置的數(shù)據(jù)存取速度;以及(d)依據(jù)儲存至該第二緩沖裝置中的該第一宏塊單元中的信息對該多個宏塊單元中的第二宏塊單元執(zhí)行該特定的視頻處理操作。
2. 如權(quán)利要求1所述的處理視頻圖像中多個宏塊單元的方法,其特征 在于,該特定的視頻處理操作包括多個管線級;該第二緩沖裝置包括設(shè)置為管 型結(jié)構(gòu)的多個緩沖單元。
3. 如權(quán)利要求2所述的處理視頻圖像中多個宏塊單元的方法,其特征 在于,步驟(a)包括對多個第一宏塊單元執(zhí)行該特定的視頻處理操作;步驟(b) 包括將該多個第一宏塊單元中的信息儲存至該第一緩沖裝置;步驟(c)包括將 從該第一緩沖裝置讀取該多個第一宏塊單元中的信息依序地儲存至該第二 緩沖裝置的引導(dǎo)緩沖單元;步驟(d)包括利用各該多個管線級處理該第二宏塊 單元,其中各該多個管線級參考儲存于該多個緩沖單元的至少一緩沖單元中 的信息以處理該第二宏塊單元。
4. 如權(quán)利要求3所述的處理視頻圖像中多個宏塊單元的方法,其特征 在于,該多個管線級的總數(shù)小于該多個緩沖單元的總數(shù),以及當(dāng)處理該第二 宏塊單元時該引導(dǎo)緩沖單元預(yù)載各該多個管線級所需的信息。
5. 如權(quán)利要求3所述的處理視頻圖像中多個宏塊單元的方法,其特征在于,該方法進(jìn)一步包括由多個寄存器或多個靜態(tài)存儲器實現(xiàn)該第二緩沖 裝置。
6. 如權(quán)利要求2所述的處理視頻圖像中多個宏塊單元的方法,其特征在 于,當(dāng)?shù)谝还芫€級與一第二管線級分別處理該第二宏塊單元時,該第一管線 級以及接在該第一管線級之后的至少一第二管線級存取一第一緩沖單元,以及步驟(d)包括該第一管線級處理該第二宏塊單元之后,傳送儲存于該第一緩沖單元中的信息至一第二緩沖單元;其中該第二緩沖單元緊接該第一緩沖 單元,傳送至該第二緩沖單元的信息不包括沒有被該第二管線級參考的信 息。
7. 如權(quán)利要求1所述的處理視頻圖像中多個宏塊單元的方法,其特征 在于,步驟(b)包括將該第一宏塊單元中的信息儲存至該第一緩沖裝置的連續(xù) 地址空間中。
8. 如權(quán)利要求1所述的處理視頻圖像中多個宏塊單元的方法,其特征 在于,該特定的視頻處理操作包括多個管線級;該第二緩沖裝置包含多個緩 沖單元。
9. 如權(quán)利要求8所述的處理視頻圖像中多個宏塊單元的方法,其特征 在于,步驟(a)包括對多個第一宏塊單元執(zhí)行該特定的視頻處理操作;步驟(b) 包括儲存該多個第一宏塊單元中的信息至該第一緩沖裝置;步驟(c)包括將從 該第一緩沖裝置所讀取的該多個第一宏塊單元的信息分別儲存至該多個緩 沖單元;步驟(d)包括利用各該多個管線級處理該第二宏塊單元,其中各該多 個管線級參考儲存于該多個緩沖單元中的至少一個緩沖單元的信息以處理 該第二宏塊單元。
10. 如權(quán)利要求9所述的處理視頻圖像中多個宏塊單元的方法,其特征 在于,由多個靜態(tài)存儲器或單一靜態(tài)存儲器實現(xiàn)該第二緩沖裝置。
11. 如權(quán)利要求9所述的處理視頻圖像中多個宏塊單元的方法,其特征在于,該方法進(jìn)一步包括將一第三緩沖裝置提供給該多個管線級的至少一管線級;其中步驟(d)還包括在該管線級處理該第二宏塊單元之前,自該多個緩沖單元的至少一緩沖單元獲取該管線級所需的信息。
12. 如權(quán)利要求l所述的處理視頻圖像中多個宏塊單元的方法,其特征 在于,該特定的視頻處理操作是視頻編碼操作或視頻解碼操作。
13. —種用以處理視頻圖像中多個宏塊單元的裝置,其特征在于,所述 裝置包括視頻處理電路,用以對該多個宏塊單元中的至少一第一宏塊單元執(zhí)行特 定的視頻處理操作;第一緩沖裝置,耦接于該視頻處理電路,用以儲存該第一宏塊單元中的 信息;以及第二緩沖裝置,耦接于該視頻處理電路與該第一緩沖裝置,用以將從該第一緩沖裝置讀取的該第一宏塊單元中的信息儲存至該第二緩沖裝置;其中該第二緩沖裝置的數(shù)據(jù)存取速度高于該第一緩沖裝置的數(shù)據(jù)存取 速度;以及該視頻處理電路依據(jù)儲存于該第二緩沖裝置中的該第一宏塊單元 中的信息對該多個宏塊單元中的第二宏塊單元執(zhí)行該特定的視頻處理操作。
14. 如權(quán)利要求13所述的用以處理視頻圖像中多個宏塊單元的裝置, 其特征在于,該視頻處理電路包括多個管線級;以及該第二緩沖裝置包括設(shè)置為管型結(jié)構(gòu)的多個緩沖單元;其中,該視頻處理電路對多個第一宏塊單元執(zhí)行該特定的視頻處理操 作;該第一緩沖裝置用以儲存該多個第一宏塊單元中的信息;該第二緩沖裝 置用以將該多個第一宏塊單元中的信息依序地儲存至該第二緩沖裝置的引 導(dǎo)緩沖單元;各該多個管線級參考儲存于該多個緩沖單元中至少一緩沖單元的信息以處理該第二宏塊單元。
15. 如權(quán)利要求14所述的用以處理視頻圖像中多個宏塊單元的裝置,其 特征在于,該多個管線級的總數(shù)小于該多個緩沖單元的總數(shù),以及當(dāng)處理該 第二宏塊單元時該引導(dǎo)緩沖單元預(yù)載各該多個管線級所需的信息。
16. 如權(quán)利要求15所述的用以處理視頻圖像中多個宏塊單元的裝置,其 特征在于,當(dāng)?shù)谝还芫€級與一第二管線級分別處理該第二宏塊單元時,該第 一管線級以及接在該第一管線級之后的至少一第二管線級存取該第二緩沖 裝置中的第一緩沖單元;以及該第一管線級處理該第二宏塊單元之后,該第 一緩沖單元將數(shù)據(jù)傳送至緊接該第一緩沖單元的第二緩沖單元,其中該數(shù)據(jù) 不包括該第二管線級不參考的信息。
17. 如權(quán)利要求14所述的用以處理視頻圖像中多個宏塊單元的裝置,其 特征在于,該多個緩沖單元由多個寄存器或多個靜態(tài)存儲器實現(xiàn)。
18. 如權(quán)利要求13所述的用以處理視頻圖像中多個宏塊單元的裝置,其 特征在于,該第一宏塊單元中的信息儲存于該第一緩沖裝置的連續(xù)地址空間 中。
19. 如權(quán)利要求13所述的用以處理視頻圖像中多個宏塊單元的裝置,其特征在于,該視頻處理電路包括 多個管線級;以及 該第二緩沖裝置包括多個緩沖單元;其中,該視頻處理電路對多個第一宏塊單元執(zhí)行該特定的視頻處理操作;該第一緩沖裝置用以儲存該多個第一宏塊單元中的信息;讀取自該第一 緩沖裝置的該多個第一宏塊單元中的信息被分別儲存至該多個緩沖單元;以 及各該多個管線級參考儲存于該多個緩沖單元中至少一緩沖單元的信息以 處理該第二宏塊單元。
20. 如權(quán)利要求19所述的用以處理視頻圖像中多個宏塊單元的裝置,其特征在于,該第二緩沖裝置由多個靜態(tài)存儲器或單一靜態(tài)存儲器實現(xiàn)。
21. 如權(quán)利要求19所述的用以處理視頻圖像中多個宏塊單元的裝置,其 特征在于,該多個管線級的至少一管線級具有一第三緩沖裝置,以及在該管 線級處理該第二宏塊單元之前,該管線級所需的信息是從該多個緩沖單元的 至少一緩沖單元取得并緩存于該第三緩沖裝置。
22. 如權(quán)利要求13所述的用以處理視頻圖像中多個宏塊單元的裝置其 特征在于,該特定的視頻處理操作是視頻編碼操作或視頻解碼操作。
全文摘要
本發(fā)明揭露一種處理視頻圖像中多個宏塊單元的方法及裝置。其中該方法包括對多個宏塊單元中的至少一第一宏塊單元執(zhí)行特定的視頻處理操作。將第一宏塊單元中的信息儲存至第一緩沖裝置。將從第一緩沖裝置讀取的第一宏塊單元中的信息儲存至第二緩沖裝置,其中第二緩沖裝置的數(shù)據(jù)存取速度快于第一緩沖裝置的數(shù)據(jù)存取速度。以及依據(jù)儲存至第二緩沖裝置中的第一宏塊單元中的信息對多個宏塊單元中的第二宏塊單元執(zhí)行特定的視頻處理操作。實施本發(fā)明所揭示的方法或裝置同樣可執(zhí)行間斷性存取,并且存儲器的帶寬不會因間斷性存取操作而逐漸緊缺。
文檔編號H04N7/26GK101299816SQ20071014653
公開日2008年11月5日 申請日期2007年8月20日 優(yōu)先權(quán)日2007年5月6日
發(fā)明者郭志輝, 黃毓文 申請人:聯(lián)發(fā)科技股份有限公司