專利名稱:提高了處理效率的圖象聲音處理裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字信號處理技術(shù)領(lǐng)域,即涉及進行已壓縮圖象和聲音數(shù)據(jù)的解壓縮、圖象和聲音數(shù)據(jù)的壓縮、圖形處理等的圖象聲音處理裝置。
近年來,隨著數(shù)字動圖象數(shù)據(jù)的壓縮/解壓縮技術(shù)的建立及LSI技術(shù)的提高,對壓縮圖象和聲音數(shù)據(jù)進行解壓縮的譯碼器、對圖象和聲音數(shù)據(jù)進行壓縮的編碼器、進行圖形處理的圖形處理裝置等各種各樣的圖象聲音處理裝置日益受到重視。
作為現(xiàn)有技術(shù)之一,有一種對MPEG(動圖象專家組)標準的壓縮圖象和聲音數(shù)據(jù)進行解壓縮的圖象聲音譯碼器。該圖象聲音譯碼器,采用2個處理器,一個處理器進行圖象譯碼,另一個處理器進行聲音譯碼。
在
圖1中示出上述圖象聲音譯碼處理的說明圖。在該圖中,縱軸表示時間,橫軸表示進行圖象譯碼的圖象用處理器及進行聲音譯碼的聲音用處理器各自的運算量。
圖象用處理器,以壓縮圖象數(shù)據(jù)的宏數(shù)據(jù)塊為單位交替地進行逐次處理及圖象數(shù)據(jù)本體部分的譯碼處理。在圖象譯碼中,逐次處理是對宏數(shù)據(jù)塊標題部分的分析(標題分析),本體部分的譯碼處理是宏數(shù)據(jù)塊的譯碼(數(shù)據(jù)決譯碼)。標題分析是以在多分支上的條件判斷為主的的處理,其運算量少。數(shù)據(jù)塊譯碼是用標題分析結(jié)果的各種數(shù)據(jù)對MPEG數(shù)據(jù)流的可變長度碼進行譯碼并進一步以數(shù)據(jù)塊為單位進行反量化、反離散余弦變換等的處理,其運算量大。
聲音用處理器,也以同樣方式交替地進行壓縮聲音數(shù)據(jù)的逐次處理及聲音數(shù)據(jù)本體部分的譯碼處理。
但是,如采用上述現(xiàn)有技術(shù),則存在著如下問題。
對于現(xiàn)有技術(shù)的圖象聲音譯碼器,存在著成本費用高的問題。其原因在于,尤其是圖象用處理器需要對大量的圖象數(shù)據(jù)進行實時處理,所以必須使用處理能力強的也就是按高速時鐘進行動作的高價位的處理器。
另外,當(dāng)在用于數(shù)字(衛(wèi)星)廣播用調(diào)諧器(簡稱STB(頂置盒))或DVD(數(shù)字通用/視盤)再生裝置等的AV譯碼器中采用上述圖象聲音處理裝置時,輸入從廣播波接收到的或從視盤讀出的MPEG數(shù)據(jù)流、并對該MPEG數(shù)據(jù)流進行譯碼、直到最終對顯示器、揚聲器等進行圖象信號輸出及聲音信號輸出所需要的一連串的處理量相當(dāng)龐大。最近,對能夠高效率地執(zhí)行上述一連串的龐大處理的圖象聲音處理裝置的需求越來越大。
本發(fā)明的目的在于,提供一種能夠?qū)Ρ硎緣嚎s圖象和壓縮聲音數(shù)據(jù)的流式數(shù)據(jù)進行輸入、譯碼、輸出等一連串處理、且即使不是以高頻進行動作也具有很強的處理能力并能降低制造成本的圖象聲音處理裝置。
為達到上述目的,本圖象聲音處理裝置,通過對包含壓縮聲音數(shù)據(jù)和壓縮圖象數(shù)據(jù)的數(shù)據(jù)流進行譯碼,將圖象數(shù)據(jù)和聲音數(shù)據(jù)復(fù)原,該圖象聲音處理裝置備有逐次處理部,執(zhí)行對數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)所含規(guī)定數(shù)據(jù)塊進行標題分析的標題分析處理及對數(shù)據(jù)流中的壓縮聲音數(shù)據(jù)進行譯碼的聲音譯碼處理,并使標題分析處理比聲音譯碼處理優(yōu)先執(zhí)行;及定型處理部,與上述逐次處理部并行操作,執(zhí)行除數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)標題分析處理以外的壓縮圖象數(shù)據(jù)的譯碼處理。
按照這種結(jié)構(gòu),通過由逐次處理部及定型處理部分擔(dān)對壓縮圖象數(shù)據(jù)的譯碼處理,與現(xiàn)有的由一個處理器進行壓縮圖象數(shù)據(jù)的全譯碼相比,可減輕花費在處理上的負荷,并能提高處理效率。此外,逐次處理部,通過優(yōu)先執(zhí)行標題分析處理,可使基于標題分析進行的定型處理部的譯碼處理無滯后地進行,因而能從時間上提高處理效率。另外,聲音譯碼處理,由于與壓縮圖象數(shù)據(jù)的譯碼相比處理量小,所以可以在逐次處理部執(zhí)行標題分析處理的間歇時間進行,因而能進一步地從時間上提高處理效率。因此,本發(fā)明的圖象聲音處理裝置,即使不是以高頻進行動作也具有很強的處理能力,并能降低制造成本。
其中,逐次處理部,具有處理器及存儲用于由處理器執(zhí)行的標題分析用線程、聲音譯碼用線程及線程切換控制用線程的存儲器,并可以備有標題分析部,通過由處理器從存儲器讀出并執(zhí)行標題分新用線程,進行標題分析處理;聲音譯碼部,通過由處理器從存儲器讀出并執(zhí)行聲音譯碼用線程,進行聲音譯碼處理;及控制部,通過由處理器從存儲器讀出并執(zhí)行線程切換控制用線程,對分配給處理器的線程進行切換控制,以便使標題分析處理優(yōu)先進行。
按照這種結(jié)構(gòu),由于控制部對分配給處理器的線程進行切換從而優(yōu)先執(zhí)行標題分析處理,所以,能平滑地切換標題分析及聲音譯碼處理,因而能從時間上提高處理效率。
其中,控制部,可以備有中斷檢測部,用于檢測作為線程切換主要原因的中斷的發(fā)生及其類別;狀態(tài)管理部,用于對根據(jù)中斷的類別而轉(zhuǎn)移的標題分析部和聲音譯碼部的狀態(tài)是執(zhí)行狀態(tài)、或是等待狀態(tài)、或是可執(zhí)行狀態(tài)進行管理;及切換部,當(dāng)標題分析部從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)時,將分配給處理器的線程從其他線程切換為標題分析用線程。
按照這種結(jié)構(gòu),控制部,由中斷檢測部檢測中斷的發(fā)生,由狀態(tài)管理部對根據(jù)中斷而轉(zhuǎn)移的標題分析和聲音譯碼的狀態(tài)進行管理,并當(dāng)標題分析部變?yōu)榭蓤?zhí)行時由切換部將標題分析部分配給處理器。這種控制部,由于是根據(jù)中斷進行驅(qū)動的方式,所以能夠從經(jīng)常地監(jiān)視應(yīng)使標題分析部和聲音譯碼部中的哪一個為執(zhí)行狀態(tài)的這種負擔(dān)解放出來。
其中,狀態(tài)管理部,可以備有狀態(tài)表,用于存儲標題分析處理和聲音譯碼處理各自的狀態(tài);及狀態(tài)更新部,根據(jù)中斷的類別對狀態(tài)表進行更新。
其中,上述規(guī)定數(shù)據(jù)塊為數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)所包含的宏數(shù)據(jù)塊,在結(jié)構(gòu)上可以使中斷檢測部檢測當(dāng)標題分析部的宏數(shù)據(jù)塊標題分析結(jié)束時由標題分析部輸出的第1中斷、及當(dāng)宏數(shù)據(jù)塊的譯碼結(jié)束時由定型處理部輸出的第2中斷,狀態(tài)更新部,當(dāng)由中斷檢測部檢測到第1中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài),當(dāng)由中斷檢測部檢測到第2中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài)。
按照這種結(jié)構(gòu),當(dāng)由中斷檢測部檢測到第1中斷和第2中斷時,狀態(tài)更新部將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài)、可執(zhí)行狀態(tài)。切換部則根據(jù)該更新使處理器執(zhí)行變?yōu)榭蓤?zhí)行狀態(tài)的標題分析,所以在由定型處理部對標題部分的譯碼結(jié)束后可立即進行標題分析,因而使處理效率提高。
其中,在標題分析部為等待狀態(tài)的情況下,當(dāng)聲音譯碼部從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)時,切換部在結(jié)構(gòu)上可以將聲音譯碼用線程分配給處理器。
按照這種結(jié)構(gòu),即使聲音譯碼部是在執(zhí)行狀態(tài),但當(dāng)標題分析部變?yōu)榭蓤?zhí)行狀態(tài)時,切換部也是使處理器執(zhí)行標題分析。因此,總是使標題分析優(yōu)先于聲音譯碼執(zhí)行,因而使處理效率提高。
其中,上述定型處理部,可以備有代碼變換部,對數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)進行可變長度譯碼;運算部,通過進行規(guī)定的運算,對由可變長度譯碼得到的圖象數(shù)據(jù)塊進行反量化和反離散余弦變換;及合成部,通過將反離散余弦變換后的圖象數(shù)據(jù)塊與譯碼完成的數(shù)據(jù)塊合成,進行動態(tài)補償處理,從而將圖象數(shù)據(jù)復(fù)原;上述標題分析部可以備有取得部,用于取得請求代碼變換部進行可變長度譯碼的標題信息;分析部,對所取得的標題信息進行分析,并接著進行運動矢量的計算;通知部,將作為分析結(jié)果得到的參數(shù)通知定型處理部;及開始指示部,在分析部的分析過程的規(guī)定時刻指示代碼變換部開始對數(shù)據(jù)塊進行可變長度譯碼。
按照這種結(jié)構(gòu),由標題分析部和定型處理部分擔(dān)對壓縮圖象數(shù)據(jù)的譯碼處理,并且,在定型處理部中,由代碼變換部、運算部、合成部以流水線方式進行以定型計算為中心的處理。另一方面,在標題分析部中,由分析部進行伴有對標題信息分析的條件判斷的處理,通知部將作為分析結(jié)果得到的參數(shù)通知定型處理部。根據(jù)處理的性質(zhì)將上述處理的壓縮圖象數(shù)據(jù)的譯碼處理分成定型運算處理及條件判斷處理,從而可以進行定型處理部的高速處理。此外,標題分析部,通過由開始指示部在分析過程的規(guī)定時刻指示代碼變換部開始對數(shù)據(jù)塊的可變長度譯碼,能提前開始定型處理部的處理,因此,可以縮短將標題分析部的處理及定型處理部的處理混在一起的1個宏數(shù)據(jù)塊所花費的譯碼處理時間。
其中,在結(jié)構(gòu)上可以使上述開始指示部在分析部計算運動矢量之前指示可變長度譯碼開始,上述通知部將計算出的運動矢量通知合成部。
按照這種結(jié)構(gòu),由于開始指示部在分析部計算運動矢量之前指示可變長度譯碼開始,所以,可以將1個宏數(shù)據(jù)塊所花費的譯碼處理時間縮短相當(dāng)于花費在運動矢量計算上的時間。
其中,控制部,可以備有中斷檢測部,用于檢測作為線程切換主要原因的中斷的發(fā)生及其類別;差錯處理部,當(dāng)由中斷檢測部檢測到差錯中斷時,將定型處理部的與該規(guī)定數(shù)據(jù)塊有關(guān)的數(shù)據(jù)廢棄,并使標題分析部變成可執(zhí)行狀態(tài);狀態(tài)管理部,用于對根據(jù)中斷的類別而轉(zhuǎn)移的標題分析部和聲音譯碼部的狀態(tài)是執(zhí)行狀態(tài)、或是等待狀態(tài)、或是可執(zhí)行狀態(tài)進行管理;及切換部,當(dāng)標題分析部轉(zhuǎn)移到可執(zhí)行狀態(tài)時,將標題分析用線程分配給處理器。
按照這種結(jié)構(gòu),控制部,除中斷檢測部、狀態(tài)管理部、切換部外還備有差錯處理部,當(dāng)發(fā)生差錯中斷時,差錯處理部將定型處理部的各部復(fù)位,然后使標題分析部變成執(zhí)行狀態(tài)。因此,處理器執(zhí)行下一時間片的宏數(shù)據(jù)塊的標題分析。按照這種方式,即使是在發(fā)生了差錯的情況下,本圖象聲音處理裝置,也可以在由控制部平滑地進行了差錯處理后由處理器執(zhí)行下一時間片的宏數(shù)據(jù)塊的標題分析,所以能夠從時間上提高處理效率。
其中,在結(jié)構(gòu)上可以使中斷檢測部檢測當(dāng)標題分析部的宏數(shù)據(jù)塊標題分析結(jié)束時由標題分析部輸出的第1中斷、當(dāng)宏數(shù)據(jù)塊的譯碼結(jié)束時由定型處理部輸出的第2中斷、在可變長度譯碼中發(fā)生差錯時由代碼變換部輸出的第3中斷、及在動態(tài)補償處理中發(fā)生差錯時由合成部輸出的第4中斷,狀態(tài)更新部,當(dāng)由中斷檢測部檢測到第1中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài),當(dāng)由中斷檢測部檢測到第2中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài),當(dāng)由中斷檢測部檢測到第3和第4中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài),差錯處理部,當(dāng)由中斷檢測部檢測到第3和第4中斷時將定型處理部的與該規(guī)定數(shù)據(jù)塊有關(guān)的數(shù)據(jù)廢棄。
按照這種結(jié)構(gòu),當(dāng)代碼變換部發(fā)生了可變長度譯碼差錯時以及當(dāng)合成部發(fā)生了動態(tài)補償差錯時,差錯處理部將定型處理部的各部復(fù)位,然后使標題分析部變成執(zhí)行狀態(tài)。按照這種方式,即使是在發(fā)生了差錯的情況下,本圖象聲音處理裝置,也可以由控制部平滑地使處理器執(zhí)行下一時間片的宏數(shù)據(jù)塊的標題分析,所以能夠從時間上提高處理效率。
其中,在結(jié)構(gòu)上可以使中斷檢測部檢測當(dāng)規(guī)定數(shù)據(jù)塊的標題分析結(jié)束時由標題分析部輸出的第1中斷、當(dāng)規(guī)定數(shù)據(jù)塊的定型處理結(jié)束時由定型處理部輸出的第2中斷、在1幀的標題分析結(jié)束時由標題分析部輸出的第3中斷、當(dāng)在標題取得部發(fā)出了請求的情況下不對標題信息進行可變長度譯碼時由代碼變換部輸出的第4中斷、從圖象處理裝置外部輸入的垂直同步信號即第5中斷、在第4中斷后當(dāng)對標題取得部請求的標題信息進行可變長度譯碼時由代碼變換部輸出的第6中斷、當(dāng)在聲音譯碼部對規(guī)定的存儲器請求進行譯碼的數(shù)據(jù)的情況下在該存儲器內(nèi)沒有該數(shù)據(jù)時由存儲器輸出的第7中斷、及在第7中斷后當(dāng)在規(guī)定的存儲器內(nèi)輸入了由聲音譯碼部請求的數(shù)據(jù)時由存儲器輸出的第8中斷,狀態(tài)更新部,當(dāng)由中斷檢測部檢測到第1中斷、第3中斷、第4中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài),當(dāng)檢測到第2中斷、第5中斷、第6中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài),當(dāng)檢測到第7中斷時將狀態(tài)表中的聲音譯碼部的狀態(tài)更新為等待狀態(tài),當(dāng)檢測到第8中斷時將狀態(tài)表中的聲音譯碼部的狀態(tài)更新為可執(zhí)行狀態(tài)。
按照這種結(jié)構(gòu),由狀態(tài)更新部根據(jù)中斷檢測部對第1~第8中斷的檢測將標題分析部及聲音譯碼部的狀態(tài)更新,并由切換部根據(jù)該更新在使標題分析部優(yōu)先的前提下由處理器執(zhí)行標題分析和聲音譯碼。由于控制部按上述方式處理各種中斷,所以能從時間上提高處理器的處理效率。
為達到上述目的,本程序記錄媒體,用于記錄通過對包含壓縮聲音數(shù)據(jù)和壓縮圖象數(shù)據(jù)的數(shù)據(jù)流進行譯碼而將圖象數(shù)據(jù)和聲音數(shù)據(jù)復(fù)原的程序,且可由計算機進行讀取,該程序記錄媒體所記錄的程序,包括標題分析處理,對數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)所含規(guī)定數(shù)據(jù)塊進行標題分析;聲音譯碼處理,對數(shù)據(jù)流中的壓縮聲音數(shù)據(jù)進行譯碼;控制處理,對標題分析處理和聲音譯碼處理進行切換,使標題分析處理優(yōu)先執(zhí)行;及定型處理,執(zhí)行除數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)標題分析處理以外的壓縮圖象數(shù)據(jù)的譯碼。
其中,上述計算機,是具有第1處理器和第2處理器的圖象聲音處理裝置,其特征在于由第1處理器執(zhí)行標題分析處理、聲音譯碼處理、控制處理,由第2處理器執(zhí)行定型處理。
按照這種結(jié)構(gòu),第1處理器,無滯后地優(yōu)先進行標題分析處理并在不進行標題分析處理的空閑時間進行聲音譯碼處理,所以能提高第1處理器的處理能力。此外,由于第1處理器無滯后地進行標題分析的緣故,就可以使第2處理器在接收到標題分析處理的處理結(jié)果數(shù)據(jù)后無滯后地進行定型處理。
其中,上述控制處理,包括中斷檢測處理,檢測作為標題分析處理和聲音譯碼處理的切換主要原因的中斷的發(fā)生及其類別;狀態(tài)管理,對根據(jù)中斷的類別而轉(zhuǎn)移的標題分析處理和聲音譯碼處理的狀態(tài)是執(zhí)行狀態(tài)、或是等待狀態(tài)、或是可執(zhí)行狀態(tài)進行管理;及切換處理,當(dāng)標題分析處理從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)時,將所執(zhí)行的處理從聲音譯碼處理切換為標題分析處理。
按照這種結(jié)構(gòu),當(dāng)標題分析處理變?yōu)榭蓤?zhí)行狀態(tài)時,第1處理器可無滯后地執(zhí)行標題分析處理,從而使處理效率提高。
從以下參照附圖對本發(fā)明的特定實施例的說明將可以清楚地看出本發(fā)明的上述及其他目的、優(yōu)點及特征。
圖1示出現(xiàn)有技術(shù)的圖象聲音譯碼器的譯碼處理的說明圖。
圖2是表示本發(fā)明實施形態(tài)的圖象聲音處理裝置的簡略結(jié)構(gòu)的圖。
圖3是表示MPEG數(shù)據(jù)流與宏數(shù)據(jù)塊的關(guān)系的分層結(jié)構(gòu)圖。
圖4是表示圖象聲音處理裝置的更為詳細的結(jié)構(gòu)的框圖。
圖5示出處理器7執(zhí)行的標題分析處理的詳細內(nèi)容及對其他各部的控制內(nèi)容。
圖6示出譯碼處理部的各部動作時序。在該圖中橫軸為時間軸。
圖7示出譯碼處理部的各主要部的處理時序。
圖8示出處理器7的軟件結(jié)構(gòu)圖。
圖9是表示OS檢測的各種中斷信號的表。
圖10是表示圖象線程的狀態(tài)轉(zhuǎn)移的圖。
圖11是表示聲音線程的狀態(tài)轉(zhuǎn)移的圖。
圖12是表示狀態(tài)表的一例的圖。
圖13是表示OS選擇分配給處理器7的線程時的選擇處理的流程圖。
圖14A、圖14B是根據(jù)圖7詳細地表示出譯碼處理部各部的譯碼動作的圖。
圖15A、圖15B是表示代碼變換部9中發(fā)生⑨VLD差錯時的動作的圖。
圖16A、圖16B是表示象素讀寫部中發(fā)生動態(tài)補償差錯時的動作的圖。
對本發(fā)明的圖象聲音處理裝置,按如下所列分項說明其實施形態(tài)。
實施形態(tài)1 圖象聲音處理裝置的簡略結(jié)構(gòu)1.1 輸入輸出處理部1.2 譯碼處理部1.2.1 逐次處理部1.2.2 定型處理部2 圖象聲音處理裝置的結(jié)構(gòu)2.1 輸入輸出處理部的結(jié)構(gòu)2.2 譯碼處理部的結(jié)構(gòu)2.2.1 逐次處理部2.2.1.1 標題分析處理2.2.1.2 聲音譯碼處理2.2.2 定型處理部3 各部的處理時序4 逐次處理部的OS4.1 中斷信號4.2 線程的狀態(tài)轉(zhuǎn)移4.2.1 圖象線程4.2.2 聲音線程4.3 線程管理4.4 處理器的分配4.5 差錯處理5 動作說明5.1 輸入輸出處理部的動作5.2 譯碼處理部1002的動作5.2.1 正常時的動作5.2.2 VLD差錯時的動作5.2.3 動態(tài)補償差錯時的動作
<實施形態(tài)>
本實施形態(tài)的圖象聲音處理裝置,設(shè)置在衛(wèi)星廣播接收裝置(簡稱STB頂置盒)、DVD(數(shù)字通用視盤)再生裝置、DVD-RAM記錄再生裝置等中,當(dāng)作為壓縮圖象聲音數(shù)據(jù)從衛(wèi)星廣播或從DVD輸入MPEG數(shù)據(jù)流時,進行解壓縮處理(以下,簡稱為譯碼),并將圖象數(shù)據(jù)和聲音數(shù)據(jù)輸出到外部的輸出裝置。
<1圖象聲音處理裝置的簡略結(jié)構(gòu)>
圖2是表示本發(fā)明實施形態(tài)的圖象聲音處理裝置的簡略結(jié)構(gòu)的圖。
圖象聲音處理裝置1000,備有輸入輸出處理部1001、譯碼處理部1002、存儲控制器6,在結(jié)構(gòu)上使輸入輸出處理與譯碼處理以并行方式進行。此外,外部存儲器3,作為暫時存儲MPEG數(shù)據(jù)流或譯碼后聲音數(shù)據(jù)的工作存儲器、存儲譯碼后圖象數(shù)據(jù)的幀存儲器使用。
<1.1輸入輸出處理部>
輸入輸出處理部1001,用于進行與圖象聲音處理裝置1000的內(nèi)部動作非同步發(fā)生的輸入輸出處理。該輸入輸出處理的內(nèi)容包括(a)從外部輸入非同步地輸入的MPEG數(shù)據(jù)流,并暫時存儲在外部存儲器3內(nèi);(b)將存儲在外部存儲器3內(nèi)的MPEG數(shù)據(jù)流供給譯碼處理部1002;(c)從外部存儲器3讀出譯碼后圖象數(shù)據(jù)、聲音數(shù)據(jù),并按照外部的顯示裝置、聲音輸出裝置(圖中未示出)的各自的輸出速率輸出。
<1.2譯碼處理部>
譯碼處理部1002,以與輸入輸出部1001并行動作的方式獨立地對由輸入輸出部1001供給的MPEG數(shù)據(jù)流進行譯碼,并將譯碼后圖象數(shù)據(jù)和聲音數(shù)據(jù)存儲在外部存儲器3內(nèi)。由于MPEG數(shù)據(jù)流的壓縮圖象數(shù)據(jù)的譯碼處理運算量大且處理內(nèi)容涉及多個方面,所以譯碼處理部1002備有逐次處理部1003、定型處理部1004,并由二者分擔(dān)處理。即,逐次處理部1003,對壓縮圖象數(shù)據(jù)的宏數(shù)據(jù)塊標題部分進行標題分析處理,定型處理部1004,對壓縮圖象數(shù)據(jù)的宏數(shù)據(jù)塊本體部分進行譯碼處理。這樣,在譯碼處理部1002中,由逐次處理部1003和定型處理部1004對壓縮圖象數(shù)據(jù)的每個宏數(shù)據(jù)塊分別各進行一次處理。
這里,說明MPEG數(shù)據(jù)流的壓縮圖象數(shù)據(jù)與其宏數(shù)據(jù)塊的關(guān)系。
圖3是表示MPEG數(shù)據(jù)流與宏數(shù)據(jù)塊的關(guān)系的分層結(jié)構(gòu)圖。第1分層表示MPEG數(shù)據(jù)流。第2分層是1秒鐘時間的MPEG數(shù)據(jù)流,包含多個幀(I、P、B圖象)。第3分層是幀,1個幀包含圖象標題及多個時間片。第4分層是時間片,1個時間片包含時間片標題及多個宏數(shù)據(jù)塊。第5分層是宏數(shù)據(jù)塊,1個宏數(shù)據(jù)塊包含宏數(shù)據(jù)塊標題部分及6個數(shù)據(jù)塊。6個數(shù)據(jù)塊為4個亮度數(shù)據(jù)塊及2個色差數(shù)據(jù)塊,數(shù)據(jù)塊表示由8*8象素構(gòu)成的圖象。這6個數(shù)據(jù)塊相當(dāng)于宏數(shù)據(jù)塊本體部分。
在該圖中示出的第1~第5分層的數(shù)據(jù)結(jié)構(gòu),在眾所周知的文獻、例如ァスキ-公司的「要點圖解式最新MPEG教科書」中有詳細的說明。
另一方面,壓縮聲音數(shù)據(jù)的譯碼處理(以下簡稱為聲音譯碼處理),其處理量比壓縮圖象數(shù)據(jù)的譯碼少。因此,聲音譯碼處理,由逐次處理部1003在一個宏數(shù)據(jù)塊的標題分析處理與下一個宏數(shù)據(jù)塊的標題分析處理之間的時間帶進行。
如上所述,逐次處理部1003,進行標題分析處理及聲音譯碼處理。逐次處理部1003,以使標題分析處理優(yōu)先的方式,通過執(zhí)行編入了各處理過程的程序逐次地進行這兩種處理。以下將這兩種處理統(tǒng)一稱作逐次處理。此外,定型處理部1004,對宏數(shù)據(jù)塊本體部分進行譯碼處理。該處理是以數(shù)據(jù)塊為單位進行大量的各種定型運算的處理。以下將這種處理稱作定型處理。
<1.2.1逐次處理部>
逐次處理部1003,具有處理器和存儲器,處理器通過執(zhí)行存儲器中的線程程序(以下簡稱線程)進行優(yōu)先執(zhí)行的標題分析處理及聲音譯碼處理。在逐次處理部1003中,為了使標題分析處理比聲音譯碼處理優(yōu)先進行,由OS控制這些處理的執(zhí)行。這里,所謂線程,指的是在多線程環(huán)境中執(zhí)行的一組處理程序。
這里,標題分析處理,包括宏數(shù)據(jù)塊的標題分析及運動矢量的計算。在宏數(shù)據(jù)塊的標題部分中,記錄著在對宏數(shù)據(jù)塊本體部分進行譯碼的過程中所需要的信息(標題信息),逐次處理部1003將通過分析得到的各種數(shù)據(jù)輸出到定型處理部1004。所謂運動矢量,是指向參照幀中的8*8的矩形區(qū)域的矢量,用于指示所取得的是該數(shù)據(jù)塊與參照幀中的哪一個矩形區(qū)域的差分。
另一方面,聲音譯碼處理,只在逐次處理部1003的內(nèi)部獨立地進行壓縮聲音數(shù)據(jù)標題部分的分析及數(shù)據(jù)本體部分的譯碼。因此,聲音譯碼處理的中斷和重新開始要比標題分析處理容易進行。此外,如上所述,聲音譯碼處理,幾乎可以在一個標題分析與下一個標題分析之間的時間帶進行充分的處理,因而其處理量少。由上述的理由可知,在逐次處理部1003中,在結(jié)構(gòu)上可以使標題分析處理優(yōu)先于聲音譯碼處理進行。
更為詳細地說,當(dāng)標題分析處理可執(zhí)行時,OS進行控制確保執(zhí)行標題分析處理。這時,即使聲音譯碼處理正在執(zhí)行中,OS也要將聲音譯碼處理中斷,然后執(zhí)行標題分析。
<1.2.2定型處理部>
定型處理部1004,作為定型處理,以流水線方式按相同順序?qū)陻?shù)據(jù)塊本體部分進行可變長度碼的譯碼(VLD:Variable Length codeDecoding)、反量化(IQ:InverseQuantization)、反離散余弦變換(IDCT:Inverse Discrete Cosine Transform)、動態(tài)補償(MC:MotionCompensation)。但是,定型處理部1004,不僅對宏數(shù)據(jù)塊本體部分而且對宏數(shù)據(jù)塊的標題部分也進行VLD,并將經(jīng)VLD后的標題部分的數(shù)據(jù)輸出到逐次處理部1003。
定型處理部1004,在動態(tài)補償中將譯碼后的數(shù)據(jù)塊通過存儲控制器6存儲在作為幀存儲器的外部存儲器3內(nèi)。
<2圖象聲音處理裝置的結(jié)構(gòu)>
圖4是表示圖象聲音處理裝置1000的更為詳細的結(jié)構(gòu)的框圖。
<2.1輸入輸出處理部的結(jié)構(gòu)>
在該圖中,輸入輸出處理部1001,備有數(shù)據(jù)流輸入部1、緩沖存儲器2、輸入輸出處理器5(以下簡稱為IO處理器5)、DMAC(直接存儲存取控制器)5a、圖象輸出部12、聲音輸出部13、主I/F部14。
數(shù)據(jù)流輸入部1,將從外部以串行方式輸入的MPEG數(shù)據(jù)流變換為并行數(shù)據(jù)(以下,稱作MPEG數(shù)據(jù))。這時,數(shù)據(jù)流輸入部1,從MPEG數(shù)據(jù)流檢測出GOP(圖象組包含1個I圖象、且與大約0.5秒鐘的動圖象相當(dāng)?shù)腗PEG數(shù)據(jù)流)的狀態(tài)碼,并將該檢測結(jié)果通知IO處理器5。按照該通知變換后的MPEG數(shù)據(jù),在IO處理器5的控制下傳送到緩沖存儲器2。
緩沖存儲器2,是暫時保持從數(shù)據(jù)流輸入部1傳送的MPEG數(shù)據(jù)的緩沖用存儲器。由緩沖存儲器2保持的MPEG數(shù)據(jù),進一步在輸入輸出處理器5的控制下通過存儲控制器6傳送到外部存儲器3。
外部存儲器3,由SDRAM(同步動態(tài)隨機存取存儲器)芯片構(gòu)成,用于暫時保持從緩沖存儲器2通過存儲控制器6傳送到的MPEG數(shù)據(jù)。另外,外部存儲器3還用于保持譯碼后的圖象數(shù)據(jù)(以下,也稱作幀數(shù)據(jù))及譯碼后的聲音數(shù)據(jù)。
輸入輸出處理器5,控制數(shù)據(jù)流輸入部1、緩沖存儲器2、外部存儲器3(通過存儲控制器6)、FIFO存儲器4之間的數(shù)據(jù)的輸入輸出。即,對以下的(1)~(4)所示路徑的數(shù)據(jù)傳送(DMA傳送)進行控制。
(1)數(shù)據(jù)流輸入部1→緩沖存儲器2→存儲控制器6→外部存儲器3(2)外部存儲器3→存儲控制器6→FIFO存儲器4(3)外部存儲器3→存儲控制器6→緩沖存儲器2→圖象輸出部12(4)外部存儲器3→存儲控制器6→緩沖存儲器2→聲音輸出部13在這些路徑中,輸入輸出處理器5,對分別獨立地傳送MPEG數(shù)據(jù)中的圖象數(shù)據(jù)和聲音數(shù)據(jù)進行控制。此外,(1)、(2)是譯碼前的MPEG數(shù)據(jù)傳送路徑。在(1)、(2)的傳送路徑中,輸入輸出處理器5分別傳送壓縮圖象數(shù)據(jù)和壓縮聲音數(shù)據(jù)。(3)、(4)分別為譯碼后的圖象、聲音數(shù)據(jù)的傳送路徑。譯碼后的圖象、聲音數(shù)據(jù),按照外部的顯示裝置(圖中未示出)、聲音輸出裝置(圖中未示出)的各自的輸出速率進行傳送。
DMAC5a,按照IO處理器5的控制執(zhí)行數(shù)據(jù)流輸入部1、圖象輸出部12、聲音輸出部13及緩沖存儲器2之間的DMA傳送、緩沖存儲器2與外部存儲器3之間的DMA傳送、外部存儲器3與FIFO存儲器4之間的DMA傳送。
圖象輸出部12,根據(jù)外部的顯示裝置(CRT等)的輸出速率(例如水平同步信號Hsync的周期)對輸入輸出處理器5發(fā)出數(shù)據(jù)請求,并由輸入輸出處理器5通過上述傳送路徑(3)將所輸入的圖象數(shù)據(jù)輸出到該顯示裝置。
聲音輸出部13,根據(jù)外部的聲音輸出裝置的輸出速率對輸入輸出處理器5發(fā)出數(shù)據(jù)請求,并由輸入輸出處理器5通過上述傳送路徑(4)將所輸入的聲音數(shù)據(jù)輸出到聲音輸出裝置(D/A轉(zhuǎn)換器、聲音放大器、揚聲器的組合等)。
主I/F部14,是用于與外部的主處理器、例如在DVD再生裝置的情況下對其進行總體控制的處理器進行通信的接口。在該通信中,從主處理器發(fā)送MPEG數(shù)據(jù)流的譯碼開始、停止、快放再生、倒放再生之類的指示等。
<2.2譯碼處理部的結(jié)構(gòu)>
在圖4中,譯碼處理部1002,備有FIFO存儲器4、逐次處理部1003、定型處理部1004,對從輸入輸出處理部1001通過FIFO存儲器4供給的MPEG數(shù)據(jù)進行譯碼處理。此外,逐次處理部1003備有處理器7、內(nèi)部存儲器8。定型處理部1004備有代碼變換部9、象素運算部10、象素讀寫部11、緩沖器200、緩沖器201。
FIFO存儲器4,由2個FIFO構(gòu)成,在IO處理器5的控制下以先進先出的方式分別存儲從外部存儲器3傳送到的壓縮圖象數(shù)據(jù)、壓縮聲音數(shù)據(jù)。
<2.2.1逐次處理部>
處理器7,執(zhí)行存儲在內(nèi)部存儲器8內(nèi)的OS,并在OS的控制下對存儲在該內(nèi)部存儲器8內(nèi)的用于標題分析處理的程序、用于聲音譯碼處理的程序進行切換。以下,詳細說明標題分析處理和聲音譯碼處理。
<2.2.1.1標題分析處理>
圖5示出處理器7執(zhí)行的標題分析處理的詳細內(nèi)容及對其他各部的控制內(nèi)容。在該圖中用縮寫詞示出的宏數(shù)據(jù)塊標題中的各數(shù)據(jù),在上述文獻等中已有說明,所以這里將其說明省略。
如該圖所示,處理器7向代碼變換部9發(fā)出命令,要求逐次取得經(jīng)VLD后的標題部分的數(shù)據(jù),并根據(jù)其內(nèi)容對代碼變換部9、象素運算部10、象素讀寫部11設(shè)定在宏數(shù)據(jù)塊的譯碼中所需要的各種數(shù)據(jù)。處理器7還在標題分析過程中指示代碼變換部9開始宏數(shù)據(jù)塊本體部分的譯碼。
在圖5中,處理器7向代碼變換部9發(fā)出用于取得MBAI(宏數(shù)據(jù)塊地址增量)的命令(S101),并由代碼變換部9取得MBAI。如果根據(jù)該MBAI該宏數(shù)據(jù)塊數(shù)據(jù)是跳躍宏數(shù)據(jù)塊(如果當(dāng)前想要進行譯碼的宏數(shù)據(jù)塊與前一個幀的對應(yīng)宏數(shù)據(jù)塊相同),則由于宏數(shù)據(jù)塊被省略,所以進入S118,如果不是跳躍宏數(shù)據(jù)塊,則繼續(xù)進行標題分析(S102、S103)。
接著,處理器7發(fā)出用于取得MBT(宏數(shù)據(jù)塊類型)的命令,并由代碼變換部9取得MBT。根據(jù)該MBT判斷數(shù)據(jù)塊的掃描方式是Z形掃描還是交替掃描,并向象素運算部10指示緩沖器200的讀出順序(S104)。
進一步,處理器7根據(jù)已經(jīng)取得的標題部分的數(shù)據(jù)判定STWC(時空加權(quán)代碼)是否存在(S105),如存在時,發(fā)出命令并取得該代碼(S106)。
按同樣方式,處理器7取得FrMT(幀運動方式)、FiMT(字段運動方式)、DT(DCT類型)、QSC(量化器換算碼)、MV(運動矢量)、CBP(編碼數(shù)據(jù)塊模式)(S107-S116)。這時,處理器7,將FrMT、FiMT、DT的分析結(jié)果通知象素讀寫部11,將QSC的分析結(jié)果通知象素運算部10,并將CBP的分析結(jié)果通知代碼變換部9。由此,可以對代碼變換部9、象素運算部10、象素讀寫部11設(shè)定在IQ、IDCT、動態(tài)補償中所需要的信息。
接著,處理器7向代碼變換部9輸出宏數(shù)據(jù)塊本體部分的VLD開始的指示(S117)。在接收到該通知后,代碼變換部9開始進行VLD。
進一步,處理器7,根據(jù)MV數(shù)據(jù)計算運動矢量(S118),并將計算結(jié)果通知象素讀寫部11(S119)。
處理器7之所以如上所述在有關(guān)運動矢量的處理(S118~S119)之前發(fā)出VLD開始的指示(S117),其原因如下。
在定型處理部1004中,按代碼變換部9、象素運算部10、象素讀寫部11的順序進行流水線方式的處理。這時,定型處理部1004的各部,在接收到標題分析結(jié)果的各種數(shù)據(jù)后進行各部的處理。在圖5中完成了S116的處理的時刻,象素讀寫部11沒有接收到運動矢量的數(shù)據(jù)因而不能進行處理,但代碼變換部9和象素運算部10接收到其各自的處理所需的數(shù)據(jù)并變成可進行處理的狀態(tài)。因此,可先開始進行定型處理,在代碼變換部9和象素運算部10進行處理的過程中計算運動矢量并將計算結(jié)果通知象素讀寫部11。因此,本實施形態(tài),可以縮短宏數(shù)據(jù)塊的譯碼處理所需花費的時間,因而能提高譯碼處理部1002的處理效率。
最后,處理器7將宏數(shù)據(jù)塊的標題分析結(jié)束信號通知OS(S120)。但在1幀的標題分析結(jié)束時,處理器7將1幀結(jié)束信號取代宏數(shù)據(jù)塊的標題分析結(jié)束信號通知OS。
按照如上方式,處理器7完成1個宏數(shù)據(jù)塊的壓縮圖象數(shù)據(jù)的標題分析。
<2.2.1.2聲音譯碼處理>
在聲音譯碼處理中,處理器7對從FIFO存儲器4讀出的壓縮聲音數(shù)據(jù)進行標題部分和數(shù)據(jù)部分的分析,并通過譯碼處理對頻道進行下行混頻。處理器7將由這一連串的處理得到的聲音數(shù)據(jù)通過存儲控制器6輸出到外部存儲器3。
<2.2.2定型處理部>
圖6示出譯碼處理部1002的各部動作時序。在該圖中橫軸為時間軸。
代碼變換部9,按每個宏數(shù)據(jù)塊對從FIFO存儲器4讀出的壓縮圖象數(shù)據(jù)進行VLD。如該圖所示,代碼變換部9將經(jīng)VLD后的數(shù)據(jù)中的標題部分(圖中的虛線區(qū)間)傳送到處理器7,并將宏數(shù)據(jù)塊(由亮度數(shù)據(jù)塊Y0~Y3及色差數(shù)據(jù)塊Cb、Cr組成的6個數(shù)據(jù)塊)的數(shù)據(jù)(圖中的實線區(qū)間)通過緩沖器200傳送到象素運算部10。由代碼變換部9譯碼后的宏數(shù)據(jù)塊數(shù)據(jù)是表示空間頻率分量的數(shù)據(jù)。
代碼變換部9,在進行標題部分的VLD時,與處理器7的標題分析處理并行動作。代碼變換部9,當(dāng)接收到由處理器7請求各種數(shù)據(jù)的命令時,將對應(yīng)的數(shù)據(jù)輸出到處理器7。代碼變換部9,在完成對1個宏數(shù)據(jù)塊的VLD后,向處理器7輸出VLD結(jié)束信號。
緩沖器200,用于保持表示由代碼變換部9寫入的1個數(shù)據(jù)塊(8×8象素部分)的空間頻率分量的數(shù)據(jù)。
象素運算部10,以數(shù)據(jù)塊為單位對緩沖器200的數(shù)據(jù)塊數(shù)據(jù)進行IQ及IDCT。象素運算部10的處理結(jié)果,如果是亮度數(shù)據(jù)塊則是表示象素的亮度值或其差分的數(shù)據(jù),如果是色差數(shù)據(jù)塊則是表示象素的色差或其差分的數(shù)據(jù),該處理結(jié)果通過緩沖器201傳送到象素讀寫部11。
緩沖器201,用于保持1個數(shù)據(jù)塊(8×8象素部分)的象素數(shù)據(jù)。
象素讀寫部11,以數(shù)據(jù)塊為單位對象素運算部10的處理結(jié)果進行動態(tài)補償。即,在P圖象、B圖象中,通過存儲控制器6從外部存儲器3的已完成譯碼的參照幀截出運動矢量指示的矩形區(qū)域,并與象素運算部10的處理結(jié)果的數(shù)據(jù)塊合成,從而譯碼為原來的數(shù)據(jù)塊圖象。象素讀寫部11的譯碼結(jié)果,通過存儲控制器6存儲在外部存儲器3內(nèi)。
<3各部的處理時序>
以下,說明結(jié)構(gòu)如上所述的逐次處理部1003和定型處理部1004的各部的處理時序。
圖7示出譯碼處理部1002的各主要部的處理時序。在該圖中,橫軸表示時間,t0~t4表示時間軸上的時刻。
在該圖中,處理器7,首先對1個宏數(shù)據(jù)塊進行標題分析處理(標題信息的分析和運動矢量的計算)(t0~t2)。在該處理中,處理器7,當(dāng)結(jié)束標題信息的分析時(t1),在進行運動矢量的計算處理之前,向代碼變換部9輸出宏數(shù)據(jù)塊本體部分的VLD開始指示。在完成1個宏數(shù)據(jù)塊的標題分析后,處理器7開始進行聲音譯碼處理(t2)。當(dāng)代碼變換部9完成宏數(shù)據(jù)塊本體部分的VLD時(t3),處理器7將聲音譯碼處理中斷,并開始標題分析處理。
處理器7之所以如上所述在完成1個宏數(shù)據(jù)塊的標題分析后并不立即進行下一個宏數(shù)據(jù)塊的標題分析而是進行聲音譯碼處理,其原因如下。即,處理器7在進行標題分析時,向代碼變換部9發(fā)出命令要求獲得由代碼變換部9進行了VLD的標題部分的信息,所以,在處理器7進行標題分析時,代碼變換部9必須是對標題部分進行VLD的狀態(tài)。與此不同,在處理器7完成了標題分析的時刻,代碼變換部9正進行著宏數(shù)據(jù)塊本體部分的VLD,而不是對標題部分進行VLD的狀態(tài)。
代碼變換部9,與處理器7的標題分析并行操作,進行宏數(shù)據(jù)塊標題部分的VLD(t0~)。接著,在接到來自處理器7的VLD開始指示后,代碼變換部9開始進行宏數(shù)據(jù)塊本體的VLD(t1)。當(dāng)完成宏數(shù)據(jù)塊本體部分的VLD時,代碼變換部9向逐次處理部1003輸出表示VLD已完成的VLD結(jié)束信號。因此,處理器7將聲音譯碼處理中斷,并開始標題分析處理(t3)。
象素運算部10及象素讀寫部11,以流水線方式分別接在代碼變換部9、象素運算部10之后進行處理。
如上述處理時序所示,處理器7通過優(yōu)先執(zhí)行標題分析,可以使定型處理部1004的各部得到在宏數(shù)據(jù)塊的譯碼中所需的各種數(shù)據(jù),從而能無滯后地進行處理。此外,定型處理部1004的各部,由于按流水線方式進行處理,所以能夠?qū)崿F(xiàn)高速處理。并且,處理器7,利用在一個宏數(shù)據(jù)塊的標題分析與下一個宏數(shù)據(jù)塊的標題分析之間的空閑時間進行聲音譯碼處理,從而可以減少處理器7的空閑時間,因而使處理效率提高。
另外,處理器7,在結(jié)束了標題分析處理中的標題信息分析的時刻(t1),向代碼變換部9輸出宏數(shù)據(jù)塊本體部分的VLD開始指示,所以,使VLD的開始定時提前,因而可以將1個宏數(shù)據(jù)塊的總體譯碼所花費的時間縮短相當(dāng)于該提前的時間。
<4逐次處理部的OS>
在處理器7中,OS的操作是為了能以高的效率按上述處理時序進行各項處理。OS將標題分析結(jié)束或宏數(shù)據(jù)塊本體的VLD結(jié)束等信號作為中斷信號檢出,并根據(jù)對這些信號的檢出在使標題分析處理優(yōu)先的前提下進行標題分析和聲音譯碼處理的切換。
圖8示出處理器7的軟件結(jié)構(gòu)圖。
在該圖中,圖象線程是處理器7執(zhí)行標題分析處理用的線程。聲音線程是處理器7執(zhí)行聲音譯碼處理用的線程??站€程是當(dāng)處理器7既不進行標題分析處理也不進行聲音譯碼處理時執(zhí)行的空閑用線程。
OS介于處理器7與各線程之間,用于管理根據(jù)中斷轉(zhuǎn)移的各線程的狀態(tài)。其中,各線程可取得3種狀態(tài),即執(zhí)行狀態(tài)、等待狀態(tài)、可執(zhí)行狀態(tài)。此外,OS還根據(jù)各線程的轉(zhuǎn)移后的狀態(tài)在使圖象線程優(yōu)先的前提下將某個線程分配給處理器7。進一步,當(dāng)在標題分析處理和定型處理中發(fā)生差錯時,OS還進行差錯處理。
<4.1中斷信號>
圖9是表示OS檢測的各種中斷信號的表。
在該圖中,第2列表示中斷信號的類別。第3列表示中斷信號的輸出源。第4列表示中斷信號的產(chǎn)生原因。另外,在該圖中,為便于說明,在第1列中附加了識別序號。
①標題分析結(jié)束信號,是處理器7在1個宏數(shù)據(jù)塊的標題分析處理結(jié)束時輸出的信號。
②1幀結(jié)束信號,是處理器7在1個幀的標題分析處理結(jié)束時取代①的標題分析結(jié)束信號輸出的信號。
③VLD忙信號,是代碼變換部9輸出的信號。代碼變換部9,在正常情況下將與由處理器7發(fā)出的命令對應(yīng)的數(shù)據(jù)返送到處理器7,但當(dāng)對該數(shù)據(jù)的VLD尚未完成時取代該數(shù)據(jù)而輸出VLD忙信號。
④VLD結(jié)束信號,是代碼變換部9在1個宏數(shù)據(jù)塊的VLD結(jié)束時輸出的信號。
⑤垂直同步信號,是由外部輸入到圖象聲音處理裝置1000的信號。是用于使1幀的宏數(shù)據(jù)塊譯碼周期與垂直同步信號的周期一致的信號。
⑥VLD就緒信號,是在代碼變換部9輸出③的VLD忙信號后當(dāng)該數(shù)據(jù)的VLD完成時輸出的信號。
⑦聲音數(shù)據(jù)忙信號,是在由處理器7請求壓縮聲音數(shù)據(jù)時還沒有從外部存儲器3輸入對應(yīng)的壓縮聲音數(shù)據(jù)的情況下由FIFO存儲器4輸出的信號。
⑧聲音數(shù)據(jù)就緒信號,是FIFO存儲器4在輸出⑦的聲音數(shù)據(jù)忙信號后從外部存儲器3輸入了對應(yīng)的壓縮聲音數(shù)據(jù)時輸出的信號。
⑨VLD差錯信號,是在VLD中發(fā)生了差錯時由代碼變換部9輸出的信號。
⑩動態(tài)補償差錯信號,是在動態(tài)補償中發(fā)生了差錯時由象素讀寫部11輸出的信號。
<4.2線程的狀態(tài)轉(zhuǎn)移>
當(dāng)發(fā)生了圖9所示中斷信號中的①~⑧的信號時,圖象線程及聲音線程的狀態(tài)按如下所示轉(zhuǎn)移。
<4.2.1圖象線程>
圖10是表示圖象線程的狀態(tài)轉(zhuǎn)移的圖。
在箭頭附近示出的中斷信號①~③及④~⑥,表示該箭頭的轉(zhuǎn)移是由該中斷信號引起的。此外,在等待狀態(tài)中記載的(1)~(3),分別表示具體的等待原因。①~③、(1)~(3)及④~⑥,分別相對應(yīng)。
詳細地說,圖象線程,根據(jù)在處理器7中執(zhí)行的情況,當(dāng)1個宏數(shù)據(jù)塊的標題分析處理結(jié)束時(①),從執(zhí)行狀態(tài)轉(zhuǎn)移到等待狀態(tài),等待代碼變換部9的宏數(shù)據(jù)塊本體部分的VLD結(jié)束((1)),當(dāng)VLD結(jié)束時(④),從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)。
同樣,圖象線程,根據(jù)在處理器7中執(zhí)行的情況,當(dāng)1個幀的標題分析結(jié)束時(②),從執(zhí)行狀態(tài)轉(zhuǎn)移到等待狀態(tài),等待從外部輸入垂直同步信號(②),當(dāng)輸入垂直同步信號時(⑤),從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)。
另外,圖象線程,當(dāng)由代碼變換部9輸出VLD忙信號時(③),從執(zhí)行狀態(tài)轉(zhuǎn)移到等待狀態(tài),等待完成該數(shù)據(jù)的VLD(③),當(dāng)由代碼變換部9輸出VLD就緒信號時(⑥),從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)。
<4.2.2聲音線程>
圖11是表示聲音線程的狀態(tài)轉(zhuǎn)移的圖。
該圖也與圖10一樣,示出該箭頭的轉(zhuǎn)移是由在箭頭附近示出的中斷信號⑦、⑧引起的,中斷信號⑦、等待原因(4)、中斷信號⑧相互對應(yīng)。
即,聲音線程,當(dāng)由FIFO存儲器4輸出聲音數(shù)據(jù)忙信號時(⑦),從執(zhí)行狀態(tài)轉(zhuǎn)移到等待狀態(tài),等待為FIFO存儲器準備數(shù)據(jù)((4)),當(dāng)由FIFO存儲器4輸出聲音數(shù)據(jù)就緒信號時(⑧),從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)。
OS備有使線程與線程當(dāng)前狀態(tài)對應(yīng)的狀態(tài)表,當(dāng)檢測到中斷信號①~⑧時,根據(jù)中斷信號的類別對狀態(tài)表進行重寫,從而對線程的狀態(tài)進行管理。
圖12是表示狀態(tài)表的一例的圖。在該圖中,第1列表示線程的類別,第2列表示線程類別的線程當(dāng)前狀態(tài)。例如,當(dāng)檢測出標題分析結(jié)束信號①時,OS將圖10的圖象線程狀態(tài)從執(zhí)行狀態(tài)重寫為等待狀態(tài)。
這樣,OS可根據(jù)圖10和圖11所示的因中斷引起的線程轉(zhuǎn)移對狀態(tài)表進行重寫。
<4.4處理器的分配>
在根據(jù)中斷進行了狀態(tài)表的重寫后,OS進行選擇分配給處理器7的線程的選擇處理。
圖13是表示OS選擇分配給處理器7的線程時的選擇處理的流程圖。
首先,OS參照狀態(tài)表判斷圖象線程是否是執(zhí)行狀態(tài)(步驟121)。如判斷結(jié)果表明圖象線程是執(zhí)行狀態(tài),則結(jié)束該選擇處理。
當(dāng)步驟121的判斷結(jié)果表明圖象線程不是執(zhí)行狀態(tài)時,OS接著判斷圖象線程是否是可執(zhí)行狀態(tài)(步驟122)。當(dāng)判斷結(jié)果表明圖象線程是可執(zhí)行狀態(tài)時,OS將當(dāng)前處在執(zhí)行狀態(tài)的聲音線程轉(zhuǎn)移到可執(zhí)行狀態(tài),然后將圖象線程轉(zhuǎn)移到執(zhí)行狀態(tài)。就是說,OS對處理器7執(zhí)行的聲音線程和圖象線程進行切換(步驟123、124)。
OS進行控制的方式是,當(dāng)圖象線程是執(zhí)行狀態(tài)時結(jié)束本選擇處理,而當(dāng)圖象線程是可執(zhí)行狀態(tài)時將圖象線程轉(zhuǎn)移到執(zhí)行狀態(tài),從而優(yōu)先執(zhí)行圖象線程。
當(dāng)步驟122的判斷結(jié)果表明圖象線程不是可執(zhí)行狀態(tài)時,就是說圖象線程是等待狀態(tài)時,OS判斷聲音線程是否是可執(zhí)行狀態(tài)(步驟125)。
當(dāng)步驟125的判斷結(jié)果表明聲音線程是可執(zhí)行狀態(tài)時,OS使聲音線程為執(zhí)行狀態(tài)(步驟126)。
當(dāng)步驟125的判斷結(jié)果表明聲音線程不是可執(zhí)行狀態(tài)時,即當(dāng)圖象線程和聲音線程都處在等待狀態(tài)時,OS使處理器7執(zhí)行在處理器7中不進行任何處理的所謂空閑線程的程序(步驟127)。
<4.5差錯處理>
當(dāng)檢測到圖9所示的⑨VLD差錯信號及⑩動態(tài)補償差錯信號時,OS將由處理器7執(zhí)行中的線程中斷,并進行差錯處理。在差錯處理中,OS向定型處理部1004中的象素運算部10和象素讀寫部11輸出復(fù)位信號,并將與該宏數(shù)據(jù)塊的譯碼有關(guān)的數(shù)據(jù)全部廢棄。這時,象素讀寫部11在輸入了復(fù)位信號后進行差錯補償。這里,所謂差錯補償,是為進行下一個時間片的宏數(shù)據(jù)塊的譯碼而從外部存儲器3讀出與被廢棄的宏數(shù)據(jù)塊的前一個幀位置相同的宏數(shù)據(jù)塊的處理。
在輸出復(fù)位信號后,OS將狀態(tài)表中的圖象線程的狀態(tài)重寫為可執(zhí)行狀態(tài)。因此,通過圖13所示的OS的選擇處理使圖象線程變?yōu)閳?zhí)行狀態(tài)。處理器7分配圖象線程并執(zhí)行下一個時間片的宏數(shù)據(jù)塊的標題分析。
<5動作說明>
對結(jié)構(gòu)如上所述的圖象聲音處理裝置1000,說明其動作。
<5.1輸入輸出處理部的動作>
在輸入輸出部1001中,以非同步方式從數(shù)據(jù)流輸入部1輸入的MPEG數(shù)據(jù)流,在輸入輸出處理器5的控制下,通過緩沖存儲器2、存儲控制器6暫時存儲在外部存儲器3內(nèi),進一步,通過存儲控制器6保持在FIFO存儲器4內(nèi)。這時,IO處理器5是根據(jù)剩余容量對FIFO存儲器4供給壓縮動圖象數(shù)據(jù)、壓縮聲音數(shù)據(jù)。這樣,IO處理器5能夠適當(dāng)?shù)貙IFO存儲器4供給一定適當(dāng)量的壓縮動圖象數(shù)據(jù)、壓縮聲音數(shù)據(jù),所以,可以使譯碼處理部1002與非同步的輸入輸出分開,專門進行譯碼處理。到此為止的處理,由上述輸入輸出處理部1001與譯碼處理部1002彼此獨立地并行進行。
<5.2譯碼處理部1002的動作>
另一方面,在譯碼處理部1002中,由處理器7、代碼變換部9、象素運算部10、象素讀寫部11對保持在FIFO存儲器4內(nèi)的MPEG數(shù)據(jù)流進行譯碼。以下,將表示FIFO存儲器4以后的的譯碼動作的說明圖分成未發(fā)生差錯時的動作(正常時的動作)、VLD差錯時的動作、動態(tài)補償差錯時的動作并分別示于圖14A、B、15A、B。圖16A、B。
<5.2.1正常時的動作>
圖14A、圖14B是根據(jù)圖7詳細地表示出譯碼處理部1002各部的譯碼動作的圖。
如該圖所示,處理器7,按照OS的控制,反復(fù)交替地進行由①標題分析結(jié)束信號和④VLD結(jié)束信號引起的圖象線程的標題分析和聲音線程的聲音譯碼。
詳細地說,處理器7,在進行1個宏數(shù)據(jù)塊的標題分析并將分析結(jié)果通知代碼變換部9、象素運算部10、象素讀寫部11后,指示代碼變換部9開始進行宏數(shù)據(jù)塊的VLD。然后,處理器7計算運動矢量并將計算結(jié)果輸出到象素讀寫部11。在該輸出之后,處理器7輸出①標題分析結(jié)束信號。
當(dāng)OS檢測到①標題分析結(jié)束信號時,通過圖13的選擇處理使聲音線程變成執(zhí)行狀態(tài)。在聲音線程變成執(zhí)行狀態(tài)后,處理器7開始聲音譯碼處理。譯碼后的聲音數(shù)據(jù)暫時保持在內(nèi)部存儲器8內(nèi),然后通過存儲控制器6向外部存儲器3進行DMA傳送。
在聲音譯碼處理中,當(dāng)OS檢測到④VLD結(jié)束信號時,使圖象線程變成可執(zhí)行狀態(tài),所以,通過圖13的選擇處理使聲音線程變?yōu)榭蓤?zhí)行狀態(tài),從而使圖象線程變成執(zhí)行狀態(tài)。因此,處理器7開始進行下一個宏數(shù)據(jù)塊的標題分析。
另外,代碼變換部9,從處理器7接受宏數(shù)據(jù)塊的VLD開始指示,執(zhí)行宏數(shù)據(jù)塊本體的VLD,并按宏數(shù)據(jù)塊內(nèi)的每個數(shù)據(jù)塊存儲在緩沖器200內(nèi)。代碼變換器9,在結(jié)束VLD時向處理器7輸出④VLD結(jié)束信號。
象素運算部10,與代碼變換部9并行操作,以數(shù)據(jù)塊為單位對存儲在緩沖器200內(nèi)的數(shù)據(jù)塊數(shù)據(jù)進行IQ、IDCT,并將其處理結(jié)果存儲在緩沖器201內(nèi)。
象素讀寫部11,與象素運算部10并行操作,根據(jù)緩沖器201的數(shù)據(jù)塊數(shù)據(jù)及由處理器7的標題分析通知的運動矢量,如圖14A、圖14B所示從外部存儲器3的參照幀截出矩形區(qū)域,并進行數(shù)據(jù)塊合成。數(shù)據(jù)塊合成結(jié)果,通過存儲控制器6存儲在外部存儲器3內(nèi)。
以上說明的是不存在跳躍宏數(shù)據(jù)塊時的動作,但在跳躍宏數(shù)據(jù)塊的情況下,代碼變換部9和象素運算部10不動作,只象素讀寫部11進行操作。當(dāng)存在著跳躍宏數(shù)據(jù)決時,因與參照幀的矩形區(qū)域的圖象相同,所以由象素讀寫部11將該圖象作為譯碼圖象復(fù)制在外部存儲器3內(nèi)。
在跳躍宏數(shù)據(jù)塊的情況下,代碼變換部9按如下方式生成向處理器7輸出的④VLD結(jié)束信號。首先,代碼變換部9求取以下3個信號的邏輯積,即表示處理器器7已將動態(tài)補償動作開始控制信號發(fā)送到象素讀寫部11的信號、表示象素讀寫部11可進行動態(tài)補償動作的信號、及表示存在著跳躍宏數(shù)據(jù)塊的信號。然后,代碼變換部9求取該邏輯積與附加在宏數(shù)據(jù)塊末尾的宏數(shù)據(jù)塊結(jié)束信號的邏輯和,并將該邏輯和的結(jié)果作為④VLD結(jié)束信號輸入到處理器。
<5.2.2 VLD差錯時的動作>
圖15A、圖15B是表示代碼變換部9中發(fā)生⑨VLD差錯時的動作的圖。
在該圖中,當(dāng)OS在處理器7的標題分析處理過程中檢測到從代碼變換部9輸出的⑨VLD差錯信號時,執(zhí)行差錯處理,并向象素運算部10和象素讀寫部11輸出復(fù)位信號。因此,在象素運算部10和象素讀寫部11中將與譯碼中的宏數(shù)據(jù)塊有關(guān)的數(shù)據(jù)廢棄。在差錯處理后,OS使圖象線程變?yōu)榭蓤?zhí)行狀態(tài)。由此,供助圖13的選擇處理圖象線程變成執(zhí)行狀態(tài),并開始進行下一個線程的宏數(shù)據(jù)塊的標題分析。
在這之后的動作,與圖14A、圖14B相同。
<5.2.3動態(tài)補償差錯時的動作>
圖16A、圖16B是表示象素讀寫部11中發(fā)生⑩動態(tài)補償差錯時的動作的圖。
在該圖中,當(dāng)OS在處理器7的聲音譯碼處理過程中檢測到從象素讀寫部11輸出的⑩動態(tài)補償差錯信號時,執(zhí)行差錯處理,并向代碼變換部9、象素運算部10、象素讀寫部11輸出復(fù)位信號。因此,在代碼變換部9、象素運算部10、象素讀寫部11中將與譯碼中的宏數(shù)據(jù)塊有關(guān)的數(shù)據(jù)廢棄。在差錯處理后,OS使圖象線程變?yōu)榭蓤?zhí)行狀態(tài),并由此通過圖13的選擇處理使圖象線程變?yōu)閳?zhí)行狀態(tài),從而開始進行下一個線程的宏數(shù)據(jù)塊的標題分析。
在這之后的動作,與圖14A、圖14B相同。
按照以上的結(jié)構(gòu),本發(fā)明的圖象聲音處理裝置,在譯碼處理部1002中由逐次處理部1003和定型處理部1004分擔(dān)對壓縮圖象數(shù)據(jù)的譯碼處理。因此,與現(xiàn)有的由一個處理器進行壓縮圖象數(shù)據(jù)的全譯碼的情況相比,可減輕在逐次處理部1003和定型處理部1004的處理上所需花費的負荷,并能提高處理效率。此外,逐次處理部,通過優(yōu)先執(zhí)行每個宏數(shù)據(jù)塊的標題分析處理,可使基于標題分析進行的定型處理部的譯碼處理無滯后地進行,因而能從時間上提高處理效率。另外,聲音譯碼處理,由于與壓縮圖象數(shù)據(jù)的譯碼相比處理量小,所以可以在逐次處理部執(zhí)行標題分析處理的間歇時間進行,因而能進一步地從時間上提高處理效率。這樣,由于處理效率提高,所以,譯碼處理部1002,即使不使用高速動作的時鐘,也能實現(xiàn)MPEG數(shù)據(jù)流的全譯碼。具體地說,當(dāng)將本圖象聲音處理裝置在1個芯片上LSI化時,用100MHz以下的工作時鐘(實際為54MHz)就可以進行上述全譯碼。
另外,本發(fā)明也可以由安裝了通用CPU和DSP(數(shù)字信號處理器)的計算機實現(xiàn)。在這種情況下,計算機的主存儲裝置,預(yù)先存儲用于對壓縮圖象數(shù)據(jù)所包含的每個宏數(shù)據(jù)塊進行標題分析的標題分析用程序、用于對壓縮聲音數(shù)據(jù)進行譯碼的聲音譯碼用程序、用于在使標題分析處理優(yōu)先的前提下對標題分析程序和聲音譯碼程序進行切換的OS用程序、及用于進行除壓縮圖象數(shù)據(jù)標題分析以外的進行壓縮圖象數(shù)據(jù)的譯碼的定型處理用程序。并且,通用CPU執(zhí)行標題分析用程序、聲音譯碼用程序、OS用程序,DSP執(zhí)行定型處理用程序。就是說,CPU執(zhí)行實施形態(tài)的逐次處理部1003進行的逐次處理,DSP執(zhí)行定型處理部1004的定型處理。按照這種結(jié)構(gòu),通用CPU,無滯后地優(yōu)先進行標題分析處理,而在不進行標題分析處理的空閑時間進行聲音譯碼處理,所以能提高通用CPU的處理能力。此外,由于CPU無滯后地進行標題分析,就可以使DSP在接收到標題分析處理的處理結(jié)果數(shù)據(jù)后無滯后地進行定型處理。
雖然已參照附圖通過各例對本發(fā)明進行了全面的說明,但應(yīng)注意到,本技術(shù)領(lǐng)域的熟練技術(shù)人員顯然可以進行各種變更和修改。所以,除非這類變更和修改脫離本發(fā)明的的范圍,否則均應(yīng)視為包括在本發(fā)明的范圍內(nèi)。
權(quán)利要求
1.一種圖象聲音處理裝置,通過對包含壓縮聲音數(shù)據(jù)和壓縮圖象數(shù)據(jù)的數(shù)據(jù)流進行譯碼,將圖象數(shù)據(jù)和聲音數(shù)據(jù)復(fù)原,該圖象聲音處理裝置的特征在于,備有逐次處理部,執(zhí)行對數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)所含規(guī)定數(shù)據(jù)塊進行標題分析的標題分析處理及對數(shù)據(jù)流中的壓縮聲音數(shù)據(jù)進行譯碼的聲音譯碼處理,并使標題分析處理比聲音譯碼處理優(yōu)先執(zhí)行;及定型處理部,與上述逐次處理部并行操作,執(zhí)行除數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)標題分析處理以外的壓縮圖象數(shù)據(jù)的譯碼處理。
2.根據(jù)權(quán)利要求1所述的圖象聲音處理裝置,其特征在于上述逐次處理部,具有處理器及存儲用于由處理器執(zhí)行的標題分析用線程、聲音譯碼用線程和線程切換控制用線程的存儲器,并備有標題分析部,通過由處理器從存儲器讀出并執(zhí)行標題分析用線程,進行標題分析處理;聲音譯碼部,通過由處理器從存儲器讀出并執(zhí)行聲音譯碼用線程,進行聲音譯碼處理;及控制部,通過由處理器從存儲器讀出并執(zhí)行線程切換控制用線程,對分配給處理器的線程進行切換控制,以便使標題分析處理優(yōu)先進行。
3.根據(jù)權(quán)利要求2所述的圖象聲音處理裝置,其特征在于控制部,備有中斷檢測部,用于檢測作為線程切換主要原因的中斷的發(fā)生及其類別;狀態(tài)管理部,用于對根據(jù)中斷的類別而轉(zhuǎn)移的標題分析部和聲音譯碼部的狀態(tài)是執(zhí)行狀態(tài)、或是等待狀態(tài)、或是可執(zhí)行狀態(tài)進行管理;及切換部,當(dāng)標題分析部從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)時,將分配給處理器的線程從其他線程切換為標題分析用線程。
4.根據(jù)權(quán)利要求3所述的圖象聲音處理裝置,其特征在于狀態(tài)管理部,備有狀態(tài)表,用于存儲標題分析處理和聲音譯碼處理各自的狀態(tài);及狀態(tài)更新部,根據(jù)中斷的類別對狀態(tài)表進行更新。
5.根據(jù)權(quán)利要求4所述的圖象聲音處理裝置,其特征在于上述規(guī)定數(shù)據(jù)塊為數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)所包含的宏數(shù)據(jù)塊,在結(jié)構(gòu)上,中斷檢測部,檢測當(dāng)標題分析部的宏數(shù)據(jù)塊標題分析結(jié)束時由標題分析部輸出的第1中斷、及當(dāng)宏數(shù)據(jù)塊的譯碼結(jié)束時由定型處理部輸出的第2中斷,狀態(tài)更新部,當(dāng)由中斷檢測部檢測到第1中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài),當(dāng)由中斷檢測部檢測到第2中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài)。
6.根據(jù)權(quán)利要求3所述的圖象聲音處理裝置,其特征在于在標題分析部為等待狀態(tài)的情況下,當(dāng)聲音譯碼部從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)時,切換部在結(jié)構(gòu)上可以將聲音譯碼用線程分配給處理器。
7.根據(jù)權(quán)利要求6所述的圖象聲音處理裝置,其特征在于狀態(tài)管理部,備有狀態(tài)表,用于存儲標題分析處理和聲音譯碼處理各自的狀態(tài);及狀態(tài)更新部,根據(jù)中斷的類別對狀態(tài)表進行更新。
8.根據(jù)權(quán)利要求7所述的圖象聲音處理裝置,其特征在于上述規(guī)定數(shù)據(jù)塊為數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)所包含的宏數(shù)據(jù)塊,在結(jié)構(gòu)上,中斷檢測部,檢測當(dāng)標題分析部的宏數(shù)據(jù)塊標題分析結(jié)束時由標題分析部輸出的第1中斷、及當(dāng)宏數(shù)據(jù)塊的譯碼結(jié)束時由定型處理部輸出的第2中斷,狀態(tài)更新部,當(dāng)由中斷檢測部檢測到第1中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài),當(dāng)由中斷檢測部檢測到第2中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài)。
9.根據(jù)權(quán)利要求2所述的圖象聲音處理裝置,其特征在于上述定型處理部,備有代碼變換部,對數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)進行可變長度譯碼;運算部,通過進行規(guī)定的運算,對由可變長度譯碼得到的圖象數(shù)據(jù)塊進行反量子化和反離散余弦變換;及合成部,通過將反離散余弦變換后的圖象數(shù)據(jù)塊與譯碼完成的數(shù)據(jù)塊合成,進行動態(tài)補償處理,從而將圖象數(shù)據(jù)復(fù)原;上述標題分析部,備有取得部,用于取得請求代碼變換部進行可變長度譯碼的標題信息;分析部,對所取得的標題信息進行分析,并接著進行運動矢量的計算;通知部,將作為分析結(jié)果得到的參數(shù)通知定型處理部;及開始指示部,在分析部的分析過程的規(guī)定時刻指示代碼變換部開始對數(shù)據(jù)塊進行可變長度譯碼。
10.根據(jù)權(quán)利要求9所述的圖象聲音處理裝置,其特征在于在結(jié)構(gòu)上,上述開始指示部在分析部計算運動矢量之前指示可變長度譯碼開始,上述通知部將計算出的運動矢量通知合成部。
11.根據(jù)權(quán)利要求10所述的圖象聲音處理裝置,其特征在于控制部,備有中斷檢測部,用于檢測作為線程切換主要原因的中斷的發(fā)生及其類別;差錯處理部,當(dāng)由中斷檢測部檢測到差錯中斷時,將定型處理部的與該規(guī)定數(shù)據(jù)塊有關(guān)的數(shù)據(jù)廢棄,并使標題分析部變成可執(zhí)行狀態(tài);狀態(tài)管理部,用于對根據(jù)中斷的類別而轉(zhuǎn)移的標題分析部和聲音譯碼部的狀態(tài)是執(zhí)行狀態(tài)、或是等待狀態(tài)、或是可執(zhí)行狀態(tài)進行管理;及切換部,當(dāng)標題分析部轉(zhuǎn)移到可執(zhí)行狀態(tài)時,將標題分析用線程分配給處理器。
12.根據(jù)權(quán)利要求11所述的圖象聲音處理裝置,其特征在于狀態(tài)管理部,備有狀態(tài)表,用于存儲標題分析處理和聲音譯碼處理各自的狀態(tài);及狀態(tài)更新部,根據(jù)中斷的類別對狀態(tài)表進行更新。
13.根據(jù)權(quán)利要求12所述的圖象聲音處理裝置,其特征在于在結(jié)構(gòu)上,中斷檢測部,檢測當(dāng)標題分析部的宏數(shù)據(jù)塊標題分析結(jié)束時由標題分析部輸出的第1中斷、當(dāng)宏數(shù)據(jù)塊的譯碼結(jié)束時由定型處理部輸出的第2中斷、在可變長度譯碼中發(fā)生差錯時由代碼變換部輸出的第3中斷、及在動態(tài)補償處理中發(fā)生差錯時由合成部輸出的第4中斷,狀態(tài)更新部,當(dāng)由中斷檢測部檢測到第1中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài),當(dāng)由中斷檢測部檢測到第2中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài),當(dāng)由中斷檢測部檢測到第3和第4中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài),差錯處理部,當(dāng)由中斷檢測部檢測到第3和第4中斷時將定型處理部的與該規(guī)定數(shù)據(jù)塊有關(guān)的數(shù)據(jù)廢棄。
14.根據(jù)權(quán)利要求10所述的圖象聲音處理裝置,其特征在于控制部,備有中斷檢測部,用于檢測作為線程切換主要原因的中斷的發(fā)生及其類別;差錯處理部,當(dāng)由中斷檢測部檢測到差錯中斷時,將定型處理部的與該規(guī)定數(shù)據(jù)塊有關(guān)的數(shù)據(jù)廢棄,并使標題分析部變成可執(zhí)行狀態(tài);狀態(tài)管理部,用于對根據(jù)中斷的類別而轉(zhuǎn)移的標題分析部和聲音譯碼部的狀態(tài)是執(zhí)行狀態(tài)、或是等待狀態(tài)、或是可執(zhí)行狀態(tài)進行管理;及切換部,當(dāng)標題分析部轉(zhuǎn)移到可執(zhí)行狀態(tài)時,將標題分析用線程分配給處理器。
15.根據(jù)權(quán)利要求14所述的圖象聲音處理裝置,其特征在于狀態(tài)管理部,備有狀態(tài)表,用于存儲標題分析處理和聲音譯碼處理各自的狀態(tài);及狀態(tài)更新部,根據(jù)中斷的類別對狀態(tài)表進行更新。
16.根據(jù)權(quán)利要求15所述的圖象聲音處理裝置,其特征在于在結(jié)構(gòu)上,中斷檢測部,檢測當(dāng)標題分析部的宏數(shù)據(jù)塊標題分析結(jié)束時由標題分析部輸出的第1中斷、當(dāng)宏數(shù)據(jù)塊的譯碼結(jié)束時由定型處理部輸出的第2中斷、在可變長度譯碼中發(fā)生差錯時由代碼變換部輸出的第3中斷、及在動態(tài)補償處理中發(fā)生差錯時由合成部輸出的第4中斷,狀態(tài)更新部,當(dāng)由中斷檢測部檢測到第1中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài),當(dāng)由中斷檢測部檢測到第2中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài),當(dāng)由中斷檢測部檢測到第3和第4中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài),差錯處理部,當(dāng)由中斷檢測部檢測到第3和第4中斷時將定型處理部的與該規(guī)定數(shù)據(jù)塊有關(guān)的數(shù)據(jù)廢棄。
17.根據(jù)權(quán)利要求9所述的圖象聲音處理裝置,其特征在于控制部,備有中斷檢測部,用于檢測作為線程切換主要原因的中斷的發(fā)生及其類別;狀態(tài)管理部,用于對根據(jù)中斷的類別而轉(zhuǎn)移的標題分析部和聲音譯碼部的狀態(tài)是執(zhí)行狀態(tài)、或是等待狀態(tài)、或是可執(zhí)行狀態(tài)進行管理;及切換部,當(dāng)標題分析部從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)時,將分配給處理器的線程從其他線程切換為標題分析用線程。
18.根據(jù)權(quán)利要求17所述的圖象聲音處理裝置,其特征在于狀態(tài)管理部,備有狀態(tài)表,用于存儲標題分析處理和聲音譯碼處理各自的狀態(tài);及狀態(tài)更新部,根據(jù)中斷的類別對狀態(tài)表進行更新。
19.根據(jù)權(quán)利要求18所述的圖象聲音處理裝置,其特征在于在結(jié)構(gòu)上,中斷檢測部,檢測當(dāng)規(guī)定數(shù)據(jù)塊的標題分析結(jié)束時由標題分析部輸出的第1中斷、當(dāng)規(guī)定數(shù)據(jù)塊的定型處理結(jié)束時由定型處理部輸出的第2中斷、在1幀的標題分析結(jié)束時由標題分析部輸出的第3中斷、當(dāng)在標題取得部發(fā)出了請求的情況下不對標題信息進行可變長度譯碼時由代碼變換部輸出的第4中斷、從圖象處理裝置外部輸入的垂直同步信號即第5中斷、在第4中斷后當(dāng)對由標題取得部請求的標題信息進行可變長度譯碼時由代碼變換部輸出的第6中斷、當(dāng)在聲音譯碼部對規(guī)定的存儲器請求進行譯碼的數(shù)據(jù)的情況下在該存儲器內(nèi)沒有該數(shù)據(jù)時由存儲器輸出的第7中斷、及在第7中斷后當(dāng)在規(guī)定的存儲器內(nèi)輸入了由聲音譯碼部請求的數(shù)據(jù)時由存儲器輸出的第8中斷,狀態(tài)更新部,當(dāng)由中斷檢測部檢測到第1中斷、第3中斷、第4中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為等待狀態(tài),當(dāng)檢測到第2中斷、第5中斷、第6中斷時將狀態(tài)表中的標題分析部的狀態(tài)更新為可執(zhí)行狀態(tài),當(dāng)檢測到第7中斷時將狀態(tài)表中的聲音譯碼部的狀態(tài)更新為等待狀態(tài),當(dāng)檢測到第8中斷時將狀態(tài)表中的聲音譯碼部的狀態(tài)更新為可執(zhí)行狀態(tài)。
20.一種程序記錄媒體,用于記錄通過對包含壓縮聲音數(shù)據(jù)和壓縮圖象數(shù)據(jù)的數(shù)據(jù)流進行譯碼而將圖象數(shù)據(jù)和聲音數(shù)據(jù)復(fù)原的程序,且可由計算機進行讀取,該程序記錄媒體,包括標題分析處理,對數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)所包含的規(guī)定數(shù)據(jù)塊進行標題分析;聲音譯碼處理,對數(shù)據(jù)流中的壓縮聲音數(shù)據(jù)進行譯碼;控制處理,對標題分析處理和聲音譯碼處理進行切換,使標題分析處理優(yōu)先執(zhí)行;及定型處理,執(zhí)行除數(shù)據(jù)流中的壓縮圖象數(shù)據(jù)標題分析處理以外的壓縮圖象數(shù)據(jù)的譯碼。
21.根據(jù)權(quán)利要求20所述的程序記錄媒體,其特征在于上述計算機,是具有第1處理器和第2處理器的圖象聲音處理裝置,其特征在于由第1處理器執(zhí)行標題分析處理、聲音譯碼處理、控制處理,由第2處理器執(zhí)行定型處理。
22.根據(jù)權(quán)利要求21所述的程序記錄媒體,其特征在于上述控制處理,包括中斷檢測處理,檢測作為標題分析處理和聲音譯碼處理切換的主要原因的中斷的發(fā)生及其類別;狀態(tài)管理,對根據(jù)中斷的類別而轉(zhuǎn)移的標題分析處理和聲音譯碼處理的狀態(tài)是執(zhí)行狀態(tài)、或是等待狀態(tài)、或是可執(zhí)行狀態(tài)進行管理;及切換處理,當(dāng)標題分析處理從等待狀態(tài)轉(zhuǎn)移到可執(zhí)行狀態(tài)時,將所執(zhí)行的處理從聲音譯碼處理切換為標題分析處理。
全文摘要
本發(fā)明的圖象聲音處理裝置,備有:輸入輸出處理部,進行由于外部原因而非同步地發(fā)生的輸入輸出處理;及譯碼處理部,進行以對存儲在存儲器內(nèi)的數(shù)據(jù)流的譯碼為主的譯碼處理。輸入輸出處理包括:輸入上述數(shù)據(jù)流、將其存儲在存儲器內(nèi)、并供給譯碼處理部。譯碼處理部,由逐次處理部及定型處理部構(gòu)成,尤其是,在逐次處理部中使標題分析處理比聲音譯碼處理優(yōu)先執(zhí)行。
文檔編號G06T9/00GK1230081SQ98125649
公開日1999年9月29日 申請日期1998年11月27日 優(yōu)先權(quán)日1997年11月28日
發(fā)明者藤井茂樹, 中谷信太郎 申請人:松下電器產(chǎn)業(yè)株式會社