国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于軟硬件協(xié)同控制的視頻解碼器的制作方法

      文檔序號(hào):7596383閱讀:205來(lái)源:國(guó)知局
      專利名稱:一種基于軟硬件協(xié)同控制的視頻解碼器的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及數(shù)字圖像編解碼技術(shù),具體地說(shuō),涉及一種基于軟硬件協(xié)同控制的視頻解碼器。
      背景技術(shù)
      現(xiàn)有的視頻編解碼技術(shù)幾乎都采用混合編碼/解碼方式,例如MPEG-1、MPEG-2、MPEG-4、H.26x及中國(guó)正在推出的AVS標(biāo)準(zhǔn)等。典型的解碼結(jié)構(gòu)如圖1所示,該解碼結(jié)構(gòu)采用了時(shí)間及空間的運(yùn)動(dòng)補(bǔ)償、反變換、反量化和熵解碼(變長(zhǎng)解碼)、幀內(nèi)預(yù)測(cè)、去塊效應(yīng)濾波器等模塊。
      編碼視頻碼流采用了層次結(jié)構(gòu),即由外到內(nèi)一層包一層的結(jié)構(gòu),分別是序列層、圖像組層、圖像層、組塊層、宏塊層和塊層,具體的包含關(guān)系是一個(gè)序列包含多個(gè)圖像組,每個(gè)圖像組包含多個(gè)圖像,每個(gè)圖像包含多個(gè)宏塊,每個(gè)宏塊包含多個(gè)塊,每個(gè)塊包含真正的編碼圖像數(shù)據(jù);組塊層則用于錯(cuò)誤恢復(fù)。每一層的開(kāi)始都以一個(gè)唯一的碼字來(lái)標(biāo)識(shí),其后是對(duì)其它各層不變的信息編碼,碼字和信息編碼被稱為頭信息,例如,序列頭信息中包含的圖像寬高對(duì)于其它各層是一樣的,即對(duì)于一個(gè)序列是不會(huì)變的,而其中的編碼圖像模式對(duì)于每個(gè)圖像都是不同的,因此需要在圖像層進(jìn)行編碼。序列層是開(kāi)始解碼一個(gè)序列時(shí)必須經(jīng)過(guò)的層次,因此在電視廣播或者流媒體播放中的隨機(jī)切入需要從序列頭開(kāi)始;而圖像組層規(guī)定該圖像組中的圖像在編解碼時(shí)不能預(yù)測(cè)其它組的圖像信息,即將該圖像組作為一個(gè)獨(dú)立的編碼單元處理,這樣可方便圖像的隨機(jī)訪問(wèn);圖像層則包含一幀圖像的編碼信息,具有不同的編碼模式。
      在現(xiàn)有技術(shù)中,對(duì)上述信息的解碼在芯片中是采用硬件加速器來(lái)實(shí)現(xiàn)的,這種方案不僅使整個(gè)芯片的邏輯變得十分復(fù)雜,而且缺少靈活性。由于視頻技術(shù)應(yīng)用在不同應(yīng)用領(lǐng)域中,發(fā)生變化的一般是視頻編碼的過(guò)程,而解碼的核心算法不會(huì)發(fā)生變化,因此本發(fā)明單獨(dú)將視頻解碼的控制抽離出來(lái),通過(guò)軟件實(shí)現(xiàn),其它視頻解碼還是通過(guò)硬件加速器來(lái)實(shí)現(xiàn)。

      發(fā)明內(nèi)容
      本發(fā)明所要解決的技術(shù)問(wèn)題在于提供一種基于軟硬件協(xié)同控制的視頻解碼器,可實(shí)現(xiàn)高清編碼視頻碼流的實(shí)時(shí)解碼顯示,具有高性價(jià)比和易擴(kuò)展性。
      本發(fā)明所述視頻解碼器,包括視頻解碼控制器、變長(zhǎng)解碼器、運(yùn)動(dòng)補(bǔ)償處理器、反量化處理器、反變換處理器、幀內(nèi)預(yù)測(cè)補(bǔ)償處理器和濾波及幀存儲(chǔ)管理器;所述視頻解碼控制器,用于待解碼視頻碼流的解碼控制,并將發(fā)送給各處理器的命令發(fā)送到所述變長(zhǎng)解碼器;所述變長(zhǎng)解碼器,用于在所述視頻解碼控制器的控制下進(jìn)行熵解碼,并將收到的命令轉(zhuǎn)發(fā)給相應(yīng)的處理器;所述運(yùn)動(dòng)補(bǔ)償處理器,用于獲取參考幀數(shù)據(jù)并進(jìn)行運(yùn)動(dòng)補(bǔ)償,將補(bǔ)償后的圖像數(shù)據(jù)發(fā)送給所述幀內(nèi)預(yù)測(cè)補(bǔ)償處理器;所述反量化處理器,用于進(jìn)行反量化處理,并輸出到所述反變換處理器;所述反變換處理器,用于進(jìn)行反變換處理,并將得到的殘差數(shù)據(jù)發(fā)送給所述幀內(nèi)預(yù)測(cè)補(bǔ)償處理器;所述幀內(nèi)預(yù)測(cè)補(bǔ)償處理器,用于進(jìn)行幀內(nèi)預(yù)測(cè)處理,并根據(jù)所述運(yùn)動(dòng)補(bǔ)償處理器和所述反變換處理器輸出的數(shù)據(jù)重構(gòu)解碼宏塊數(shù)據(jù),輸出到所述濾波及幀存儲(chǔ)管理器;所述濾波及幀存儲(chǔ)管理器,用于進(jìn)行去塊效應(yīng)濾波,并將當(dāng)前解碼宏塊數(shù)據(jù)寫入解碼緩沖區(qū)。
      本發(fā)明視頻解碼器實(shí)現(xiàn)了視頻解碼的軟硬件協(xié)同控制,既降低了硬件邏輯的復(fù)雜度,又提高了解碼器的擴(kuò)展性,通過(guò)采用宏塊級(jí)流水操作,大大提高硬件的處理效率,從而提高解碼器的解碼速度,也就是說(shuō),在滿足相同解碼速度的要求下,大大降低了對(duì)硬件本身的性能要求,降低了解碼器的代價(jià)。


      圖1是現(xiàn)有的視頻解碼結(jié)構(gòu)示意圖;圖2是本發(fā)明視頻解碼器的軟硬件分配圖;圖3是本發(fā)明視頻解碼器的結(jié)構(gòu)示意圖;圖4是本發(fā)明的流水線操作階段示意圖;圖5是本發(fā)明應(yīng)用于AVS1.0視頻標(biāo)準(zhǔn)中的工作流程圖。
      具體實(shí)施例方式
      下面結(jié)合附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。
      圖1是現(xiàn)有技術(shù)的解碼結(jié)構(gòu)示意圖,已在背景技術(shù)中描述,此處不再贅述。本發(fā)明提出了一種基于軟硬件協(xié)同控制的視頻解碼器,其中的解碼控制部分可通過(guò)軟件來(lái)實(shí)現(xiàn),而其它解碼部分則通過(guò)硬件加速器來(lái)實(shí)現(xiàn),如圖2所示,解碼控制部分作為嵌入式CPU置于視頻解碼器中。
      圖3給出了本發(fā)明視頻解碼器的結(jié)構(gòu)示意圖,包括視頻解碼控制器、變長(zhǎng)解碼器、運(yùn)動(dòng)補(bǔ)償處理器、反量化處理器、反變換處理器、幀內(nèi)預(yù)測(cè)補(bǔ)償處理器和濾波及幀存儲(chǔ)管理器。視頻解碼控制器運(yùn)行在嵌入式CPU中,通過(guò)變長(zhǎng)解碼器的協(xié)助完成編碼碼流的解析及整個(gè)流水線的控制,而其它處理器都作為一個(gè)單獨(dú)的硬件加速器來(lái)實(shí)現(xiàn)某種特定的解碼功能。
      視頻解碼控制器可采用軟件實(shí)現(xiàn),用于視頻碼流的解碼控制和命令發(fā)送控制,包括宏塊層以上的解碼控制模塊、宏塊層及以下的解碼控制模塊和命令發(fā)送控制模塊。宏塊層以上的解碼控制包括碼流解析控制、差錯(cuò)控制、復(fù)位控制、同步控制、隨機(jī)訪問(wèn)/切入控制、緩沖區(qū)控制、宏塊可用性控制等;宏塊層及以下的解碼控制是指負(fù)責(zé)一個(gè)宏塊的解析控制,并將得到的參數(shù)以命令的方式發(fā)送給相應(yīng)的硬件處理器。為了減少軟硬件之間的接口,視頻解碼控制器發(fā)給各硬件處理器的命令通過(guò)命令發(fā)送控制模塊統(tǒng)一發(fā)送給變長(zhǎng)解碼器,由變長(zhǎng)解碼器進(jìn)行轉(zhuǎn)發(fā)。
      變長(zhǎng)解碼器支持編碼碼流中所有語(yǔ)法元素的解析,由視頻解碼控制器控制完成熵解碼過(guò)程,同時(shí)作為軟硬件通信的一個(gè)接口,負(fù)責(zé)將視頻解碼控制器發(fā)送的命令轉(zhuǎn)發(fā)給相關(guān)的硬件處理器。此外,為減輕視頻解碼控制器的壓力,變長(zhǎng)解碼器也可將某些塊解碼元素直接發(fā)送給相應(yīng)的硬件處理器。
      運(yùn)動(dòng)補(bǔ)償處理器接收視頻解碼控制器發(fā)出的參考幀地址在解碼緩沖區(qū)中獲取參考幀數(shù)據(jù),然后進(jìn)行運(yùn)動(dòng)補(bǔ)償,并將運(yùn)動(dòng)補(bǔ)償后的圖像數(shù)據(jù)發(fā)送給幀內(nèi)預(yù)測(cè)補(bǔ)償處理器進(jìn)行圖像重構(gòu)。
      反量化處理器和反變換處理器,主要完成反量化和反變換處理,經(jīng)過(guò)反量化處理后的數(shù)據(jù)直接輸出到反變換處理器,而且反變換處理器不需要接收來(lái)自視頻解碼控制器的任何命令;反變換處理器輸出殘差數(shù)據(jù)到幀內(nèi)預(yù)測(cè)補(bǔ)償處理器中。
      幀內(nèi)預(yù)測(cè)補(bǔ)償處理器除了完成幀內(nèi)預(yù)測(cè)的功能外,還負(fù)責(zé)將經(jīng)過(guò)運(yùn)動(dòng)補(bǔ)償后的圖像數(shù)據(jù)與經(jīng)過(guò)反變換后的殘差數(shù)據(jù)相加以重構(gòu)解碼宏塊數(shù)據(jù)。
      濾波及幀存儲(chǔ)加速器用于完成去塊效應(yīng)濾波功能,并根據(jù)視頻解碼控制器以命令方式傳遞過(guò)來(lái)的存儲(chǔ)地址將當(dāng)前解碼宏塊數(shù)據(jù)寫入解碼緩沖區(qū)中。
      考慮到運(yùn)動(dòng)補(bǔ)償處理器的復(fù)雜性,將其分為運(yùn)動(dòng)向量預(yù)測(cè)、參考幀獲取和象素插值三個(gè)模塊,運(yùn)動(dòng)向量預(yù)測(cè)模塊完成運(yùn)動(dòng)補(bǔ)償?shù)倪\(yùn)動(dòng)向量計(jì)算及選擇補(bǔ)償模式,參考幀獲取模塊根據(jù)視頻解碼控制器傳遞過(guò)來(lái)的參考幀地址及運(yùn)動(dòng)向量預(yù)測(cè)模塊傳遞過(guò)來(lái)的運(yùn)動(dòng)向量從解碼緩沖區(qū)中讀取參考數(shù)據(jù),然后傳遞給象素插值模塊進(jìn)行象素插值后傳遞給幀內(nèi)預(yù)測(cè)補(bǔ)償處理器。
      為了保證視頻解碼器的解碼速度,本發(fā)明解碼器采用宏塊級(jí)流水操作,如圖4所示。本發(fā)明解碼器共分為5級(jí)流水,其中變長(zhǎng)解碼器處于第1級(jí)流水,反量化處理器和運(yùn)動(dòng)向量預(yù)測(cè)模塊處于第2級(jí),反變換處理器和參考幀獲取模塊處于第3級(jí),幀內(nèi)預(yù)測(cè)補(bǔ)償處理器和象素插值模塊處于第4級(jí),濾波及幀存儲(chǔ)管理器則處于第5級(jí)。
      為實(shí)現(xiàn)上述流水操作的正常進(jìn)行,在各硬件處理器之間都有先進(jìn)先出的緩沖區(qū)隊(duì)列(以下稱FIFO),用于緩存數(shù)據(jù),包括數(shù)據(jù)FIFO和命令FIFO兩種,其中數(shù)據(jù)FIFO主要用于存儲(chǔ)數(shù)據(jù),而命令FIFO則存儲(chǔ)相關(guān)的控制信息。具體是變長(zhǎng)解碼器與反量化處理器之間存在命令FIFO和數(shù)據(jù)FIFO;變長(zhǎng)解碼器與運(yùn)動(dòng)補(bǔ)償處理器之間存在命令FIFO和數(shù)據(jù)FIFO;變長(zhǎng)解碼器與幀內(nèi)預(yù)測(cè)補(bǔ)償處理器之間存在命令FIFO和數(shù)據(jù)FIFO;反量化處理器與反變換處理器之間存在數(shù)據(jù)FIFO;反變換處理器與幀內(nèi)預(yù)測(cè)補(bǔ)償處理器之間存在數(shù)據(jù)FIFO;運(yùn)動(dòng)補(bǔ)償處理器與幀內(nèi)預(yù)測(cè)補(bǔ)償處理器之間存在數(shù)據(jù)FIFO;幀內(nèi)預(yù)測(cè)補(bǔ)償處理器與濾波及幀存儲(chǔ)管理器之間存在數(shù)據(jù)FIFO。因此,對(duì)于某些處理器可能存在多個(gè)FIFO,例如幀內(nèi)預(yù)測(cè)補(bǔ)償處理器有2個(gè)數(shù)據(jù)FIFO和1個(gè)命令FIFO,其中1個(gè)數(shù)據(jù)FIFO用于接收來(lái)自運(yùn)動(dòng)補(bǔ)償處理器的預(yù)測(cè)宏塊數(shù)據(jù),另一個(gè)數(shù)據(jù)FIFO接收來(lái)自反變換處理器的殘差數(shù)據(jù),對(duì)于幀間編碼模式的宏塊只有2個(gè)數(shù)據(jù)FIFO中都有可利用的數(shù)據(jù)以及命令FIFO中有足夠的信息后,幀內(nèi)預(yù)測(cè)補(bǔ)償處理器才開(kāi)始處理。因此只有FIFO中存有數(shù)據(jù),后面的處理器才可以進(jìn)行數(shù)據(jù)的處理;同時(shí)每個(gè)上級(jí)處理器在進(jìn)行處理之前都要檢查它的下級(jí)處理器的FIFO是否有空間,如果沒(méi)有則需等待。
      在AVS1.0視頻編解碼標(biāo)準(zhǔn)中,其視頻解碼框架與H.264(JVT)相似,即如圖1所示的結(jié)構(gòu),采用最大兩個(gè)前向參考幀,包括幀內(nèi)編碼(I幀)、前向預(yù)測(cè)編碼(P幀)和雙向預(yù)測(cè)編碼(B幀)三種圖像編碼模式;象素插值采用1/4象素插值;宏塊預(yù)測(cè)模式包括幀內(nèi)預(yù)測(cè)和幀間預(yù)測(cè)兩種模式。
      本發(fā)明視頻解碼器基于AVS1.0的具體流程如圖5所示,包括視頻解碼控制器檢測(cè)視頻解碼使能信號(hào),如果未使能,則等待;否則初始化視頻解碼器,包括對(duì)視頻解碼控制器進(jìn)行初始化;使能變長(zhǎng)解碼器和顯示控制加速器。視頻解碼控制器向變長(zhǎng)解碼器發(fā)送搜索頭語(yǔ)法元素的命令,變長(zhǎng)解碼器解析后將頭類型返回視頻解碼控制器。視頻解碼控制器檢測(cè)解析的語(yǔ)法元素是否正確,如果發(fā)現(xiàn)出錯(cuò),則通知變長(zhǎng)解碼器搜索下一個(gè)I幀的頭位置,然后繼續(xù)解析,并返回頭類型;如果解析的語(yǔ)法元素正確,則視頻解碼控制器在變長(zhǎng)解碼器的協(xié)助下,解析頭信息。對(duì)于視頻解碼控制器與變長(zhǎng)解碼器之間的每一次交互,都需對(duì)語(yǔ)法元素的正確性進(jìn)行檢測(cè)。
      在解析頭信息時(shí),如果是序列頭,則獲得必要的控制信息,并發(fā)送給相應(yīng)的硬件處理器,具體包括將序列格式通過(guò)變長(zhǎng)解碼器發(fā)送給運(yùn)動(dòng)補(bǔ)償處理器和顯示控制加速器;將圖像寬高通過(guò)變長(zhǎng)解碼器發(fā)送給運(yùn)動(dòng)補(bǔ)償處理器、濾波及幀存儲(chǔ)管理器和顯示控制加速器;將幀率通過(guò)變長(zhǎng)解碼器發(fā)送給顯示控制加速器。然后返回進(jìn)行下一個(gè)頭信息的解碼。
      如果是圖像頭,則獲得必要的控制信息,并發(fā)送給相關(guān)的硬件處理器,具體包括將圖像間距、圖像編碼類型、濾波標(biāo)識(shí)及參數(shù)、加權(quán)預(yù)測(cè)參數(shù)和圖像編碼格式通過(guò)變長(zhǎng)解碼器發(fā)送給運(yùn)動(dòng)補(bǔ)償處理器;將頂?shù)讏?chǎng)次序和重復(fù)次數(shù)通過(guò)變長(zhǎng)解碼器發(fā)送給顯示控制加速器。然后由視頻解碼控制器計(jì)算緩沖區(qū)的地址,包括參考幀地址、當(dāng)前幀存儲(chǔ)地址和顯示幀地址;并將參考幀地址發(fā)送給運(yùn)動(dòng)補(bǔ)償處理器。判斷存儲(chǔ)地址對(duì)應(yīng)的解碼幀是否已被顯示,如果未被顯示,則繼續(xù)等待;如果已顯示,則將存儲(chǔ)幀地址發(fā)送給濾波及幀存儲(chǔ)管理器。然后進(jìn)入宏塊解碼的過(guò)程,視頻解碼控制器在變長(zhǎng)解碼器的協(xié)助下解析宏塊頭信息,再通過(guò)變長(zhǎng)解碼器判斷所有其它處理器的命令FIFO是否滿,如果發(fā)現(xiàn)所有的命令FIFO都不滿,則集中通過(guò)變長(zhǎng)解碼器把宏塊級(jí)命令發(fā)送給各處理器,例如將量化參數(shù)發(fā)送給反量化處理器、當(dāng)前宏塊位置發(fā)送給運(yùn)動(dòng)補(bǔ)償處理器、濾波及幀存儲(chǔ)管理器和幀內(nèi)預(yù)測(cè)補(bǔ)償處理器等。
      視頻解碼控制器將宏塊級(jí)命令發(fā)送給各處理器后,便進(jìn)行下一個(gè)宏塊頭的解析,此時(shí)只要各處理器輸入端的FIFO中有數(shù)據(jù),而輸出端的FIFO不滿,則該處理器就可以正常工作,進(jìn)而實(shí)現(xiàn)宏塊級(jí)的流水操作。當(dāng)一幀圖像解碼完畢后,進(jìn)入下一幀圖像的解碼。
      最后所應(yīng)說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的精神和范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
      權(quán)利要求
      1.一種基于軟硬件協(xié)同控制的視頻解碼器,包括運(yùn)動(dòng)補(bǔ)償處理器、反量化處理器、反變換處理器、幀內(nèi)預(yù)測(cè)補(bǔ)償處理器和濾波及幀存儲(chǔ)管理器,其中所述運(yùn)動(dòng)補(bǔ)償處理器,用于獲取參考幀數(shù)據(jù)并進(jìn)行運(yùn)動(dòng)補(bǔ)償,將補(bǔ)償后的圖像數(shù)據(jù)發(fā)送給所述幀內(nèi)預(yù)測(cè)補(bǔ)償處理器;所述反量化處理器,用于進(jìn)行反量化處理,并輸出到所述反變換處理器;所述反變換處理器,用于進(jìn)行反變換處理,并將得到的殘差數(shù)據(jù)發(fā)送給所述幀內(nèi)預(yù)測(cè)補(bǔ)償處理器;所述幀內(nèi)預(yù)測(cè)補(bǔ)償處理器,用于進(jìn)行幀內(nèi)預(yù)測(cè)處理,并根據(jù)所述運(yùn)動(dòng)補(bǔ)償處理器和所述反變換處理器輸出的數(shù)據(jù)重構(gòu)解碼宏塊數(shù)據(jù),輸出到所述濾波及幀存儲(chǔ)管理器;所述濾波及幀存儲(chǔ)管理器,用于進(jìn)行去塊效應(yīng)濾波,并將當(dāng)前解碼宏塊數(shù)據(jù)寫入解碼緩沖區(qū);其特征在于,還包括視頻解碼控制器和變長(zhǎng)解碼器;所述視頻解碼控制器,用于待解碼視頻碼流的解碼控制,并將發(fā)送給各處理器的命令發(fā)送到所述變長(zhǎng)解碼器;所述變長(zhǎng)解碼器,用于在所述視頻解碼控制器的控制下進(jìn)行熵解碼,并將收到的命令轉(zhuǎn)發(fā)給相應(yīng)的處理器。
      2.根據(jù)權(quán)利要求1所述的基于軟硬件協(xié)同控制的視頻解碼器,其特征在于,所述視頻解碼控制器進(jìn)一步包括宏塊層以上的解碼控制模塊、宏塊層及以下的解碼控制模塊和命令發(fā)送控制模塊;宏塊層以上的解碼控制包括碼流解析控制、差錯(cuò)控制、復(fù)位控制、同步控制、隨機(jī)訪問(wèn)/切入控制、緩沖區(qū)控制、宏塊可用性控制等;宏塊層及以下的解碼控制是指負(fù)責(zé)一個(gè)宏塊的解析控制;解碼控制的控制信息以命令的方式通過(guò)命令發(fā)送控制模塊統(tǒng)一發(fā)送給變長(zhǎng)解碼器,由變長(zhǎng)解碼器轉(zhuǎn)發(fā)給其它處理器。
      3.根據(jù)權(quán)利要求2所述的基于軟硬件協(xié)同控制的視頻解碼器,其特征在于,所述視頻解碼控制器采用軟件實(shí)現(xiàn),以嵌入式CPU的方式置于視頻解碼器中;其它處理器采用硬件加速器實(shí)現(xiàn)。
      4.根據(jù)權(quán)利要求1所述的基于軟硬件協(xié)同控制的視頻解碼器,其特征在于,所述運(yùn)動(dòng)補(bǔ)償處理器分為運(yùn)動(dòng)向量預(yù)測(cè)、參考幀獲取和象素插值三個(gè)模塊;所述運(yùn)動(dòng)向量預(yù)測(cè)模塊完成運(yùn)動(dòng)補(bǔ)償?shù)倪\(yùn)動(dòng)向量計(jì)算及選擇補(bǔ)償模式;所述參考幀獲取模塊根據(jù)所述視頻解碼控制器傳遞過(guò)來(lái)的參考幀地址及所述運(yùn)動(dòng)向量預(yù)測(cè)模塊傳遞過(guò)來(lái)的運(yùn)動(dòng)向量從解碼緩沖區(qū)中讀取參考數(shù)據(jù),然后傳遞給所述象素插值模塊進(jìn)行象素插值。
      5.根據(jù)權(quán)利要求4所述的基于軟硬件協(xié)同控制的視頻解碼器,其特征在于,所述視頻解碼器采用宏塊級(jí)流水操作,共分為5級(jí)流水,其中變長(zhǎng)解碼器處于第1級(jí)流水,反量化處理器和運(yùn)動(dòng)向量預(yù)測(cè)模塊處于第2級(jí),反變換處理器和參考幀獲取模塊處于第3級(jí),幀內(nèi)預(yù)測(cè)補(bǔ)償處理器和象素插值模塊處于第4級(jí),濾波及幀存儲(chǔ)管理器則處于第5級(jí)。
      6.根據(jù)權(quán)利要求1至5任一所述的基于軟硬件協(xié)同控制的視頻解碼器,其特征在于,在除視頻解碼控制器外的各硬件處理器之間都有先進(jìn)先出緩沖區(qū)隊(duì)列FIFO,用于緩存宏塊數(shù)據(jù);具體包括數(shù)據(jù)FIFO和命令FIFO兩種,其中數(shù)據(jù)FIFO主要用于存儲(chǔ)數(shù)據(jù),而命令FIFO則存儲(chǔ)相關(guān)的控制信息。
      7.根據(jù)權(quán)利要求6所述的基于軟硬件協(xié)同控制的視頻解碼器,其特征在于,變長(zhǎng)解碼器與反量化處理器之間存在命令FIFO和數(shù)據(jù)FIFO;變長(zhǎng)解碼器與運(yùn)動(dòng)補(bǔ)償處理器之間存在命令FIFO和數(shù)據(jù)FIFO;變長(zhǎng)解碼器與幀內(nèi)預(yù)測(cè)補(bǔ)償處理器之間存在命令FIFO和數(shù)據(jù)FIFO;反量化處理器與反變換處理器之間存在數(shù)據(jù)FIFO;反變換處理器與幀內(nèi)預(yù)測(cè)補(bǔ)償處理器之間存在數(shù)據(jù)FIFO;運(yùn)動(dòng)補(bǔ)償處理器與幀內(nèi)預(yù)測(cè)補(bǔ)償處理器之間存在數(shù)據(jù)FIFO;幀內(nèi)預(yù)測(cè)補(bǔ)償處理器與濾波及幀存儲(chǔ)管理器之間存在數(shù)據(jù)FIFO。
      全文摘要
      一種基于軟硬件協(xié)同的視頻解碼器,包括視頻解碼控制器、變長(zhǎng)解碼器、運(yùn)動(dòng)補(bǔ)償處理器、反量化處理器、反變換處理器、幀內(nèi)預(yù)測(cè)補(bǔ)償處理器和濾波及幀存儲(chǔ)管理器;視頻解碼控制器運(yùn)行在嵌入式CPU中,通過(guò)變長(zhǎng)解碼器的協(xié)助完成編碼碼流的解析及整個(gè)流水線的控制,而其它處理器都作為一個(gè)單獨(dú)的硬件加速器來(lái)實(shí)現(xiàn)某種特定的解碼功能。本發(fā)明視頻解碼器實(shí)現(xiàn)了視頻解碼的軟硬件協(xié)同控制,既降低了硬件邏輯的復(fù)雜度,又提高了解碼器的擴(kuò)展性,通過(guò)采用宏塊級(jí)流水操作,大大提高硬件的處理效率,從而提高解碼器的解碼速度,也就是說(shuō),在滿足相同解碼速度的要求下,大大降低了對(duì)硬件本身的性能要求,降低了解碼器的代價(jià)。
      文檔編號(hào)H04N7/32GK1589025SQ200410070208
      公開(kāi)日2005年3月2日 申請(qǐng)日期2004年7月30日 優(yōu)先權(quán)日2004年7月30日
      發(fā)明者解曉東, 吳迪, 賈惠柱, 生濱, 鄭俊浩, 張鵬, 鄧?yán)? 張力, 張幀睿, 王忠立, 高文 申請(qǐng)人:聯(lián)合信源數(shù)字音視頻技術(shù)(北京)有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1