專利名稱:像素數(shù)據(jù)分發(fā)方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖像處理領(lǐng)域,更具體地涉及一種用在圖像編解碼器中的像素數(shù)據(jù)分發(fā)方法和系統(tǒng)。
背景技術(shù):
在H. 264標準中,幀內(nèi)編碼過程主要包括預(yù)測模式判決和預(yù)測數(shù)據(jù)生成兩部分。在H. 264編解碼器中,按照從上到下、從左到右的順序逐個對圖像中的宏塊進行編碼或解碼處理,并且在對當前宏塊進行幀內(nèi)編碼時需要用到與當前宏塊相鄰且位于當前宏塊上方的已完成編碼的宏塊中的最下一行像素的重建后的像素數(shù)據(jù)。所以,在對當前宏塊進行編碼的過程中,需要獲取與當前宏塊相鄰且位于當前宏塊上方的已完成編碼的宏塊中的最下一行像素的重建后的像素數(shù)據(jù)。
傳統(tǒng)上,與當前宏塊相鄰且位于當前宏塊上方的已完成編碼的宏塊中的最下一行像素的重建后的像素數(shù)據(jù)可以存儲在H. 264編解碼器內(nèi)的存儲裝置中,也可以存儲在H. 264編解碼器外的DRAM (動態(tài)隨機存取存儲器)中。如果將這些像素的重建后的像素數(shù)據(jù)存儲在H. 264編解碼器內(nèi)的存儲裝置中,則會增大H. 264編解碼器的大小。如果將這些像素的重建后的像素數(shù)據(jù)存儲在H. 264編碼器外的DRAM中,則H. 264編解碼器的大小會受到不同的數(shù)據(jù)分發(fā)方法的影響。
發(fā)明內(nèi)容
為了盡可能地減小H. 264編解碼器的大小,本發(fā)明提供了一種新穎的用在圖像編解碼器中的像素數(shù)據(jù)分發(fā)方法和系統(tǒng)。根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法,包括像素數(shù)據(jù)存儲裝置響應(yīng)于功能模塊A、功能模塊B、以及功能模塊C的請求,分別向功能模塊A、功能模塊B、以及功能模塊C發(fā)送相應(yīng)的參考像素數(shù)據(jù)。其中,像素數(shù)據(jù)存儲裝置利用三個地址指針Pointer_A、Pointer_B、以及
指示將分別發(fā)送給功能模塊A、功能模塊B、以及功能模塊C的參考像素數(shù)據(jù)所在的地址,利用一個地址指針Pointer_Write來指示其從外部讀取的參考像素數(shù)據(jù)將要寫入的地址。其中,像素數(shù)據(jù)存儲裝置是先進先出的、以字為基本存儲單位的緩存器,并將同一個宏塊的有關(guān)売度的參考像素數(shù)據(jù)和有關(guān)色度的參考像素數(shù)據(jù)分別存儲在兩個相鄰的存儲單元中。其中,根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法用于幀內(nèi)預(yù)測編碼的場景下,并且功能模塊A是針對亮度的預(yù)測模式判決模塊,功能模塊B是針對色度的預(yù)測模式判決模塊,功能模塊C是幀內(nèi)預(yù)測數(shù)據(jù)生成模塊。根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)系統(tǒng),位于像素數(shù)據(jù)存儲裝置中,并且包括請求接收單元,用于接收來自功能模塊A、功能模塊B、以及功能模塊C的請求;數(shù)據(jù)發(fā)送單元,用于響應(yīng)于功能模塊A、功能模塊B、以及功能模塊C的請求,分別向功能模塊A、功能模塊B、以及功能模塊C發(fā)送相應(yīng)的參考像素數(shù)據(jù)。其中,該像素數(shù)據(jù)分發(fā)系統(tǒng)還包括地址控制單元,用于利用三個地址指針Pointer_A、Pointer_B、以及Pointer_C來指示將分別發(fā)送給功能模塊A、功能模塊B、以及功能模塊C的參考像素數(shù)據(jù)所在的地址。其中,地址控制單元還用于利用一個地址指針Pointer_Write來指示像素數(shù)據(jù)存儲裝置從外部讀取的參考像素數(shù)據(jù)將要寫入的地址。在像素數(shù)據(jù)存儲裝置是先進先出的、以字為基本存儲單位的緩存器的情況下,地址控制單元還用于指示像素數(shù)據(jù)存儲裝置將同一個宏塊的有關(guān)売度的參考像素數(shù)據(jù)和有關(guān)色度的參考像素數(shù)據(jù)分別存儲在兩個相鄰的存儲單元中。其中,該像素數(shù)據(jù)分發(fā)系統(tǒng)用于幀內(nèi)預(yù)測編碼的場景下,并且功能模塊A是針對 亮度的預(yù)測模式判決模塊,功能模塊B是針對色度的預(yù)測模式判決模塊,功能模塊C是幀內(nèi) 預(yù)測數(shù)據(jù)生成模塊。根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法和系統(tǒng)將參考像素數(shù)據(jù)集中存放在緩沖器中,各模塊共享存儲單元,不需要逐級傳遞,減少了數(shù)據(jù)存儲電路。
從下面結(jié)合附圖對本發(fā)明的具體實施方式
的描述中可以更好地理解本發(fā)明,其中圖I示出了編解碼器中與根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法有關(guān)的功能模塊之間的數(shù)據(jù)流的框圖;圖2示出了參考像素緩沖器102中的數(shù)據(jù)存儲形式;以及圖3示出了根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)系統(tǒng)的框圖。
具體實施例方式下面將詳細描述本發(fā)明各個方面的特征和示例性實施例。下面的描述涵蓋了許多具體細節(jié),以便提供對本發(fā)明的全面理解。但是,對于本領(lǐng)域技術(shù)人員來說顯而易見的是,本發(fā)明可以在不需要這些具體細節(jié)中的一些細節(jié)的情況下實施。下面對實施例的描述僅僅是為了通過示出本發(fā)明的示例來提供對本發(fā)明更清楚的理解。本發(fā)明絕不限于下面所提出的任何具體配置和算法,而是在不脫離本發(fā)明的精神的前提下覆蓋了相關(guān)元素、部件和算法的任何修改、替換和改進。本發(fā)明提出了一種用在圖像編解碼器中的像素數(shù)據(jù)分發(fā)方法和系統(tǒng)。其中,本發(fā)明應(yīng)用于與當前宏塊相鄰且位于當前宏塊上方的已完成編碼的宏塊中的最下一行像素的重建后的像素數(shù)據(jù)(為了方便說明,下文中將這些數(shù)據(jù)稱為“參考像素數(shù)據(jù)”)被存儲在H. 264編解碼器外的DRAM中的情況。圖I示出了圖像編解碼器中與根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法有關(guān)的功能模塊之間的數(shù)據(jù)流的框圖。如圖I所示,圖像編解碼器中包括參考像素緩沖器102、針對亮度分量的預(yù)測模式判決模塊104、針對色度分量的預(yù)測模式判決模塊106、幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108、以及圖像重建模塊110。
在圖I中,參考像素緩沖器102從DRAM讀取參考像素數(shù)據(jù),并將參考像素數(shù)據(jù)分發(fā)給預(yù)測模式判決模塊104和106、以及幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108。這樣,圖像編解碼器中只有參考像素緩沖器102需要存儲參考像素數(shù)據(jù),而其他功能模塊不需要對參考像素數(shù)據(jù)進行存儲,所以相對于現(xiàn)有技術(shù)而言,應(yīng)用根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法的圖像編解碼器存儲參考像素數(shù)據(jù)的開銷很小。根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法用在圖像編解碼器對圖像進行編碼的過程中。具體地,參考像素緩沖器102從DRAM獲取參考像素數(shù)據(jù),響應(yīng)于預(yù)測模式判決模塊104和幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108的請求向預(yù)測模式判決模塊104和幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108分發(fā)有關(guān)亮度的參考像素數(shù)據(jù),響應(yīng)于預(yù)測模式判決模塊106和幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108的請求向預(yù)測模式判決模塊106和幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108分發(fā)有關(guān)色度的參考像素數(shù)據(jù)。預(yù)測模式判決模塊104利用有關(guān)亮度的參考像素數(shù)據(jù)做出針對亮度分量的預(yù)測模式判決,并經(jīng)由預(yù)測模式判決模塊106將針對亮度分量的預(yù)測模式判決結(jié)果發(fā)送給幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108。預(yù)測模式判決模塊106利用有關(guān)色度的參考像素數(shù)據(jù)做出針對色度分量的預(yù)測模式判決,并將針對色度分量的預(yù)測模式判決結(jié)果發(fā)送給幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108。幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108根據(jù)針對亮度分量的預(yù)測模式判決結(jié)果利用有關(guān) 亮度的參考像素數(shù)據(jù)生成有關(guān)亮度的幀內(nèi)預(yù)測數(shù)據(jù),并根據(jù)針對色度分量的預(yù)測模式判決結(jié)果利用有關(guān)色度的參考像素數(shù)據(jù)生成有關(guān)色度的幀內(nèi)預(yù)測數(shù)據(jù),并將有關(guān)亮度和色度的幀內(nèi)預(yù)測數(shù)據(jù)發(fā)送給圖像重建模塊110。圖像重建模塊110利用有關(guān)亮度和色度的幀內(nèi)預(yù)測數(shù)據(jù)來重建圖像。圖2示出了參考像素緩沖器102中的數(shù)據(jù)存儲形式。其中,參考像素緩沖器102是一種先進先出(FIFO)的、以字為基本存儲單位的緩存器。如圖2所示,參考像素緩沖器中的每個字可以存儲一個宏塊的有關(guān)亮度的參考像素數(shù)據(jù)或者有關(guān)色度的參考像素數(shù)據(jù),并且同一個宏塊的有關(guān)売度的參考像素數(shù)據(jù)和有關(guān)色度的參考像素數(shù)據(jù)被分別存儲在兩個相鄰的字中。參考像素緩沖器中的字的地址編號為O至Size_buf_l。在根據(jù)本發(fā)明的實施例中,參考像素緩沖器102利用以下4個指針來控制其它功能模塊對于參考像素緩沖器102的訪問l)Pointer_write :指示參考像素緩沖器從DRAM讀取的參考像素數(shù)據(jù)將要寫入的地址,初始值為O ;2)Pointer_MD_L :指示將分發(fā)給預(yù)測模式判決模塊104的參考像素數(shù)據(jù)所在的地址,初始值為O ;3)Pointer_MD_C :指示將分發(fā)給預(yù)測模式判決模塊106的參考像素數(shù)據(jù)所在的地址,初始值為I ;以及4)Pointer_pred :指示將分發(fā)給幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108的參考像素數(shù)據(jù)所在的地址,初始值為O。參考像素緩存器102中的處于Pointer_pred所指示的地址和Pointer_write所指示的地址之間的地址中的參考像素數(shù)據(jù)(包括這兩個指針所指示的地址中的參考像素數(shù)據(jù))都是有效的。其他數(shù)據(jù)可以是無效的,并可以被更新。每當參考像素緩沖器102從DRAM讀取一個宏塊的針對亮度/色度的參考像素數(shù)據(jù)時,Pointer_write增I。預(yù)測模式判決模塊104和106、以及巾貞內(nèi)預(yù)測數(shù)據(jù)生成模塊108中的每一個都可以向參考像素緩沖器102發(fā)送讀取請求信號,以請求參考像素緩沖器102向其分發(fā)相應(yīng)的參考像素數(shù)據(jù)。每當參考像素緩沖器102響應(yīng)于預(yù)測模式判決模塊104的請求向其分發(fā)一個宏塊的有關(guān)亮度的參考像素數(shù)據(jù)后,Pointer_MD_I^|2。每當參考像素緩沖器102響應(yīng)于預(yù)測模式判決模塊106的請求向其分發(fā)一個宏塊的有關(guān)色度的參考像素數(shù)據(jù)后,Pointer_MD_(^| 2。每當參考像素緩沖器102響應(yīng)于幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108的請求向其分發(fā)一個宏塊的有關(guān)亮度/色度的參考像素數(shù)據(jù)后,Pointer_pred增I。根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法將參考像素數(shù)據(jù)集中存放在緩沖器102中,預(yù)測模式判決模塊104和106、以及幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108共享存儲單元,不需要逐級傳遞,減少了預(yù)測模式判決模塊104和106中的參考數(shù)據(jù)存儲電路。圖3示出了根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)系統(tǒng)的框圖。需要說明的是,根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)系統(tǒng)位于參考像素緩沖器102中,并且包括請求接收單元302、數(shù)據(jù)發(fā)送單元304、以及地址控制單元306。
其中,請求接收單元302接收來自針對亮度分量的預(yù)測模式判決模塊104、針對色度分量的預(yù)測模式判決模塊106、以及幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108的請求。數(shù)據(jù)發(fā)送單元304響應(yīng)于針對亮度分量的預(yù)測模式判決模塊104、針對色度分量的預(yù)測模式判決模塊106、以及幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108的請求,分別向模塊104至108發(fā)送相應(yīng)的參考像素數(shù)據(jù)。地址控制單元306利用三個地址指針Pointer_MD_L、Pointer_MD_C、以及Pointer_pred來分別指示將分別發(fā)送給針對亮度分量的預(yù)測模式判決模塊104、針對色度分量的預(yù)測模式判決模塊106、以及幀內(nèi)預(yù)測數(shù)據(jù)生成模塊108的參考像素數(shù)據(jù)所在的地址。另外,地址控制單元306還利用地址指針Pointer_write來指示參考像素緩沖器102從外部(S卩,DRAM)讀取的參考像素數(shù)據(jù)將要寫入的地址。在本發(fā)明的實施例中,參考像素緩沖器102是先進先出的、以字為基本存儲單位的緩存器,所以地址控制單元306指示參考像素緩沖器102將同一個宏塊的有關(guān)亮度的參考像素數(shù)據(jù)和有關(guān)色度的參考像素數(shù)據(jù)分別存儲在兩個相鄰的存儲單元中。以上已經(jīng)參考本發(fā)明的具體實施例來描述了本發(fā)明,但是本領(lǐng)域技術(shù)人員均了解,可以對這些具體實施例進行各種修改、組合和變更,而不會脫離由所附權(quán)利要求或其等同物限定的本發(fā)明的精神和范圍。根據(jù)需要可以用硬件或軟件來執(zhí)行步驟。注意,在不脫離本發(fā)明范圍的前提下,可向本說明書中給出的流程圖添加步驟、從中去除步驟或修改其中的步驟。一般來說,流程圖只是用來指示用于實現(xiàn)功能的基本操作的一種可能的序列。本發(fā)明的實施例可利用編程的通用數(shù)字計算機、利用專用集成電路、可編程邏輯器件、現(xiàn)場可編程門陣列、光的、化學(xué)的、生物的、量子的或納米工程的系統(tǒng)、組件和機構(gòu)來實現(xiàn)。一般來說,本發(fā)明的功能可由本領(lǐng)域已知的任何手段來實現(xiàn)。可以使用分布式或聯(lián)網(wǎng)系統(tǒng)、組件和電路。數(shù)據(jù)的通信或傳送可以是有線的、無線的或者通過任何其他手段。還將意識到,根據(jù)特定應(yīng)用的需要,附圖中示出的要素中的一個或多個可以按更分離或更集成的方式來實現(xiàn),或者甚至在某些情況下被去除或被停用。實現(xiàn)可存儲在機器可讀介質(zhì)中的程序或代碼以允許計算機執(zhí)行上述任何方法,也在本發(fā)明的精神和范圍之內(nèi)。此外,附圖中的任何信號箭頭應(yīng)當被認為僅是示例性的,而不是限制性的,除非另有具體指示。當術(shù)語被預(yù)見為使分離或組合的能力不 清楚時,組件或者步驟的組合也將被認為是已經(jīng)記載了。
權(quán)利要求
1.一種像素數(shù)據(jù)分發(fā)方法,其特征在于, 像素數(shù)據(jù)存儲裝置響應(yīng)于功能模塊A、功能模塊B、以及功能模塊C的請求,分別向所述功能模塊A、所述功能模塊B、以及所述功能模塊C發(fā)送相應(yīng)的參考像素數(shù)據(jù)。
2.根據(jù)權(quán)利要求I所述的像素數(shù)據(jù)分發(fā)方法,其特征在于, 所述像素數(shù)據(jù)存儲裝置利用三個地址指針Pointer_A、Pointer_B>以及Pointer_C來指示將分別發(fā)送給所述功能模塊A、所述功能模塊B、以及所述功能模塊C的參考像素數(shù)據(jù)所在的地址。
3.根據(jù)權(quán)利要求I所述的像素數(shù)據(jù)分發(fā)方法,其特征在于, 所述像素數(shù)據(jù)存儲裝置利用一個地址指針Pointer_Write來指示其從外部讀取的參考像素數(shù)據(jù)將要寫入的地址。
4.根據(jù)權(quán)利要求I所述的像素數(shù)據(jù)分發(fā)方法,其特征在于,所述像素數(shù)據(jù)存儲裝置是先進先出的、以字為基本存儲單位的緩存器,并將同一個宏塊的有關(guān)亮度的參考像素數(shù)據(jù)和有關(guān)色度的參考像素數(shù)據(jù)分別存儲在兩個相鄰的存儲單元中。
5.根據(jù)權(quán)利要求I至3中任一項所述的像素數(shù)據(jù)分發(fā)方法,其特征在于,所述方法用于幀內(nèi)預(yù)測編碼的場景下,并且所述功能模塊A是針對亮度的預(yù)測模式判決模塊,所述功能模塊B是針對色度的預(yù)測模式判決模塊,所述功能模塊C是幀內(nèi)預(yù)測數(shù)據(jù)生成模塊。
6.一種像素數(shù)據(jù)分發(fā)系統(tǒng),位于像素數(shù)據(jù)存儲裝置中,包括 請求接收單元,用于接收來自功能模塊A、功能模塊B、以及功能模塊C的請求; 數(shù)據(jù)發(fā)送單元,用于響應(yīng)于所述功能模塊A、所述功能模塊B、以及所述功能模塊C的請求,分別向所述功能模塊A、所述功能模塊B、以及所述功能模塊C發(fā)送相應(yīng)的參考像素數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的像素數(shù)據(jù)分發(fā)系統(tǒng),其特征在于,還包括 地址控制單元,用于利用三個地址指針Pointer_A、Pointer_B、以及Pointer_C來指示將分別發(fā)送給所述功能模塊A、所述功能模塊B、以及所述功能模塊C的參考像素數(shù)據(jù)所在的地址。
8.根據(jù)權(quán)利要求6所述的像素數(shù)據(jù)分發(fā)系統(tǒng),其特征在于, 所述地址控制單元還用于利用一個地址指針Pointer_Write來指示所述像素數(shù)據(jù)存儲裝置從外部讀取的參考像素數(shù)據(jù)將要寫入的地址。
9.根據(jù)權(quán)利要求6所述的像素數(shù)據(jù)分發(fā)系統(tǒng),其特征在于, 在所述像素數(shù)據(jù)存儲裝置是先進先出的、以字為基本存儲單位的緩存器的情況下,所述地址控制單元還用于指示所述像素數(shù)據(jù)存儲裝置將同一個宏塊的有關(guān)亮度的參考像素數(shù)據(jù)和有關(guān)色度的參考像素數(shù)據(jù)分別存儲在兩個相鄰的存儲單元中。
10.根據(jù)權(quán)利要求6至8中任一項所述的像素數(shù)據(jù)分發(fā)系統(tǒng),其特征在于,所述系統(tǒng)用于幀內(nèi)預(yù)測編碼的場景下,并且所述功能模塊A是針對亮度的預(yù)測模式判決模塊,所述功能模塊B是針對色度的預(yù)測模式判決模塊,所述功能模塊C是幀內(nèi)預(yù)測數(shù)據(jù)生成模塊。
全文摘要
公開了一種像素數(shù)據(jù)分發(fā)方法和系統(tǒng)。其中,像素數(shù)據(jù)存儲裝置響應(yīng)于功能模塊A、功能模塊B、以及功能模塊C的請求,分別向功能模塊A、功能模塊B、以及功能模塊C發(fā)送相應(yīng)的參考像素數(shù)據(jù)。根據(jù)本發(fā)明實施例的像素數(shù)據(jù)分發(fā)方法將參考像素數(shù)據(jù)集中存放在緩沖器中,各模塊共享存儲單元,不需要逐級傳遞,減少了數(shù)據(jù)存儲電路。
文檔編號H04N7/26GK102883166SQ20111020395
公開日2013年1月16日 申請日期2011年7月14日 優(yōu)先權(quán)日2011年7月14日
發(fā)明者朱建清, 王爭, 付軒 申請人:富士通株式會社