一種視頻解碼器緩存高效率處理的裝置及其方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種視頻解碼器緩存高效率處理的裝置及其方法。
【背景技術(shù)】
[0002]參見圖1所示,現(xiàn)有的視頻解碼器通常只有一個(gè)緩沖存儲(chǔ)器模塊,視頻幀常作為一個(gè)塊進(jìn)行傳輸,即參考?jí)K;該參考?jí)K亮度地址命令和色度地址命令都在一個(gè)緩沖存儲(chǔ)器模塊中進(jìn)行處理,緩沖存儲(chǔ)器模塊處理單次命令需要消耗一定的時(shí)間,如果短時(shí)間內(nèi)有大量的地址命令進(jìn)入,就會(huì)在緩沖存儲(chǔ)器的命令輸入端形成堵塞,從而拉長(zhǎng)視頻解碼器取回參考?jí)K的時(shí)間,降低了視頻解碼器的效率。且由于視頻解碼過程中的參考幀亮度分量和色度分量是分開存儲(chǔ)的,如果使用同一個(gè)緩沖存儲(chǔ)器進(jìn)行取數(shù)就會(huì)降低緩沖存儲(chǔ)器的命中率,增加在外部DDR上取數(shù)的次數(shù),延長(zhǎng)解碼器中后續(xù)模塊從緩沖存儲(chǔ)器獲得數(shù)據(jù)的時(shí)間,從而降低緩沖存儲(chǔ)器的使用效率。
[0003]現(xiàn)有技術(shù)中公開了一種“優(yōu)化的數(shù)據(jù)去重復(fù)的動(dòng)態(tài)高速緩存模塊選擇的方法和系統(tǒng)”,見公開號(hào)為:104050098A,公開日為:2014-09-17的中國專利,該發(fā)明的實(shí)施例提供用于針對(duì)優(yōu)化的數(shù)據(jù)去重復(fù)的動(dòng)態(tài)高速緩存模塊選擇的方法、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品。在該發(fā)明的實(shí)施例中,提供用于針對(duì)優(yōu)化的數(shù)據(jù)去重復(fù)的動(dòng)態(tài)高速緩存模塊選擇的方法。該方法包括接收檢索數(shù)據(jù)的請(qǐng)求以及分類該請(qǐng)求。該方法還包括從每個(gè)具有不同配置的多個(gè)不同的高速緩存模塊中識(shí)別與請(qǐng)求的類別相關(guān)聯(lián)的特定的高速緩存模塊。最后,該方法包括在識(shí)別的高速緩存模塊中對(duì)數(shù)據(jù)去重復(fù)。但是該發(fā)明的技術(shù)方案與本發(fā)明并不相同,本專利申請(qǐng)采用在視頻解碼器已有的單個(gè)緩沖存儲(chǔ)器基礎(chǔ)上再增加一個(gè)緩沖存儲(chǔ)器模塊,分別對(duì)參考?jí)K亮度分量取數(shù)命令和色度分量取數(shù)命令進(jìn)行操作。
【發(fā)明內(nèi)容】
[0004]本發(fā)明要解決的技術(shù)問題之一,在于提供一種視頻解碼器緩存高效率處理的裝置,既提高了參考?jí)K命令的處理能力,又提高了單緩沖存儲(chǔ)器的命中率,從而提升了參考?jí)K的取數(shù)速度,提升視頻解碼器的性能;減少了 DDR的取數(shù)次數(shù),降低了 DDR的功耗。
[0005]本發(fā)明的問題之一是這樣實(shí)現(xiàn)的:一種視頻解碼器緩存高效率處理的裝置,包括亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器、命令分類模塊以及數(shù)據(jù)合并模塊,所述命令分類模塊分別與亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器連接,所述數(shù)據(jù)合并模塊分別與亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器連接;所述命令分類模塊用于將輸入的命令分類成色度分量命令和亮度分量命令,所述亮度緩沖存儲(chǔ)器用于處理參考?jí)K的亮度分量命令,所述色度緩沖存儲(chǔ)器用于處理參考?jí)K的色度分量命令;所述數(shù)據(jù)合并模塊根據(jù)輸入的亮度分量命令和色度分量命令順序,依次輸出亮度塊數(shù)據(jù)和色度塊數(shù)據(jù)。
[0006]進(jìn)一步地,所述亮度緩沖存儲(chǔ)器具體為:用于處理參考?jí)K的亮度分量命令,并緩存從與視頻解碼器相連的DDR中取回的參考?jí)K亮度的數(shù)據(jù),如果下次取數(shù)據(jù)的時(shí)候,對(duì)應(yīng)參考?jí)K的地址的亮度數(shù)據(jù)在亮度緩沖存儲(chǔ)器中存在,則不需要再從DDR中取亮度的數(shù)據(jù),直接從亮度緩沖存儲(chǔ)器中取對(duì)應(yīng)的亮度數(shù)據(jù)。
[0007]進(jìn)一步地,所述色度緩沖存儲(chǔ)器具體為:用于處理參考?jí)K的色度分量命令,并緩存從與視頻解碼器相連的DDR中取回的參考?jí)K色度的數(shù)據(jù),如果下次取數(shù)據(jù)的時(shí)候,對(duì)應(yīng)參考?jí)K的地址的色度數(shù)據(jù)在色度緩沖存儲(chǔ)器中存在,則不需要再從DDR中取色度的數(shù)據(jù),直接從色度緩沖存儲(chǔ)器中取對(duì)應(yīng)的色度數(shù)據(jù)。
[0008]進(jìn)一步地,所述裝置進(jìn)一步包括:所述命令分類模塊將輸入的參考?jí)K的命令分類成參考?jí)K的色度分量命令和參考?jí)K的亮度分量命令;各參考?jí)K的命令中帶有標(biāo)志位,該標(biāo)志位用于標(biāo)明當(dāng)前參考?jí)K命令是亮度分量命令還是色度分量命令以及當(dāng)前參考?jí)K的大??;所述命令分類模塊根據(jù)當(dāng)前參考?jí)K命令的亮度或色度類型,塊的大小,生成對(duì)應(yīng)的標(biāo)志并送入一標(biāo)志位FIFO變量;分類后的各參考?jí)K的色度分量命令和參考?jí)K的亮度分量命令分別對(duì)應(yīng)輸入色度緩沖存儲(chǔ)器和亮度緩沖存儲(chǔ)器中進(jìn)行處理,所述數(shù)據(jù)合并模塊依次讀出FIFO變量中的標(biāo)志位,根據(jù)FIFO變量中的標(biāo)志位順序,判斷出當(dāng)前需要填入數(shù)據(jù)塊的亮度和色度類型及大小,再從亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器中分別取出相應(yīng)長(zhǎng)度的亮度塊數(shù)據(jù)和色度塊數(shù)據(jù)。
[0009]進(jìn)一步地,依次輸出亮度塊數(shù)據(jù)和色度塊數(shù)據(jù)是以塊為單位進(jìn)行輸出。
[0010]本發(fā)明要解決的技術(shù)問題之二,在于提供一種視頻解碼器緩存高效率處理的方法,既提高了參考?jí)K命令的處理能力,又提高了單緩沖存儲(chǔ)器的命中率,從而提升了參考?jí)K的取數(shù)速度,提升視頻解碼器的性能;減少了 DDR的取數(shù)次數(shù),降低了 DDR的功耗。
[0011]本發(fā)明的問題之二是這樣實(shí)現(xiàn)的:一種視頻解碼器緩存高效率處理的方法,所述方法需提供亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器、命令分類模塊以及數(shù)據(jù)合并模塊;所述命令分類模塊將輸入的參考?jí)K的命令分類成參考?jí)K的色度分量命令和參考?jí)K的亮度分量命令,采用亮度緩沖存儲(chǔ)器處理參考?jí)K的亮度分量命令,色度緩沖存儲(chǔ)器處理參考?jí)K的色度分量命令;數(shù)據(jù)合并模塊根據(jù)輸入的亮度分量命令和色度分量命令順序,依次輸出亮度塊數(shù)據(jù)和色度塊數(shù)據(jù)。
[0012]進(jìn)一步地,所述亮度緩沖存儲(chǔ)器具體為:用于處理參考?jí)K的亮度分量命令,并緩存從與視頻解碼器相連的DDR中取回的參考?jí)K亮度的數(shù)據(jù),如果下次取數(shù)據(jù)的時(shí)候,對(duì)應(yīng)參考?jí)K的地址的亮度數(shù)據(jù)在亮度緩沖存儲(chǔ)器中存在,則不需要再從DDR中取亮度的數(shù)據(jù),直接從亮度緩沖存儲(chǔ)器中取對(duì)應(yīng)的亮度數(shù)據(jù)。
[0013]進(jìn)一步地,所述色度緩沖存儲(chǔ)器具體為:用于處理參考?jí)K的色度分量命令,并緩存從與視頻解碼器相連的DDR中取回的參考?jí)K色度的數(shù)據(jù),如果下次取數(shù)據(jù)的時(shí)候,對(duì)應(yīng)參考?jí)K的地址的色度數(shù)據(jù)在色度緩沖存儲(chǔ)器中存在,則不需要再從DDR中取色度的數(shù)據(jù),直接從色度緩沖存儲(chǔ)器中取對(duì)應(yīng)的色度數(shù)據(jù)。
[0014]進(jìn)一步地,所述方法進(jìn)一步包括:所述命令分類模塊將輸入的參考?jí)K的命令分類成參考?jí)K的色度分量命令和參考?jí)K的亮度分量命令;各參考?jí)K的命令中帶有標(biāo)志位,該標(biāo)志位用于標(biāo)明當(dāng)前參考?jí)K命令是亮度分量命令還是色度分量命令以及當(dāng)前參考?jí)K的大??;所述命令分類模塊根據(jù)當(dāng)前參考?jí)K命令的亮度或色度類型,塊的大小,生成對(duì)應(yīng)的標(biāo)志并送入一標(biāo)志位FIFO變量;分類后的各參考?jí)K的色度分量命令和參考?jí)K的亮度分量命令分別對(duì)應(yīng)輸入色度緩沖存儲(chǔ)器和亮度緩沖存儲(chǔ)器中進(jìn)行處理,所述數(shù)據(jù)合并模塊依次讀出FIFO變量中的標(biāo)志位,根據(jù)FIFO變量中的標(biāo)志位順序,判斷出當(dāng)前需要填入數(shù)據(jù)塊的亮度和色度類型及大小,再從亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器中分別取出相應(yīng)長(zhǎng)度的亮度塊數(shù)據(jù)和色度塊數(shù)據(jù)。
[0015]進(jìn)一步地,依次輸出亮度塊數(shù)據(jù)和色度塊數(shù)據(jù)是以塊為單位進(jìn)行輸出。
[0016]本發(fā)明具有如下優(yōu)點(diǎn):本發(fā)明采用對(duì)輸入視頻解碼器緩沖存儲(chǔ)器的參考?jí)K地址按亮度、色度類型進(jìn)行分類,采用不同的緩沖存儲(chǔ)器處理不同的參考?jí)K地址,形成了雙緩沖存儲(chǔ)器的并行處理,既提高了參考?jí)K命令的處理能力,又提高了單緩沖存儲(chǔ)器的命中率,從而提升了參考?jí)K的取數(shù)速度,提升視頻解碼器的性能;減少了 DDR的取數(shù)次數(shù),降低了 DDR的功耗。
【附圖說明】
[0017]圖1為現(xiàn)有技術(shù)中視頻解碼器緩沖存儲(chǔ)器的結(jié)構(gòu)框圖。
[0018]圖2為本發(fā)明的結(jié)構(gòu)框圖。
[0019]圖3為本發(fā)明的流程示意圖。
【具體實(shí)施方式】
[0020]請(qǐng)參閱圖2所示,本發(fā)明的一種視頻解碼器緩存高效率處理的裝置,包括亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器、命令分類模塊以及數(shù)據(jù)合并模塊,所述命令分類模塊分別與亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器連接,所述數(shù)據(jù)合并模塊分別與亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器連接;(與視頻解碼器相連的DDR分別與亮度緩沖存儲(chǔ)器、色度緩沖存儲(chǔ)器連接如圖1)所述命令分類模塊用于將輸入的參考?jí)K的命令分類成參考?jí)K的色度分量命令和參考?jí)K的亮度分量命令,所述亮度緩沖存儲(chǔ)器用于處理參考?jí)K的亮度分量命令,所述色度緩沖存儲(chǔ)器用于處理參考?jí)K的色度分量命令;所述數(shù)據(jù)合并模塊根據(jù)輸入的亮度分量命令和色度分量命令順序,依次輸出亮度塊數(shù)據(jù)和色度塊數(shù)據(jù)。該依次輸出亮度塊數(shù)據(jù)和色度塊數(shù)據(jù)是以塊為單位進(jìn)行輸出(如圖2中虛線框所示)。
[0021]另外,本發(fā)明中參考?jí)K的亮度和色度分量命令是分開同步處理,是和解碼過程--對(duì)應(yīng)的。
[0022]在本發(fā)明中,所述亮度緩沖存儲(chǔ)器具體為:用于處理參考?jí)K的亮度分量命令,并按照存儲(chǔ)替換方式緩存從與視頻解碼器相連的DDR中取回的參考?jí)K亮度的數(shù)據(jù),如果下次取數(shù)據(jù)的時(shí)候,對(duì)應(yīng)參考?jí)K的地址的亮度數(shù)據(jù)在亮度緩沖存儲(chǔ)器中存在,則不需要再從DDR中取亮度的數(shù)據(jù),直接從亮度緩沖存儲(chǔ)器中取對(duì)應(yīng)的亮度數(shù)據(jù)。
[0023]所述色度緩沖存儲(chǔ)器具體為:用于處理參考?jí)K的色度分量命令,并按照存儲(chǔ)替換方式緩存從與視頻解碼器相連的DDR中取回的參考?jí)K色度的數(shù)據(jù),如果下次取數(shù)據(jù)的時(shí)候,對(duì)應(yīng)參考?jí)K的地址的色度數(shù)據(jù)在色度緩沖存儲(chǔ)器中存在,則不需要再從DDR中取色度的數(shù)據(jù),直接從色度緩沖存儲(chǔ)器中取對(duì)應(yīng)的色度數(shù)據(jù)。
[0024]這里需要說明的是:所述裝置進(jìn)一步包括:所述命令分類模塊將輸入的參考?jí)K的命令分類成參考?jí)K的色度分量命令和參考?jí)K的亮度分量命令;各參考?jí)K的命令中帶有標(biāo)志位,該標(biāo)志位用于標(biāo)明當(dāng)前參考?jí)K命令是亮度分量命令還是色度分量命令以及當(dāng)前參