專利名稱:編碼裝置及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種使用游程長(zhǎng)度編碼和可變長(zhǎng)度編碼兩種方式的編碼裝置及方法。特別涉及一種在壓縮圖像數(shù)據(jù)的圖像壓縮技術(shù)中使用的編碼裝置及方法。
背景技術(shù):
使用游程長(zhǎng)度編碼處理和可變長(zhǎng)度編碼處理的編碼方法應(yīng)用于圖像數(shù)據(jù)的普通壓縮技術(shù)即JPEG(Joint Photographic ExpertsGroup)和MPEG(Moving Picture Experts Group)中,伴隨著數(shù)字照相機(jī)和數(shù)字?jǐn)z像機(jī)的普及、通信技術(shù)的發(fā)達(dá)等,能夠用少量的信息量進(jìn)行數(shù)據(jù)傳送的技術(shù)開(kāi)始廣泛普及。
圖30表示以往的圖像壓縮裝置的代表結(jié)構(gòu)圖。在圖30中,DCT(Discrete Cosine Transform)單元801對(duì)預(yù)先分割成1塊8×8個(gè)數(shù)據(jù)而依序輸入的圖像數(shù)據(jù)進(jìn)行頻率變換,生成DCT系數(shù)。
一般來(lái)說(shuō),自然圖像中的顏色變化大部分是很平滑的。因此,在通過(guò)進(jìn)行頻率變換而生成的圖31所示的DCT系數(shù)分布中,在低頻區(qū)域f集中數(shù)值大的DCT系數(shù),在高頻區(qū)域g集中數(shù)值小的DCT系數(shù)。
量化單元802對(duì)所生成的DCT系數(shù),通過(guò)用預(yù)先設(shè)定的量化值除以DCT系數(shù)來(lái)生成量化系數(shù)。通過(guò)進(jìn)行這種處理,可以使量化系數(shù)集中,以使不影響畫(huà)質(zhì)的高頻區(qū)域g的數(shù)值為0。
在編碼單元803,根據(jù)數(shù)值為0的數(shù)據(jù)個(gè)數(shù)和量化系數(shù)值的組合出現(xiàn)率來(lái)分配長(zhǎng)度不同的代碼字,從而縮小數(shù)據(jù)整體的容量。
圖32是以往的圖像壓縮裝置的編碼單元803的結(jié)構(gòu)圖。在圖32中,從輸入單元804輸入的1塊8×8個(gè)數(shù)據(jù)的相關(guān)量化系數(shù)是通過(guò)寫(xiě)入控制單元806的控制被寫(xiě)入到數(shù)據(jù)緩沖器805中,通過(guò)讀出控制單元807從數(shù)據(jù)緩沖器805中進(jìn)行圖4所示的Z形掃描而順序讀出的。
在游程長(zhǎng)度編碼單元808中,在比較判定單元811判定由讀出控制單元807順序讀出的量化系數(shù)是否為0,當(dāng)量化系數(shù)是0時(shí),把該個(gè)數(shù)累積在游程長(zhǎng)度計(jì)數(shù)器812中,當(dāng)不是0時(shí),把游程長(zhǎng)度計(jì)數(shù)器812初始化為‘0’。然后輸出LEVEL信號(hào)和RUN信號(hào),LEVEL信號(hào)表示量化系數(shù)不是“0”時(shí)讀出的量化系數(shù)值,RUN信號(hào)表示在當(dāng)前時(shí)間量化系數(shù)是0時(shí)的累積個(gè)數(shù)。
可變長(zhǎng)度編碼單元809使用來(lái)自游程長(zhǎng)度編碼單元808的輸出信號(hào)即RUN信號(hào)和LEVEL信號(hào),進(jìn)行可變長(zhǎng)度編碼,輸出編碼數(shù)據(jù)。
但是,上述結(jié)構(gòu)使用LEVEL信號(hào)和RUN信號(hào)進(jìn)行編碼處理。因此,在連續(xù)讀出數(shù)值是“0”的量化系數(shù),并在游程長(zhǎng)度計(jì)數(shù)器812累積該連續(xù)個(gè)數(shù)期間,不能在可變長(zhǎng)度編碼單元809進(jìn)行編碼處理。所以,在編碼處理中產(chǎn)生等待時(shí)間,具有整體上不能實(shí)現(xiàn)編碼處理的快速化的問(wèn)題。
作為該問(wèn)題的一個(gè)解決方案,有特開(kāi)2000-50271號(hào)公報(bào)公開(kāi)的圖像壓縮裝置。
如圖33所示,特開(kāi)2000-50271號(hào)公報(bào)中記述的DCT/量化單元21輸出被量化后的DCT系數(shù)CF1。另外,游程長(zhǎng)度計(jì)數(shù)器23在DCT系數(shù)CF1是‘0’時(shí),把零旗標(biāo)ZF設(shè)為‘1’,在DCT系數(shù)CF1不是‘0’時(shí),把零旗標(biāo)ZF設(shè)為‘0’。
游程長(zhǎng)度RL1表示DCT系數(shù)CF1中數(shù)值連續(xù)是‘0’的個(gè)數(shù)。通過(guò)求出游程長(zhǎng)度RL1,進(jìn)行游程長(zhǎng)度編碼。即,游程長(zhǎng)度計(jì)數(shù)器23對(duì)應(yīng)用于圖32中的求出游程長(zhǎng)度的游程長(zhǎng)度編碼單元808。
緩沖控制器24根據(jù)零旗標(biāo)ZF、游程長(zhǎng)度RL1和DCT系數(shù)CF1,把寫(xiě)入數(shù)據(jù)WD寫(xiě)入緩沖器22的地址WA中。
在DCT系數(shù)CF1不是‘0’時(shí),寫(xiě)入數(shù)據(jù)WD是由上位1比特和CF1構(gòu)成,上位1比特為零旗標(biāo)ZF=‘0’。
在DCT系數(shù)CF1是‘0’時(shí),寫(xiě)入數(shù)據(jù)WD是由上位1比特和游程長(zhǎng)度RL1構(gòu)成,上位1比特為零旗標(biāo)ZF=‘1’。
在零旗標(biāo)ZF連續(xù)是‘1’時(shí),即DCT系數(shù)CF1連續(xù)是‘0’時(shí),可以通過(guò)不改變地址WA的方法而最終將由零旗標(biāo)ZF=‘1’和游程長(zhǎng)度RL1構(gòu)成的寫(xiě)入數(shù)據(jù)WD僅存儲(chǔ)在一個(gè)地址中。
緩沖控制器24從緩沖器22的地址RA讀出數(shù)據(jù)RD,把游程長(zhǎng)度RL2和DCT系數(shù)CF2作為一對(duì)數(shù)據(jù)供給可變長(zhǎng)度編碼單元25。
但是,特開(kāi)2000-50271號(hào)公報(bào)公開(kāi)的圖像壓縮裝置,雖然解決了在連續(xù)讀出數(shù)值是‘0’的量化系數(shù)并在游程長(zhǎng)度計(jì)數(shù)器23累積該連續(xù)的個(gè)數(shù)期間編碼處理不能連續(xù)進(jìn)行的問(wèn)題,但是仍保留向游程長(zhǎng)度RL1的緩沖器的寫(xiě)入處理及從游程長(zhǎng)度RL2的緩沖器的讀出處理,在將數(shù)值連續(xù)是‘0’的量化系數(shù)的個(gè)數(shù)寫(xiě)入緩沖器、及由緩沖器讀出的處理結(jié)束之前,在可變長(zhǎng)度編碼單元25不能進(jìn)行編碼處理。即,盡管時(shí)間變短,但由于依然發(fā)生與以往相同的等待時(shí)間,所以仍遺留有不能整體實(shí)現(xiàn)編碼處理的快速化的問(wèn)題。
發(fā)明內(nèi)容
為了解決上述問(wèn)題,本發(fā)明的目的是,提供一種通過(guò)進(jìn)一步減少進(jìn)行可變長(zhǎng)度編碼處理的等待時(shí)間來(lái)實(shí)現(xiàn)編碼處理的更快速化的編碼裝置及方法。
為了達(dá)到上述目的,本發(fā)明涉及的編碼裝置,是一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼裝置,它包括順序輸入1塊m×n個(gè)數(shù)據(jù)的輸入單元;判定由所述輸入單元輸入的各個(gè)數(shù)據(jù)的值是否是0的比較判定單元;存儲(chǔ)與所述比較判定單元的判定結(jié)果相關(guān)的判定結(jié)果信息的信息寄存器;存儲(chǔ)用所述輸入單元輸入的數(shù)據(jù)的數(shù)據(jù)緩沖器;讀出控制單元,根據(jù)存儲(chǔ)在所述信息寄存器的所述判定結(jié)果信息,控制對(duì)所述數(shù)據(jù)緩沖器進(jìn)行的所述數(shù)據(jù)的讀出,以便僅讀出所述輸入數(shù)據(jù)的值是非0的數(shù)據(jù);游程長(zhǎng)度編碼單元,使用從所述數(shù)據(jù)緩沖器讀出的數(shù)據(jù)和存儲(chǔ)在所述信息寄存器的所述判定結(jié)果信息,進(jìn)行游程長(zhǎng)度編碼;和可變長(zhǎng)度編碼單元,使用在所述游程長(zhǎng)度編碼單元求出的數(shù)值連續(xù)是0的數(shù)據(jù)的個(gè)數(shù)和所述輸入數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼。
采用這種結(jié)構(gòu),根據(jù)存儲(chǔ)在信息寄存器的判定結(jié)果信息,可以控制對(duì)數(shù)據(jù)緩沖器中數(shù)值是0的數(shù)據(jù)的讀出。因此,可以縮短在進(jìn)行可變長(zhǎng)度編碼處理前的等待時(shí)間,縮短程度是讀出數(shù)值是0的數(shù)據(jù)所需要的時(shí)間,可以從整體上使編碼處理快速化。
另外,本發(fā)明涉及的編碼裝置優(yōu)選,在所述信息寄存器中,相對(duì)所述塊內(nèi)的數(shù)據(jù)配置,所述判定結(jié)果信息是按Z形掃描順序存儲(chǔ)的。
本發(fā)明涉及的編碼裝置優(yōu)選,還包括控制對(duì)數(shù)據(jù)緩沖器的所述數(shù)據(jù)寫(xiě)入的寫(xiě)入控制單元,僅在所述比較判定單元判定所述數(shù)據(jù)的值不是0時(shí),所述寫(xiě)入控制單元允許對(duì)所述數(shù)據(jù)緩沖器的寫(xiě)入??梢詼p少寫(xiě)入轉(zhuǎn)送,提高數(shù)據(jù)緩沖器的利用效率。
本發(fā)明涉及的編碼裝置優(yōu)選,所述數(shù)據(jù)緩沖器具有可以在一個(gè)地址存儲(chǔ)L(L為2以上的自然數(shù))個(gè)輸入數(shù)據(jù)的結(jié)構(gòu),還具有選擇單元,根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,從所述數(shù)據(jù)緩沖器讀出的L個(gè)輸入數(shù)據(jù)中,選擇應(yīng)該把哪個(gè)數(shù)據(jù)輸出到所述游程長(zhǎng)度編碼單元。可以同時(shí)判斷信息寄存器的多個(gè)比特,所以對(duì)連續(xù)的多個(gè)比特的數(shù)據(jù),可以同時(shí)判斷數(shù)值是否是0。這樣,對(duì)數(shù)據(jù)緩沖器的訪問(wèn)時(shí)間變短,所以能夠縮短在進(jìn)行長(zhǎng)度編碼處理前的等待時(shí)間。結(jié)果,能夠從整體上使編碼處理快速化。
本發(fā)明涉及的編碼裝置優(yōu)選,信息寄存器具有可以存儲(chǔ)m×n比特的判定結(jié)果信息的結(jié)構(gòu),在所述信息寄存器中,僅在對(duì)應(yīng)L個(gè)輸入數(shù)據(jù)的判定結(jié)果信息中至少一個(gè)比特表示輸入數(shù)據(jù)不是0時(shí),所述讀出控制單元從所述數(shù)據(jù)緩沖器讀出該L個(gè)輸入數(shù)據(jù),6選擇單元根據(jù)在所述信息寄存器的比特中對(duì)應(yīng)L個(gè)輸入數(shù)據(jù)的L比特的判定結(jié)果信息,選擇從所述數(shù)據(jù)緩沖器讀出的L個(gè)輸入數(shù)據(jù)。
本發(fā)明涉及的編碼裝置優(yōu)選,信息寄存器具有可以按分別不同的排列順序、以m×n比特存儲(chǔ)所述判定結(jié)果信息的結(jié)構(gòu),并且使用由多個(gè)所述信息寄存器構(gòu)成信息寄存器組,還具有輸入用于表示由所述輸入單元輸入的數(shù)據(jù)的塊特征的特征信息的第二輸入單元,和根據(jù)從所述第二輸入單元輸入的所述特征信息,從所述信息寄存器組選擇任一信息寄存器的寄存器選擇單元。對(duì)MPEG-4等有多個(gè)掃描的可變長(zhǎng)度編碼,也能實(shí)現(xiàn)編碼處理的快速化。
本發(fā)明涉及的編碼裝置優(yōu)選,具有輸出切換單元,該輸出切換單元具有多個(gè)把信息寄存器、所述數(shù)據(jù)緩沖器、所述寫(xiě)入控制單元和所述讀出控制單元作為1個(gè)系統(tǒng)的處理系統(tǒng),對(duì)從隸屬于哪個(gè)處理系統(tǒng)的數(shù)據(jù)緩沖器向所述掃描長(zhǎng)度編碼單元進(jìn)行輸出做切換控制,同時(shí)進(jìn)行向所述處理系統(tǒng)之一的數(shù)據(jù)緩沖器的寫(xiě)入處理和向其他處理系統(tǒng)的數(shù)據(jù)緩沖器的讀出處理。通過(guò)同時(shí)進(jìn)行數(shù)據(jù)的寫(xiě)入處理和讀出處理,不用等待從數(shù)據(jù)緩沖器讀出的時(shí)間就能進(jìn)行數(shù)據(jù)轉(zhuǎn)送。這樣,可以縮短可變長(zhǎng)度編碼處理的等待時(shí)間,從整體上使編碼處理快速化。
本發(fā)明涉及的編碼裝置優(yōu)選,還包括代碼字?jǐn)?shù)累積單元,根據(jù)信息寄存器的判定結(jié)果信息,累積不是0的輸入數(shù)據(jù)的個(gè)數(shù)。10還包括區(qū)域設(shè)定單元,設(shè)定應(yīng)成為代碼字?jǐn)?shù)累積單元的累積處理對(duì)象的1塊內(nèi)的區(qū)域。進(jìn)行編碼數(shù)據(jù)的速率控制時(shí),不用等待可變長(zhǎng)度編碼處理的結(jié)束,即可根據(jù)外部指示再次進(jìn)行編碼處理。
本發(fā)明涉及的編碼裝置優(yōu)選,還具有設(shè)定代碼字?jǐn)?shù)累積單元的累積值的界限值的界限值設(shè)定單元,和比較所述累積值和所述界限值的比較單元。這是因?yàn)榭梢栽诳勺冮L(zhǎng)度編碼處理的過(guò)程中比較判斷累積值和界限值,在達(dá)到該界限值以上時(shí),可以不等待可變長(zhǎng)度編碼處理結(jié)束就進(jìn)行再編碼,能夠縮短可變長(zhǎng)度編碼處理的等待時(shí)間。
本發(fā)明涉及的編碼裝置優(yōu)選,還具有最終數(shù)據(jù)判定單元,根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,在從數(shù)據(jù)緩沖器讀出的輸入數(shù)據(jù)被判定為不是數(shù)據(jù)塊內(nèi)最后的非0的輸入數(shù)據(jù)時(shí),把表示該輸入數(shù)據(jù)是最終數(shù)據(jù)的信息輸出到所述可變長(zhǎng)度編碼單元。這是因?yàn)橐部梢詫?duì)應(yīng)MPEG-4使用的三維可變長(zhǎng)度編碼。
本發(fā)明涉及的編碼裝置優(yōu)選,還具有控制對(duì)所述數(shù)據(jù)緩沖器的供給時(shí)鐘的時(shí)鐘控制單元,所述時(shí)鐘控制單元根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,僅在所述輸入數(shù)據(jù)的值不是0的期間,向所述數(shù)據(jù)緩沖器供給時(shí)鐘。
其次,為了達(dá)到上述目的,本發(fā)明涉及的編碼裝置,一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼裝置,其特征在于,具有順序輸入1塊m×n個(gè)數(shù)據(jù)的輸入單元、處理器、第一處理單元和第二處理單元,其中,第一處理單元包括比較并判定用所述輸入單元輸入的各個(gè)數(shù)據(jù)的值是否是0的比較判定單元;存儲(chǔ)與所述比較判定單元的判定結(jié)果相關(guān)的第一判定結(jié)果信息的第一信息寄存器;存儲(chǔ)用所述輸入單元輸入的數(shù)據(jù)的第一數(shù)據(jù)緩沖器;和控制對(duì)所述第一數(shù)據(jù)緩沖器的所述數(shù)據(jù)寫(xiě)入的寫(xiě)入控制單元;第二處理單元包括存儲(chǔ)所述第二數(shù)據(jù)的第二數(shù)據(jù)緩沖器;存儲(chǔ)與所述第二數(shù)據(jù)的值是否是0相關(guān)的第二判定結(jié)果信息的第二信息寄存器;讀出控制單元,根據(jù)存儲(chǔ)在所述第二信息寄存器的所述第二判定結(jié)果信息,控制從所述第二數(shù)據(jù)緩沖器進(jìn)行的所述第二數(shù)據(jù)的讀出;游程長(zhǎng)度編碼單元,使用從所述第二數(shù)據(jù)緩沖器讀出的所述第二數(shù)據(jù)和存儲(chǔ)在所述第二信息寄存器的所述第二判定結(jié)果信息,進(jìn)行游程長(zhǎng)度編碼;和可變長(zhǎng)度編碼單元,使用由在所述游程長(zhǎng)度編碼單元求出的數(shù)值連續(xù)是0的所述第二數(shù)據(jù)的個(gè)數(shù)和所述第二數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼;所述處理器根據(jù)存儲(chǔ)在所述第一信息寄存器的信息,從所述第一數(shù)據(jù)緩沖器讀出所述數(shù)據(jù),生成第二數(shù)據(jù);所述讀出控制單元根據(jù)所述第二信息寄存器的第二判定結(jié)果信息,從所述第二數(shù)據(jù)緩沖器僅讀出數(shù)值不是0的所述第二數(shù)據(jù),所述游程長(zhǎng)度編碼單元把所述第二信息寄存器中的第二判定結(jié)果信息表示所述第二數(shù)據(jù)值不是0的區(qū)間,作為數(shù)值連續(xù)是0的所述第二數(shù)據(jù)的個(gè)數(shù)輸出到所述可變長(zhǎng)度編碼單元。
這樣,通過(guò)采用利用處理器劃分成第一處理單元和第二處理單元的結(jié)構(gòu),在兩個(gè)處理單元間轉(zhuǎn)送數(shù)據(jù)時(shí),可以縮短讀出處理部分和寫(xiě)入處理部分的時(shí)間,能夠縮短可變長(zhǎng)度編碼處理的等待時(shí)間。因此可以從整體上實(shí)現(xiàn)編碼處理的快速化。
本發(fā)明涉及的編碼裝置優(yōu)選,所述處理器在所生成的第二數(shù)據(jù)的值是0時(shí)不輸出該第二數(shù)據(jù),累積數(shù)值是0的所述第二數(shù)據(jù)的個(gè)數(shù),在所生成的第二數(shù)據(jù)的值不是0時(shí)輸出該第二數(shù)據(jù),同時(shí)向所述游程長(zhǎng)度編碼單元輸出數(shù)值是0的所述第二數(shù)據(jù)的累積個(gè)數(shù)。
其次,為了達(dá)到上述目的,本發(fā)明涉及的編碼裝置,一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼裝置,包括順序輸入1塊m×n個(gè)數(shù)據(jù)的輸入單元;判定用所述輸入單元輸入的各個(gè)數(shù)據(jù)的值是否是0的比較判定單元;存儲(chǔ)用所述輸入單元輸入的數(shù)據(jù)的數(shù)據(jù)緩沖器;存儲(chǔ)在所述比較判定單元被判定為數(shù)值不是0的所述數(shù)據(jù)在所述數(shù)據(jù)緩沖器中的地址的地址存儲(chǔ)單元;讀出控制單元,根據(jù)存儲(chǔ)在所述地址存儲(chǔ)單元的所述地址,控制從所述數(shù)據(jù)緩沖器進(jìn)行的所述數(shù)據(jù)的讀出;游程長(zhǎng)度編碼單元,使用從所述數(shù)據(jù)緩沖器讀出的所述輸入數(shù)據(jù)和存儲(chǔ)在所述地址存儲(chǔ)單元的所述地址,進(jìn)行游程長(zhǎng)度編碼;和可變長(zhǎng)度編碼單元,使用在所述游程長(zhǎng)度編碼單元求出的數(shù)值連續(xù)是0的所述數(shù)據(jù)的個(gè)數(shù)和所述數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼,所述讀出控制單元根據(jù)存儲(chǔ)在所述地址存儲(chǔ)單元的所述地址,從所述數(shù)據(jù)緩沖器僅讀出數(shù)值不是0的所述數(shù)據(jù),所述游程長(zhǎng)度編碼單元把上次從所述地址存儲(chǔ)單元讀出的地址和此次讀出的地址的差分,作為數(shù)值是0的所述數(shù)據(jù)的個(gè)數(shù)輸出到所述可變長(zhǎng)度編碼單元。
采用這種結(jié)構(gòu),根據(jù)存儲(chǔ)在地址存儲(chǔ)單元的地址,僅對(duì)數(shù)據(jù)緩沖器中數(shù)值不是0的數(shù)據(jù)輸出地址。這樣,可以縮短可變長(zhǎng)度編碼處理的等待時(shí)間,縮短程度是讀出數(shù)值是0的數(shù)據(jù)所需要的時(shí)間,可以從整體上使編碼處理快速化。
本發(fā)明涉及的編碼裝置優(yōu)選,所述游程長(zhǎng)度編碼單元按照Z(yǔ)形掃描順序計(jì)算從所述數(shù)據(jù)緩沖器讀出的地址和前一次讀出的地址之間的差分,把所述差分作為數(shù)值是0的所述數(shù)據(jù)的個(gè)數(shù)輸出到所述可變長(zhǎng)度編碼單元。
本發(fā)明涉及的編碼裝置優(yōu)選,利用處理器實(shí)現(xiàn)所述地址存儲(chǔ)單元和所述讀出控制單元。
其次,為了達(dá)到上述目的,本發(fā)明涉及的編碼方法,一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼方法,包括順序輸入1塊m×n個(gè)數(shù)據(jù)的步驟;判定所輸入的各個(gè)所述數(shù)據(jù)的值是否是0的步驟;把與所述判定結(jié)果相關(guān)的判定結(jié)果信息存儲(chǔ)到信息寄存器中的步驟;把所述輸入數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)緩沖器中的步驟;根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,從所述數(shù)據(jù)緩沖器選擇讀出數(shù)據(jù)的步驟;使用從所述數(shù)據(jù)緩沖器讀出的數(shù)據(jù)和所述判定結(jié)果信息,進(jìn)行游程長(zhǎng)度編碼的步驟;和使用在所述進(jìn)行游程長(zhǎng)度編碼的步驟求出的數(shù)值連續(xù)是0的所述數(shù)據(jù)的個(gè)數(shù)和所述數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼的步驟。
采用這種方法,根據(jù)存儲(chǔ)在信息寄存器的判定結(jié)果信息,可以控制對(duì)數(shù)據(jù)緩沖器中數(shù)值不是0的數(shù)據(jù)的讀出。因此,可以縮短在進(jìn)行可變長(zhǎng)度編碼處理前的等待時(shí)間,縮短程度是讀出數(shù)值不是0的數(shù)據(jù)所需要的時(shí)間,可以從整體上使編碼處理快速化。
另外,本發(fā)明涉及的編碼方法優(yōu)選,把可以在一個(gè)地址存儲(chǔ)L(L為2以上的自然數(shù))個(gè)所述數(shù)據(jù)的緩沖器作為數(shù)據(jù)緩沖器使用,從所述數(shù)據(jù)緩沖器選擇讀出數(shù)據(jù)的步驟包括根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,選擇應(yīng)該把從所述數(shù)據(jù)緩沖器讀出的L個(gè)所述數(shù)據(jù)中的哪些數(shù)據(jù)轉(zhuǎn)送到游程長(zhǎng)度編碼步驟的步驟;和把所選擇的數(shù)據(jù)轉(zhuǎn)送到游程長(zhǎng)度編碼步驟的步驟??梢酝瑫r(shí)判斷信息寄存器的判定結(jié)果信息中的多個(gè)比特,所以對(duì)連續(xù)的比特?cái)?shù)據(jù),可以同時(shí)判斷數(shù)值是否是0,使對(duì)數(shù)據(jù)緩沖器的訪問(wèn)時(shí)間變短。結(jié)果,能夠縮短在進(jìn)行長(zhǎng)度編碼處理前的等待時(shí)間,可以從整體上使編碼處理快速化。
本發(fā)明涉及的編碼方法優(yōu)選,所述信息寄存器具有可以按分別不同的排列順序、以m×n比特存儲(chǔ)所述判定結(jié)果信息的結(jié)構(gòu),并且使用由多個(gè)所述信息寄存器構(gòu)成信息寄存器組,還包括輸入用于表示輸入數(shù)據(jù)的塊特征的特征信息的步驟,和根據(jù)所輸入的所述特征信息,從所述信息寄存器組選擇任一信息寄存器的步驟。對(duì)MPEG-4等有多個(gè)掃描的可變長(zhǎng)度編碼,也能實(shí)現(xiàn)編碼處理的快速化。
本發(fā)明涉及的編碼方法優(yōu)選,還包括同時(shí)執(zhí)行多個(gè)處理系統(tǒng),控制在所述多個(gè)處理系統(tǒng)中的哪一個(gè)處理系統(tǒng)把從數(shù)據(jù)緩沖器讀出的數(shù)據(jù)轉(zhuǎn)送到游程長(zhǎng)度編碼步驟的步驟,同時(shí)執(zhí)行所述多個(gè)處理系統(tǒng)之一的向所述數(shù)據(jù)緩沖器的寫(xiě)入處理和其他處理系統(tǒng)中的對(duì)所述數(shù)據(jù)緩沖器的讀出處理,其中,所述處理系統(tǒng)包括把所述判定結(jié)果信息存儲(chǔ)在所述信息寄存器中的步驟;把所述輸入數(shù)據(jù)存儲(chǔ)在所述數(shù)據(jù)緩沖器中的步驟;和根據(jù)所述判定結(jié)果信息,從所述數(shù)據(jù)緩沖器選擇讀出數(shù)據(jù)的步驟。通過(guò)同時(shí)進(jìn)行數(shù)據(jù)的寫(xiě)入處理和讀出處理,不用等待從數(shù)據(jù)緩沖器讀出的時(shí)間就能進(jìn)行數(shù)據(jù)轉(zhuǎn)送。這樣,可以縮短可變長(zhǎng)度編碼處理的等待時(shí)間,從整體上使編碼處理快速化。
本發(fā)明涉及的編碼方法優(yōu)選,還包括根據(jù)所述信息寄存器的判定結(jié)果信息,累積不是0的輸入數(shù)據(jù)的個(gè)數(shù)的步驟。本發(fā)明涉及的編碼方法優(yōu)選,還包括設(shè)定應(yīng)成為所述累積處理對(duì)象的1塊內(nèi)的區(qū)域的步驟。進(jìn)行編碼數(shù)據(jù)的速率控制時(shí),不用等待可變長(zhǎng)度編碼處理的結(jié)束,即可根據(jù)外部指示再次進(jìn)行編碼處理。
本發(fā)明涉及的編碼方法優(yōu)選,還包括設(shè)定累積值的界限值的步驟;比較所述累積值和所述界限值的比較步驟;和根據(jù)所述比較結(jié)果,控制所述可變長(zhǎng)度編碼步驟,以便把編碼后的數(shù)據(jù)容量控制在規(guī)定范圍內(nèi)的步驟。也可以在可變長(zhǎng)度編碼處理的過(guò)程中比較判斷累積值和界限值,在達(dá)到該界限值以上時(shí),可以不等待可變長(zhǎng)度編碼處理結(jié)束就進(jìn)行再編碼,能夠縮短可變長(zhǎng)度編碼處理的等待時(shí)間。
本發(fā)明涉及的編碼方法優(yōu)選,還包括根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,判定從數(shù)據(jù)緩沖器讀出的輸入數(shù)據(jù)是否是數(shù)據(jù)塊內(nèi)最后是0的輸入數(shù)據(jù)的步驟,在判定為不是最后是0的輸入數(shù)據(jù)時(shí),把表示該輸入數(shù)據(jù)是最終數(shù)據(jù)的信息輸出到所述可變長(zhǎng)度編碼步驟。這是因?yàn)橐部梢詫?duì)應(yīng)MPEG-4使用的三維可變長(zhǎng)度編碼。
本發(fā)明涉及的編碼方法優(yōu)選,包括控制對(duì)所述數(shù)據(jù)緩沖器的供給時(shí)鐘的步驟,根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,僅在所述數(shù)據(jù)的值不是0的期間,向所述數(shù)據(jù)緩沖器供給時(shí)鐘。僅對(duì)數(shù)值不是0的數(shù)據(jù)個(gè)數(shù)部分的數(shù)據(jù)緩沖器各個(gè)時(shí)鐘,所以能抑止消耗電力,實(shí)現(xiàn)低電力化。
其次,為了達(dá)到上述目的,本發(fā)明涉及的編碼方法,一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼方法,具有第一處理步驟和第二處理步驟,其中,第一處理步驟包括順序輸入1塊m×n個(gè)數(shù)據(jù)的步驟;判定各個(gè)輸入數(shù)據(jù)的值是否是0的步驟;把與所述判定結(jié)果相關(guān)的判定結(jié)果信息存儲(chǔ)在第一信息寄存器的步驟;和把所述輸入數(shù)據(jù)存儲(chǔ)在第一數(shù)據(jù)緩沖器的步驟,第二處理步驟包括根據(jù)存儲(chǔ)在所述第一信息寄存器的信息,從所述第一數(shù)據(jù)緩沖器讀出所述數(shù)據(jù),生成第二數(shù)據(jù)的步驟;把所述第二數(shù)據(jù)存儲(chǔ)在第二數(shù)據(jù)緩沖器的步驟;把與所述第二數(shù)據(jù)的值是否是0相關(guān)的第二判定結(jié)果信息存儲(chǔ)在第二信息寄存器的步驟;根據(jù)存儲(chǔ)在所述第二信息寄存器的所述第二判定結(jié)果信息,控制從所述第二數(shù)據(jù)緩沖器進(jìn)行的所述第二數(shù)據(jù)的讀出的步驟;使用從所述第二數(shù)據(jù)緩沖器讀出的所述第二數(shù)據(jù)和存儲(chǔ)在所述第二信息寄存器的所述第二判定結(jié)果信息,進(jìn)行游程長(zhǎng)度編碼的步驟;和使用在進(jìn)行所述游程長(zhǎng)度編碼的步驟求出的數(shù)值連續(xù)是0的所述第二數(shù)據(jù)的個(gè)數(shù)和所述第二數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼的步驟,根據(jù)所述第二信息寄存器,從所述第二數(shù)據(jù)緩沖器僅讀出數(shù)值不是0的所述第二數(shù)據(jù),在所述進(jìn)行游程長(zhǎng)度編碼的步驟,把所述第二信息寄存器的第二判定結(jié)果信息表示所述第二數(shù)據(jù)值不是0的區(qū)間,作為連續(xù)數(shù)值是0的所述第二數(shù)據(jù)的個(gè)數(shù)轉(zhuǎn)送到進(jìn)行所述可變長(zhǎng)度編碼的步驟。
采用這種方法,在第一處理步驟和第二處理步驟之間轉(zhuǎn)送數(shù)據(jù)時(shí),可以縮短讀出處理部分和寫(xiě)入處理部分的時(shí)間,能夠縮短可變長(zhǎng)度編碼處理的等待時(shí)間。結(jié)果,可以從整體上實(shí)現(xiàn)編碼處理的快速化。
其次,為了達(dá)到上述目的,本發(fā)明涉及的編碼方法,一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼方法,包括順序輸入1塊m×n個(gè)數(shù)據(jù)的步驟;判定各個(gè)輸入數(shù)據(jù)的值是否是0的步驟;把所述輸入數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)緩沖器的步驟;把被判定為數(shù)值不是0的所述數(shù)據(jù)在所述數(shù)據(jù)緩沖器中的地址存儲(chǔ)在地址存儲(chǔ)單元的步驟;根據(jù)存儲(chǔ)在所述地址存儲(chǔ)單元的所述地址,從所述數(shù)據(jù)緩沖器讀出所述數(shù)據(jù)的步驟;使用從所述緩沖器讀出的所述輸入數(shù)據(jù)和所存儲(chǔ)的所述地址,進(jìn)行游程長(zhǎng)度編碼的步驟;和使用在進(jìn)行所述游程長(zhǎng)度編碼的步驟求出的數(shù)值連續(xù)是0的所述數(shù)據(jù)的個(gè)數(shù)和所述數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼的步驟,根據(jù)存儲(chǔ)在所述存儲(chǔ)單元的所述地址,從所述數(shù)據(jù)緩沖器僅讀出數(shù)值不是0的所述數(shù)據(jù),把上次讀出的地址和此次讀出的地址的差分作為數(shù)值是0的輸入數(shù)據(jù)的個(gè)數(shù)轉(zhuǎn)送到所述進(jìn)行可變長(zhǎng)度編碼的步驟。
采用這種方法,根據(jù)存儲(chǔ)在地址存儲(chǔ)單元的地址,僅對(duì)數(shù)據(jù)緩沖器中數(shù)值不是0的數(shù)據(jù)輸出地址。這樣,可以縮短可變長(zhǎng)度編碼處理的等待時(shí)間,縮短程度是讀出數(shù)值是0的數(shù)據(jù)所需要的時(shí)間,可以從整體上使編碼處理快速化。
圖1是本發(fā)明的實(shí)施方式1涉及的編碼裝置的結(jié)構(gòu)圖。
圖2是本發(fā)明的實(shí)施方式1涉及的編碼裝置的處理流程圖。
圖3是本發(fā)明的實(shí)施方式1涉及的編碼裝置中的輸入單元的輸入順序說(shuō)明圖。
圖4是本發(fā)明的實(shí)施方式1涉及的編碼裝置中的信息寄存器的存儲(chǔ)順序說(shuō)明圖。
圖5是本發(fā)明的實(shí)施方式1涉及的編碼裝置中的信息寄存器的存儲(chǔ)記錄的示例圖。
圖6是本發(fā)明的實(shí)施方式1涉及的編碼裝置的讀出地址過(guò)渡示例圖。
圖7是本發(fā)明的實(shí)施方式1涉及的編碼裝置的另一種結(jié)構(gòu)圖。
圖8是本發(fā)明的實(shí)施方式1涉及的編碼裝置的再一種結(jié)構(gòu)圖。
圖9是本發(fā)明的實(shí)施方式1涉及的編碼裝置的數(shù)值是0的數(shù)據(jù)的個(gè)數(shù)計(jì)算方法說(shuō)明圖。
圖10是本發(fā)明的實(shí)施方式1涉及的編碼裝置的又一種結(jié)構(gòu)圖。
圖11是本發(fā)明的實(shí)施方式2涉及的編碼裝置的結(jié)構(gòu)圖。
圖12是本發(fā)明的實(shí)施方式2涉及的編碼裝置的數(shù)據(jù)獲取方法及數(shù)據(jù)緩沖器結(jié)構(gòu)的示例圖。
圖13是本發(fā)明的實(shí)施方式2涉及的編碼裝置的信息寄存器的存儲(chǔ)記錄的示例圖。
圖14是本發(fā)明的實(shí)施方式3涉及的編碼裝置的結(jié)構(gòu)圖。
圖15是本發(fā)明的實(shí)施方式3涉及的編碼裝置的水平優(yōu)先掃描順序的說(shuō)明圖。
圖16是本發(fā)明的實(shí)施方式3涉及的編碼裝置的垂直優(yōu)先掃描順序的說(shuō)明圖。
圖17是采用本發(fā)明的實(shí)施方式3涉及的編碼裝置的水平優(yōu)先掃描順序時(shí)的信息寄存器的存儲(chǔ)記錄的示例圖。
圖18是采用本發(fā)明的實(shí)施方式3涉及的編碼裝置中的垂直優(yōu)先掃描順序時(shí)的信息寄存器的存儲(chǔ)記錄的示例圖。
圖19是本發(fā)明的實(shí)施方式4涉及的編碼裝置的結(jié)構(gòu)圖。
圖20是本發(fā)明的實(shí)施方式5涉及的編碼裝置的結(jié)構(gòu)圖。
圖21是以往的編碼數(shù)據(jù)量控制處理的流程圖。
圖22是本發(fā)明的實(shí)施方式5涉及的編碼裝置的編碼數(shù)據(jù)量控制處理的流程圖。
圖23是本發(fā)明的實(shí)施方式5涉及的編碼裝置的累積區(qū)域設(shè)定示例圖。
圖24是本發(fā)明的實(shí)施方式5涉及的編碼裝置的另一種結(jié)構(gòu)圖。
圖25是本發(fā)明的實(shí)施方式5涉及的編碼裝置的編碼數(shù)據(jù)量控制處理的流程圖。
圖26是本發(fā)明的實(shí)施方式6涉及的編碼裝置的結(jié)構(gòu)圖。
圖27是本發(fā)明的實(shí)施方式7涉及的編碼裝置的結(jié)構(gòu)圖。
圖28是本發(fā)明的實(shí)施方式8涉及的編碼裝置的結(jié)構(gòu)圖。
圖29是本發(fā)明的實(shí)施方式8涉及的編碼裝置的另一種結(jié)構(gòu)圖。
圖30是以往的圖像編碼裝置的結(jié)構(gòu)圖。
圖31是DCT系數(shù)值的示例圖。
圖32是以往的圖像編碼裝置的編碼單元的結(jié)構(gòu)圖。
圖33是以往的圖像編碼裝置的另一種結(jié)構(gòu)圖。
具體實(shí)施例方式
(實(shí)施方式1)以下,參照
本發(fā)明的實(shí)施方式1涉及的編碼裝置。圖1是本發(fā)明的實(shí)施方式1涉及的編碼裝置的結(jié)構(gòu)圖。在本實(shí)施方式1中,說(shuō)明1塊數(shù)據(jù)是8×8個(gè)時(shí)的情況。
在圖1中,2表示順序輸入1塊8×8個(gè)數(shù)據(jù)的輸入單元,3表示判定從輸入單元2輸入的數(shù)據(jù)的值是否是0的比較判定單元,4表示存儲(chǔ)同比較判定單元3中數(shù)據(jù)值是否是0相關(guān)的判定信息的8×8比特信息寄存器,5表示存儲(chǔ)從輸入單元2輸入的數(shù)據(jù)的數(shù)據(jù)緩沖器。
6表示控制對(duì)數(shù)據(jù)緩沖器5的數(shù)據(jù)寫(xiě)入的寫(xiě)入控制單元,7表示控制從數(shù)據(jù)緩沖器5讀出數(shù)據(jù)的讀出控制單元。
8表示游程長(zhǎng)度編碼單元,根據(jù)從數(shù)據(jù)緩沖器5讀出的數(shù)據(jù)和從信息寄存器4讀出的判定信息,累積數(shù)值是0的數(shù)據(jù)的個(gè)數(shù),進(jìn)行利用具有連續(xù)數(shù)值的數(shù)據(jù)的個(gè)數(shù)來(lái)編碼的游程長(zhǎng)度編碼,9表示可變長(zhǎng)度編碼單元,把從游程長(zhǎng)度編碼單元8輸出的、值是0的數(shù)據(jù)的個(gè)數(shù)和數(shù)據(jù)自身作為一對(duì)數(shù)據(jù)來(lái)使用,從而進(jìn)行可變長(zhǎng)度編碼,10表示輸出來(lái)自可變長(zhǎng)度編碼單元9的編碼數(shù)據(jù)的輸出單元。
圖2是本發(fā)明的實(shí)施方式1涉及的編碼裝置的處理流程圖。根據(jù)圖2說(shuō)明處理流程。
首先,在輸入單元2按圖3所示的從左上部向右下部的順序輸入1塊8×8個(gè)數(shù)據(jù)(步驟S201),利用比較判定單元3判定數(shù)據(jù)的值是否是0(步驟S202)。
比較判定單元3的判定結(jié)果被存儲(chǔ)到信息寄存器4(步驟S203)。例如,數(shù)據(jù)的值是0時(shí)被存儲(chǔ)為‘0’,不是0時(shí)被存儲(chǔ)為‘1’。
此時(shí),將1塊數(shù)據(jù)按照?qǐng)D4所示Z形掃描順序、即把第1個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第1比特、把第2個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第2比特、把第3個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第6比特等等的圖5所示排列順序存儲(chǔ)到信息寄存器4。
另外,在比較判定單元3判定來(lái)自輸入單元2的數(shù)據(jù)的同時(shí),寫(xiě)入控制單元6依次更新例如由RAM(Random Access Memory)構(gòu)成的數(shù)據(jù)緩沖器5的地址,寫(xiě)入來(lái)自輸入單元2的數(shù)據(jù)自身(步驟S204)。
由輸入單元2進(jìn)行的1塊數(shù)據(jù)的輸入結(jié)束后(步驟S205Yes),讀出控制單元7向數(shù)據(jù)緩沖器5輸出同信息寄存器4中被存儲(chǔ)為‘1’的比特相當(dāng)?shù)牡刂?,讀出數(shù)值不是0的數(shù)據(jù),按圖6所示過(guò)渡地址,從而進(jìn)行只讀出數(shù)值不連續(xù)為0的數(shù)據(jù)的動(dòng)作(步驟S206)。
即,如圖6所示,把對(duì)應(yīng)任意位置比特x的地址設(shè)為Ax,為了讀出數(shù)值不是0的數(shù)據(jù),按照A1→A2→A17→A11…這種順序連續(xù)地過(guò)渡地址。
在游程長(zhǎng)度編碼單元8,根據(jù)存儲(chǔ)在信息寄存器4的信息,計(jì)算當(dāng)前的信息寄存器4中的比特位置和同上次讀出數(shù)據(jù)的末尾相當(dāng)?shù)男畔⒓拇嫫?中的比特位置之間的區(qū)間,把該區(qū)間長(zhǎng)度作為數(shù)值是0的數(shù)據(jù)的個(gè)數(shù),并與從數(shù)據(jù)緩沖器5讀出的數(shù)據(jù)一起輸出到可變長(zhǎng)度編碼單元9(步驟S207)。圖5表示信息寄存器4中的存儲(chǔ)記錄的示例圖,例如,假設(shè)當(dāng)前的信息寄存器4中的比特位置是‘17’,當(dāng)前的信息寄存器4中的比特位置和同上次讀出數(shù)據(jù)的末尾相當(dāng)?shù)男畔⒓拇嫫?中的比特位置之間的區(qū)間,則相當(dāng)于區(qū)間a。
在可變長(zhǎng)度編碼單元9,把從游程長(zhǎng)度編碼單元8輸出的數(shù)值是0的數(shù)據(jù)的個(gè)數(shù)和數(shù)據(jù)作為一對(duì)數(shù)據(jù)來(lái)使用,進(jìn)行可變長(zhǎng)度編碼,向輸出單元10輸出編碼數(shù)據(jù)(步驟S208)。
如圖7的示例結(jié)構(gòu)所示,也可考慮根據(jù)比較判定單元3的判定結(jié)果決定是否進(jìn)行寫(xiě)入處理。即,在比較判定單元3的判定結(jié)果是數(shù)值是0的數(shù)據(jù)時(shí),寫(xiě)入控制單元6可以不更新數(shù)據(jù)緩沖器5的地址,不進(jìn)行寫(xiě)入處理。
如圖8的示例結(jié)構(gòu)所示,也可考慮用地址存儲(chǔ)單元11來(lái)取代信息寄存器4。該場(chǎng)合時(shí),把寫(xiě)入在比較判定單元3被判定為數(shù)值不是0的數(shù)據(jù)的數(shù)據(jù)緩沖器5的地址存儲(chǔ)在地址存儲(chǔ)單元11。
讀出控制單元7進(jìn)行以下控制,通過(guò)僅輸出存儲(chǔ)在地址存儲(chǔ)單元11的地址,僅讀出除數(shù)值是0的數(shù)據(jù)以外的數(shù)據(jù)。游程長(zhǎng)度編碼單元8根據(jù)上次讀出的地址和此次讀出的地址,按照?qǐng)D9所示Z形掃描順序,計(jì)算數(shù)值是0的數(shù)據(jù)的個(gè)數(shù)。即,計(jì)算結(jié)果為地址1和2之間為‘0’個(gè)、地址2和17之間為‘1’個(gè)、地址17和11之間為‘3’個(gè)、地址11和26之間為‘3’個(gè)。
如圖10的示例結(jié)構(gòu)所示,也可以考慮把寫(xiě)有在比較判定單元3被判定為數(shù)值不是0的數(shù)據(jù)的數(shù)據(jù)緩沖器5的地址由處理器12存儲(chǔ)的結(jié)構(gòu)。該場(chǎng)合時(shí),處理器12存儲(chǔ)用于讀出數(shù)據(jù)的地址,所以通過(guò)直接向數(shù)據(jù)緩沖器5輸出地址,可以讀出數(shù)值不是0的數(shù)據(jù)。
另外,處理器12存儲(chǔ)用于讀出數(shù)據(jù)的地址,所以處理器12可以按照?qǐng)D9所示Z形掃描順序,計(jì)算數(shù)值連續(xù)是0的數(shù)據(jù)的個(gè)數(shù),并向游程長(zhǎng)度編碼單元8輸出。
通過(guò)采用上述結(jié)構(gòu),讀出控制單元7根據(jù)存儲(chǔ)在信息寄存器4的信息,僅對(duì)數(shù)值不是0的數(shù)據(jù)輸出地址。結(jié)果,縮短對(duì)數(shù)據(jù)緩沖器5的訪問(wèn)時(shí)間,縮短程度是讀出數(shù)值是0的數(shù)據(jù)所需的時(shí)間,所以能夠縮短可變長(zhǎng)度編碼處理之前的處理時(shí)間,可以從整體上使編碼處理快速化。
另外,游程長(zhǎng)度編碼單元8根據(jù)存儲(chǔ)在信息寄存器4的信息,計(jì)算當(dāng)前的信息寄存器4中的比特位置和同上次讀出的數(shù)值不是0的數(shù)據(jù)相當(dāng)?shù)男畔⒓拇嫫?中的比特位置之間的區(qū)間,從而可以算出當(dāng)前比特位置中連續(xù)數(shù)值是0的數(shù)據(jù)的個(gè)數(shù),所以不需要對(duì)游程長(zhǎng)度進(jìn)行計(jì)數(shù)的單元。
再者,在寫(xiě)入控制單元6,可以僅對(duì)在比較判定單元3被判定為數(shù)值是0的數(shù)據(jù)進(jìn)行向數(shù)據(jù)緩沖器5的寫(xiě)入,所以能夠減少寫(xiě)入轉(zhuǎn)送量,可以提高數(shù)據(jù)緩沖器5的利用效率。
此外,處理器12存儲(chǔ)地址時(shí),可以將用于讀出數(shù)值不是0的數(shù)據(jù)的地址直接向數(shù)據(jù)緩沖器5輸出,不需要存儲(chǔ)地址的單元,所以能夠削減硬件的構(gòu)成部件。
(實(shí)施方式2)以下,參照
本發(fā)明的實(shí)施方式2涉及的編碼裝置。關(guān)于結(jié)構(gòu)和實(shí)施方式1相同的部分,通過(guò)賦予同一標(biāo)號(hào)來(lái)省略其詳細(xì)說(shuō)明。在本實(shí)施方式2中,也說(shuō)明1塊數(shù)據(jù)是8×8個(gè)時(shí)的情況。
圖11表示本發(fā)明的實(shí)施方式2涉及的編碼裝置101的概略結(jié)構(gòu)圖。在圖11中,相對(duì)實(shí)施方式1涉及的編碼裝置,本實(shí)施方式2的特征是具有選擇單元110,選擇從數(shù)據(jù)緩沖器5輸出的數(shù)據(jù),以便能在數(shù)據(jù)緩沖器5的一個(gè)地址中存儲(chǔ)例如2個(gè)從輸入單元2輸入的數(shù)據(jù)。輸入單元2、比較判定單元3和信息寄存器4的動(dòng)作與實(shí)施方式1相同。
在圖11中,在比較判定單元3判定從輸入單元2輸入的數(shù)據(jù)的同時(shí),寫(xiě)入控制單元6按圖12(a)所示地向數(shù)據(jù)緩沖器5輸出按Z形掃描順序在一個(gè)地址存儲(chǔ)2個(gè)數(shù)據(jù)的地址。即,在地址A0寫(xiě)入第1及第2個(gè)數(shù)據(jù),在地址A1寫(xiě)入第9及第17個(gè)數(shù)據(jù),在地址A2寫(xiě)入第10及第3個(gè)數(shù)據(jù)。即如圖12(b)所示,在一個(gè)地址保存2個(gè)數(shù)據(jù)。向一個(gè)地址存儲(chǔ)數(shù)據(jù)的方法是按照Z(yǔ)形掃描順序把序號(hào)在前的數(shù)據(jù)存儲(chǔ)在上位側(cè),把序號(hào)在后的數(shù)據(jù)存儲(chǔ)在下位側(cè)。
從輸入單元2進(jìn)行的1塊數(shù)據(jù)的輸入結(jié)束時(shí),讀出控制單元7同時(shí)判斷同數(shù)據(jù)緩沖器5中的地址相對(duì)應(yīng)的信息寄存器4中的比特信息,即同時(shí)判斷對(duì)應(yīng)圖13所示各個(gè)地址的兩個(gè)比特,當(dāng)某一方的一個(gè)數(shù)值不是0時(shí)、或任何一方的數(shù)值均不是0時(shí),向數(shù)據(jù)緩沖器5輸出同信息寄存器4的當(dāng)前比特位置對(duì)應(yīng)的地址。
讀出控制單元7還向選擇單元110輸出用于表示讀出的數(shù)據(jù)中哪方數(shù)值不是0的信息寄存器4的2比特,選擇單元110在該2比特的上位比特是‘1’時(shí),輸出從數(shù)據(jù)緩沖器5讀出的數(shù)據(jù)的上位,在該2比特的下位比特是‘1’時(shí),輸出從數(shù)據(jù)緩沖器5讀出的數(shù)據(jù)的下位。在信息寄存器4的2比特都是‘1’時(shí),選擇單元110按上位、下位順序輸出從數(shù)據(jù)緩沖器5讀出的數(shù)據(jù)。
在讀出控制單元7根據(jù)存儲(chǔ)在信息寄存器4的信息從數(shù)據(jù)緩沖器5的地址讀出數(shù)據(jù)的同時(shí),如果所讀出的數(shù)據(jù)的上位或下位中某一方數(shù)值不是0時(shí),游程長(zhǎng)度編碼單元8按圖13所示計(jì)算當(dāng)前的信息寄存器4中的比特位置和同上次讀出的數(shù)據(jù)末尾相當(dāng)?shù)男畔⒓拇嫫?中的比特位置之間的區(qū)間b,并作為數(shù)值是0的數(shù)據(jù)的個(gè)數(shù)進(jìn)行計(jì)算。
根據(jù)存儲(chǔ)在信息寄存器4的信息所讀出的數(shù)據(jù)的上位、下位的數(shù)值都不是0時(shí),作為與上位數(shù)據(jù)成對(duì)的0的個(gè)數(shù),輸出當(dāng)前的信息寄存器4中的比特位置和同上次讀出的數(shù)據(jù)末尾相當(dāng)?shù)男畔⒓拇嫫?中的比特位置之間的區(qū)間、即圖13中的b,作為與下位數(shù)據(jù)成對(duì)的數(shù)值是0的數(shù)據(jù)的個(gè)數(shù),為表示數(shù)值不是0的數(shù)據(jù)是連續(xù)的,而輸出‘0’。
在下面,可變長(zhǎng)度編碼單元9的動(dòng)作與實(shí)施方式1相同。
如上所述,在數(shù)據(jù)緩沖器5使多個(gè)數(shù)據(jù)相關(guān)地存儲(chǔ)在一個(gè)地址中,然后在讀出控制單元7,對(duì)存儲(chǔ)在信息寄存器4的信息,以多比特單位判斷數(shù)值是否是0,從而也可以同時(shí)判斷是否是數(shù)值不連續(xù)是0的數(shù)據(jù),在數(shù)值連續(xù)是0時(shí),相應(yīng)地可以縮短向數(shù)據(jù)緩沖器5的訪問(wèn)時(shí)間,所以能夠縮短可變長(zhǎng)度編碼處理之前的處理時(shí)間,可以從整體上使編碼處理快速化。
在本實(shí)施方式2中,說(shuō)明了向數(shù)據(jù)緩沖器5的一個(gè)地址存儲(chǔ)兩個(gè)數(shù)據(jù)時(shí)的情況,但對(duì)此沒(méi)有特別限定,也可以在一個(gè)地址存儲(chǔ)兩個(gè)以上的數(shù)據(jù)。
(實(shí)施方式3)以下,參照
本發(fā)明的實(shí)施方式3涉及的編碼裝置。關(guān)于結(jié)構(gòu)和實(shí)施方式1相同的部分,通過(guò)賦予同一標(biāo)號(hào)來(lái)省略其詳細(xì)說(shuō)明。在本實(shí)施方式3中,也說(shuō)明1塊數(shù)據(jù)是8×8個(gè)時(shí)的情況。
圖14表示本發(fā)明的實(shí)施方式3涉及的編碼裝置的概略結(jié)構(gòu)圖。根據(jù)圖14可以明確,相對(duì)實(shí)施方式1,本實(shí)施方式3的特征是具有信息寄存器組204,具有至少一個(gè)以上以的8×8比特信息寄存器,分別按不同的排列順序存儲(chǔ)在比較判定單元3進(jìn)行的是否是數(shù)值為0的數(shù)據(jù)的判定結(jié)果;第二輸入單元205,輸入用于表示從輸入單元2輸入的編碼對(duì)象塊的特征的信息;和信息寄存器選擇單元206,根據(jù)在第二輸入單元205輸入的用于表示編碼對(duì)象塊的特征的信息,從信息寄存器組204選擇一個(gè)信息寄存器。輸入單元2、比較判定單元3、寫(xiě)入控制單元6的動(dòng)作和實(shí)施方式1相同。
在圖14中,從第二輸入單元205輸入例如MPEG-4的空間預(yù)測(cè)編碼即AC/DC預(yù)測(cè)結(jié)果。
根據(jù)所輸入的AC/DC預(yù)測(cè)結(jié)果,并通過(guò)在選擇單元206選擇合適的信息寄存器,可以選擇對(duì)編碼對(duì)象塊進(jìn)行可變長(zhǎng)度編碼時(shí)使用的掃描順序。在圖14的示例中,如果選擇了信息寄存器c時(shí),則選擇圖4所示的Z形掃描,如果選擇了信息寄存器d時(shí),則選擇圖15所示的水平優(yōu)先掃描,而選擇了信息寄存器e時(shí),則選擇圖16所示的垂直優(yōu)先掃描。
向信息寄存器組204中的信息寄存器c如下所述地存儲(chǔ)對(duì)1塊數(shù)據(jù)的判定結(jié)果,作為圖5所示的記錄,即,按圖4所示的Z形掃描順序,把第1個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第1比特,把第2個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第2比特,把第3個(gè)判定結(jié)果存儲(chǔ)到第6比特。
向信息寄存器d如下所述地存儲(chǔ)對(duì)1塊數(shù)據(jù)的判定結(jié)果,作為圖17所示的記錄,即,按圖15所示的MPEG-4中使用的水平優(yōu)先掃描順序,把第1個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第1比特,把第2個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第2比特,把第3個(gè)判定結(jié)果存儲(chǔ)到第3比特。
向信息寄存器e如下所述地存儲(chǔ)對(duì)1塊數(shù)據(jù)的判定結(jié)果,作為圖18所示的記錄,即,按圖16所示的MPEG-4中使用的垂直優(yōu)先掃描順序,把第1個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第1比特,把第2個(gè)數(shù)據(jù)的判定結(jié)果存儲(chǔ)到第9比特,把第3個(gè)判定結(jié)果存儲(chǔ)到第17比特。
在信息寄存器選擇單元206,根據(jù)從第二輸入單元205輸入的AC/DC預(yù)測(cè)結(jié)果,選擇信息寄存器組204中的一個(gè)信息寄存器,向讀出控制單元7輸出存儲(chǔ)在所選擇的信息寄存器中的信息。
以下的讀出控制單元7、游程長(zhǎng)度編碼單元8和可變長(zhǎng)度編碼單元9的動(dòng)作和實(shí)施方式1相同。
如上所述,在信息寄存器組204中準(zhǔn)備具有多種排列順序的信息寄存器,可以根據(jù)從第二輸入單元205輸入的信息選擇信息寄存器,例如MPEG-4等可變長(zhǎng)度編碼,也能實(shí)現(xiàn)編碼快速化。
在本實(shí)施方式3中,作為示例,說(shuō)明了把MPEG-4的AC/DC預(yù)測(cè)結(jié)果作為第二輸入時(shí)的情況,但并不限定于此,也可以是根據(jù)其他信息來(lái)選擇信息寄存器的結(jié)構(gòu)。
另外,在本實(shí)施方式3中,說(shuō)明了從具有利用三種不同掃描而形成的存儲(chǔ)順序的信息寄存器中選擇一個(gè)時(shí)的情況,但并不限定于該結(jié)構(gòu),也可以準(zhǔn)備具有利用其他掃描來(lái)形成存儲(chǔ)順序的信息寄存器。
(實(shí)施方式4)以下,參照
本發(fā)明的實(shí)施方式4涉及的編碼裝置。關(guān)于結(jié)構(gòu)和實(shí)施方式1相同的部分,通過(guò)賦予同一標(biāo)號(hào)來(lái)省略其詳細(xì)說(shuō)明。在本實(shí)施方式4中,也說(shuō)明1塊數(shù)據(jù)是8×8個(gè)時(shí)的情況。
相對(duì)實(shí)施方式1,本實(shí)施方式4的特征是,具有進(jìn)行從與輸入到信息寄存器的數(shù)據(jù)是否是0相關(guān)的信息的存儲(chǔ)、到從數(shù)據(jù)緩沖器的數(shù)據(jù)讀出的多個(gè)處理系統(tǒng)。以下,舉例說(shuō)明具有兩個(gè)該處理系統(tǒng)時(shí)的情況。
圖19表示本發(fā)明的實(shí)施方式4涉及的編碼裝置的概略結(jié)構(gòu)。在圖19中,本編碼裝置還具有8×8比特的信息寄存器304,用于存儲(chǔ)比較判定單元3的判定結(jié)果、即與所輸入的數(shù)據(jù)的數(shù)值是否是0相關(guān)的信息;用于存儲(chǔ)從輸入單元2輸入的數(shù)據(jù)的數(shù)據(jù)緩沖器305;控制向數(shù)據(jù)緩沖器305的寫(xiě)入的寫(xiě)入控制單元306;控制從數(shù)據(jù)緩沖器305進(jìn)行的讀出的讀出控制單元307;對(duì)來(lái)自數(shù)據(jù)緩沖器5和數(shù)據(jù)緩沖器305的數(shù)據(jù)進(jìn)行切換輸出的切換單元308。
首先,在圖19中,把包含進(jìn)行和實(shí)施方式1相同處理的信息寄存器4、數(shù)據(jù)緩沖器5、寫(xiě)入控制單元6、讀出控制單元7的一系列處理系統(tǒng)作為處理A,把包含進(jìn)行和實(shí)施方式1相同處理的信息寄存器304、數(shù)據(jù)緩沖器305、寫(xiě)入控制單元306、讀出控制單元307的一系列處理系統(tǒng)作為處理B。
在比較判定單元3判定從輸入單元2輸入的1塊8×8個(gè)數(shù)據(jù),通過(guò)處理A進(jìn)行向數(shù)據(jù)緩沖器5的寫(xiě)入處理。然后,在從輸入單元2輸入的1塊數(shù)據(jù)的輸入結(jié)束時(shí),執(zhí)行利用處理A進(jìn)行的從數(shù)據(jù)緩沖器5的讀出處理,并從切換單元308輸出。在利用該處理A開(kāi)始進(jìn)行讀出處理的同時(shí),從輸入單元2順序輸入下1塊數(shù)據(jù),在比較判定單元3進(jìn)行判定,通過(guò)處理B進(jìn)行向數(shù)據(jù)緩沖器5的寫(xiě)入處理。
從輸入單元2輸入的1塊數(shù)據(jù)的輸入結(jié)束時(shí),執(zhí)行利用處理B進(jìn)行的從數(shù)據(jù)緩沖器305的讀出處理,并從切換單元308輸出。在利用該處理B開(kāi)始進(jìn)行讀出處理的同時(shí),從輸入單元2順序輸入下1塊數(shù)據(jù),在比較判定單元3進(jìn)行判定,通過(guò)處理A進(jìn)行向數(shù)據(jù)緩沖器5的寫(xiě)入處理。這樣,交替利用處理A和處理B進(jìn)行編碼處理。游程長(zhǎng)度編碼單元8和可變長(zhǎng)度編碼單元9的動(dòng)作和實(shí)施方式1相同。
這樣,通過(guò)具有多個(gè)從與輸入到和實(shí)施方式1相同的信息寄存器的數(shù)據(jù)數(shù)值是否是0相關(guān)的信息的存儲(chǔ)、到從數(shù)據(jù)緩沖器進(jìn)行的數(shù)據(jù)讀出的處理系統(tǒng),可以同時(shí)并行進(jìn)行向數(shù)據(jù)緩沖器的數(shù)據(jù)寫(xiě)入處理和讀出處理,相應(yīng)地不用等待從數(shù)據(jù)緩沖器的讀出時(shí)間就能進(jìn)行編碼處理,所以能從整體上使編碼處理快速化。
另外,在本實(shí)施方式4中說(shuō)明了每個(gè)數(shù)據(jù)緩沖器具有寫(xiě)入控制單元和讀出控制單元,但也可以是利用一個(gè)寫(xiě)入控制單元和讀出控制單元來(lái)控制雙方數(shù)據(jù)緩沖器的結(jié)構(gòu)。
(實(shí)施方式5)以下,參照
本發(fā)明的實(shí)施方式5涉及的編碼裝置。關(guān)于結(jié)構(gòu)和實(shí)施方式1相同的部分,通過(guò)賦予同一標(biāo)號(hào)來(lái)省略其詳細(xì)說(shuō)明。在本實(shí)施方式5中,說(shuō)明進(jìn)行JPEG等編碼時(shí)1塊數(shù)據(jù)是8×8個(gè)時(shí)的情況。
圖20表示本發(fā)明的實(shí)施方式5涉及的編碼裝置的概略結(jié)構(gòu)圖。相對(duì)實(shí)施方式1,本實(shí)施方式5的特征是,具有累積信息寄存器4中數(shù)值不是0的數(shù)據(jù)的個(gè)數(shù)的代碼字?jǐn)?shù)累積單元402;對(duì)代碼字?jǐn)?shù)累積單元402累積的1塊數(shù)據(jù)內(nèi)的區(qū)域進(jìn)行設(shè)定的區(qū)域設(shè)定單元403;和輸出代碼字?jǐn)?shù)累積單元402生成的累積值的輸出單元404。
在JPEG等編碼技術(shù)中,為了控制編碼后的數(shù)據(jù)容量,以往是如圖21的處理流程圖所示,進(jìn)行DCT處理(步驟S211),進(jìn)行量化處理(步驟S212),利用可變長(zhǎng)度編碼進(jìn)行編碼(步驟S213),計(jì)算所生成的一個(gè)畫(huà)面的編碼量(步驟S214),通過(guò)與規(guī)定界限值進(jìn)行比較判定編碼量的累積值是否在合適范圍內(nèi)(步驟S215)。
即,在一個(gè)畫(huà)面的編碼量的累積值超過(guò)所設(shè)定的規(guī)定界限值時(shí)(步驟S215Yes),為了增大數(shù)值是0的系數(shù)以減少編碼量,,是變更在量化處理的除法運(yùn)算中使用的量化值(步驟S216),再次進(jìn)行編碼處理。在一個(gè)畫(huà)面的編碼量的累積值小于所設(shè)定的規(guī)定界限值時(shí)(步驟S215No),輸出生成的編碼(步驟S217)。
這樣,以往的編碼技術(shù)為了控制編碼后的數(shù)據(jù)容量,在完成一次編碼處理后,需要再次變更量化值進(jìn)行編碼處理。
一般,可變長(zhǎng)度編碼是向數(shù)值不是0的數(shù)據(jù)分配代碼字,數(shù)值不是0的數(shù)據(jù)越多,代碼字?jǐn)?shù)也越多。因此,在本實(shí)施方式5中,通過(guò)在信息寄存器4累積數(shù)值是‘1’的個(gè)數(shù),不用完成編碼處理就能判定編碼數(shù)據(jù)量是否合適。
本實(shí)施方式5涉及的編碼裝置的處理流程圖如圖22所示。在圖22中,對(duì)輸入的數(shù)據(jù)進(jìn)行DCT處理(步驟S221)及量化處理(步驟S222),進(jìn)行可變長(zhǎng)度編碼處理(步驟S223)的同時(shí),在代碼字?jǐn)?shù)累積單元402判定存儲(chǔ)在信息寄存器4的數(shù)值是否是0(步驟S224),并累積數(shù)值是‘1’的數(shù)據(jù)的個(gè)數(shù)(步驟S225)。
在該代碼字?jǐn)?shù)累積單元402進(jìn)行累積時(shí),高頻區(qū)域的數(shù)據(jù)不怎么影響畫(huà)質(zhì),所以在區(qū)域設(shè)定單元403把區(qū)域優(yōu)選設(shè)在高頻區(qū)域。這樣,可以在不影響畫(huà)質(zhì)的情況下把改變量化值以使在指定區(qū)域含有更多數(shù)值是0的數(shù)據(jù),能夠減小編碼量。
所以,在區(qū)域設(shè)定單元403如圖23所示,例如,把1塊數(shù)據(jù)內(nèi)的高頻區(qū)域設(shè)定為代碼字?jǐn)?shù)累積范圍,代碼字?jǐn)?shù)累積單元402累積一個(gè)畫(huà)面的、同區(qū)域設(shè)定單元403設(shè)定的區(qū)域相當(dāng)?shù)男畔⒓拇嫫?內(nèi)的、數(shù)值是‘1’的數(shù)據(jù)的個(gè)數(shù)累積為1個(gè)畫(huà)面,并從輸出單元404輸出。
根據(jù)從輸出單元404輸出的累積值,例如,使用外部處理器和規(guī)定界限值進(jìn)行比較(步驟S226),如果超過(guò)規(guī)定的界限值(步驟S226Yes),判斷為編碼后的數(shù)據(jù)容量過(guò)多,在可變長(zhǎng)度編碼單元9結(jié)束可變長(zhǎng)度編碼之前變更量化值(步驟S227),然后再次進(jìn)行可變長(zhǎng)度編碼。
從輸出單元404輸出的累積值如果小于規(guī)定的界限值(步驟S226No),判斷為編碼后的數(shù)據(jù)容量合適,在可變長(zhǎng)度編碼單元9繼續(xù)進(jìn)行可變長(zhǎng)度編碼處理,生成代碼字(步驟S228)。
如圖24所示,還可以具有界限值設(shè)定單元405,對(duì)代碼字?jǐn)?shù)累積單元402的累積值設(shè)定界限值;比較單元406,比較來(lái)自代碼字?jǐn)?shù)累積單元402的累積值和在代碼字?jǐn)?shù)界限值設(shè)定單元405設(shè)定的界限值;和輸出單元407,輸出用于表示比較單元406的比較結(jié)果的信息。
這樣,如圖25的處理流程圖所示,可以在進(jìn)行編碼處理時(shí)進(jìn)行累積值的大小判斷,所以不需要使用外部處理器,就能以塊單位進(jìn)行編碼數(shù)據(jù)的速率控制。
通過(guò)采用以上結(jié)構(gòu),進(jìn)行可變長(zhǎng)度編碼時(shí)的編碼數(shù)據(jù)的速率控制時(shí),不用等待可變長(zhǎng)度編碼處理結(jié)束就能再次進(jìn)行編碼處理,縮短了等待時(shí)間,相應(yīng)地實(shí)現(xiàn)編碼處理的快速化。
(實(shí)施方式6)
以下,參照
本發(fā)明的實(shí)施方式6涉及的編碼裝置。關(guān)于結(jié)構(gòu)和實(shí)施方式1相同的部分,通過(guò)賦予同一標(biāo)號(hào)來(lái)省略其詳細(xì)說(shuō)明。在本實(shí)施方式6中,也說(shuō)明1塊數(shù)據(jù)是8×8個(gè)時(shí)的情況。
圖26表示本發(fā)明的實(shí)施方式6涉及的編碼裝置的概略結(jié)構(gòu)圖。相對(duì)實(shí)施方式1,本實(shí)施方式6的特征是,具有最終數(shù)據(jù)判定單元502,判定用于表示存儲(chǔ)在信息寄存器4的數(shù)值不是0的數(shù)據(jù)的信息,是否是用于表示不是該塊內(nèi)的最后是0的數(shù)據(jù)的信息。輸入單元2、比較判定單元3、信息寄存器4、寫(xiě)入控制單元6、讀出控制單元7的動(dòng)作和實(shí)施方式1相同。
在讀出控制單元7向數(shù)據(jù)緩沖器5輸出用于讀出當(dāng)前塊內(nèi)最后的不是0的數(shù)據(jù)的地址的同時(shí),最終數(shù)據(jù)判定單元502根據(jù)存儲(chǔ)在信息寄存器4中的信息,判定是否為當(dāng)前塊內(nèi)最后的數(shù)值是非0的數(shù)據(jù),把與該判定結(jié)果相關(guān)的信息輸出到可變長(zhǎng)度編碼單元9。
這樣,最終數(shù)據(jù)判定單元502根據(jù)存儲(chǔ)信息寄存器4的信息,可以判定當(dāng)前塊內(nèi)最后的數(shù)值是非0的數(shù)據(jù),因此可變長(zhǎng)度編碼單元9可以對(duì)應(yīng)例如在MPEG-4中使用的、利用表示數(shù)據(jù)值大小的LEVEL信號(hào)、表示游程長(zhǎng)度的RUN信號(hào)以及表示最終數(shù)據(jù)信息的LAST信號(hào)進(jìn)行的三維可變長(zhǎng)度編碼。
(實(shí)施方式7)以下,參照
本發(fā)明的實(shí)施方式7涉及的編碼裝置。關(guān)于結(jié)構(gòu)和實(shí)施方式1相同的部分,通過(guò)賦予同一標(biāo)號(hào)來(lái)省略其詳細(xì)說(shuō)明。在本實(shí)施方式7中,也說(shuō)明1塊數(shù)據(jù)是8×8個(gè)時(shí)的情況。
圖27表示本發(fā)明的實(shí)施方式7涉及的編碼裝置的概略結(jié)構(gòu)圖。相對(duì)實(shí)施方式1,本實(shí)施方式7的特征是,具有時(shí)鐘控制單元602,根據(jù)存儲(chǔ)在信息寄存器4的信息,控制向數(shù)據(jù)緩沖器5的時(shí)鐘供給。輸入單元2、比較判定單元3、信息寄存器4、寫(xiě)入控制單元6、讀出控制單元7的動(dòng)作和實(shí)施方式1相同。
時(shí)鐘控制單元602根據(jù)存儲(chǔ)在信息寄存器4的信息,例如將數(shù)值不是0的數(shù)據(jù)表示為‘1’時(shí),通過(guò)累積‘1’的個(gè)數(shù)可以判定當(dāng)前塊內(nèi)數(shù)值不是0的數(shù)據(jù)有幾個(gè)。
因此,時(shí)鐘控制單元602僅在讀出控制單元7根據(jù)存儲(chǔ)在信息寄存器4的信息向數(shù)據(jù)緩沖器5只輸出數(shù)值不是0的數(shù)據(jù)的地址期間,即僅在處于數(shù)值不是0的數(shù)據(jù)的期間向數(shù)據(jù)緩沖器5供給時(shí)鐘。
如上所述,時(shí)鐘控制單元602根據(jù)存儲(chǔ)在信息寄存器4的信息,僅向數(shù)據(jù)緩沖器5供給同數(shù)值不是0的數(shù)據(jù)個(gè)數(shù)相應(yīng)的時(shí)鐘,所以能夠抑止功耗,實(shí)現(xiàn)低功率化。
(實(shí)施方式8)以下,參照
本發(fā)明的實(shí)施方式8涉及的編碼裝置。本實(shí)施方式8把實(shí)施方式1的整個(gè)處理劃分成多個(gè)處理,通過(guò)進(jìn)行類似流水線處理的先行控制,實(shí)現(xiàn)編碼處理的快速化。在本實(shí)施方式8中,也說(shuō)明1塊數(shù)據(jù)是8×8個(gè)時(shí)的情況。
圖28表示本發(fā)明的實(shí)施方式8涉及的編碼裝置的概略結(jié)構(gòu)圖。在圖28中,把整個(gè)編碼處理劃分成截止到向數(shù)據(jù)緩沖器進(jìn)行寫(xiě)入處理的第一處理,和從數(shù)據(jù)緩沖器進(jìn)行讀出處理以后的第二處理,對(duì)此進(jìn)行說(shuō)明。
首先,702表示順序輸入1塊8×8個(gè)數(shù)據(jù)的輸入單元,703表示判定從輸入單元702輸入的數(shù)據(jù)的數(shù)值是否是0的比較判定單元,704表示根據(jù)比較判定單元703的判定存儲(chǔ)同數(shù)據(jù)的值是否是0相關(guān)的信息的8×8比特的第一信息寄存器,705表示存儲(chǔ)從輸入單元702輸入的數(shù)據(jù)的第一數(shù)據(jù)緩沖器,706表示控制向第一數(shù)據(jù)緩沖器705的數(shù)據(jù)寫(xiě)入的寫(xiě)入控制單元。
707表示處理器,對(duì)存儲(chǔ)在第一信息寄存器704的信息和存儲(chǔ)在第一數(shù)據(jù)緩沖器705的數(shù)據(jù)進(jìn)行量化處理,并轉(zhuǎn)送到第二信息寄存器709和第二數(shù)據(jù)緩沖器708。
710表示控制從第二數(shù)據(jù)緩沖器708進(jìn)行的數(shù)據(jù)讀出的讀出控制單元,711表示游程長(zhǎng)度編碼單元,根據(jù)從第二數(shù)據(jù)緩沖器708讀出的數(shù)據(jù)和存儲(chǔ)在第二信息寄存器709的信息,計(jì)算出數(shù)值連續(xù)是0的數(shù)據(jù)的個(gè)數(shù),進(jìn)行游程長(zhǎng)度編碼,712表示可變長(zhǎng)度編碼單元,將從游程長(zhǎng)度編碼單元711輸出的數(shù)值連續(xù)是0的數(shù)據(jù)的個(gè)數(shù)和數(shù)據(jù)作為一對(duì)數(shù)據(jù)使用,進(jìn)行可變長(zhǎng)度編碼,713表示輸出來(lái)自可變長(zhǎng)度編碼單元712的編碼數(shù)據(jù)的輸出單元。
在第一處理,首先從,將例如在JPEG中使用的DCT的結(jié)果為1塊8×8個(gè)的數(shù)據(jù)作為一個(gè)單位輸入到輸入單元702,通過(guò)比較判定單元703判定所輸入的全部數(shù)據(jù)的值是否是0。
將比較判定單元703的判定結(jié)果存儲(chǔ)到第一信息寄存器704中,例如,數(shù)值是0時(shí)存儲(chǔ)為‘0’,數(shù)值不是0時(shí)存儲(chǔ)為‘1’。
在比較判定單元703判定從輸入單元702輸入的數(shù)據(jù)的同時(shí),寫(xiě)入控制單元706順序更新例如由RAM等構(gòu)成的第一數(shù)據(jù)緩沖器705的地址,寫(xiě)入從輸入單元702輸入的DCT系數(shù)。
處理器707讀入存儲(chǔ)在第一信息寄存器704的8×8比特的信息,訪問(wèn)第一數(shù)據(jù)緩沖器705中相當(dāng)于第一信息寄存器704中存儲(chǔ)著‘1’的比特的地址,讀出數(shù)值不是0的數(shù)據(jù),按圖6所示進(jìn)行地址過(guò)渡,從而只讀出數(shù)值連續(xù)為非0的數(shù)據(jù)。
另外,處理器707在從第一數(shù)據(jù)緩沖器705讀出數(shù)值不是0的數(shù)據(jù)后,通過(guò)量化處理生成量化系數(shù),在量化系數(shù)不是0時(shí),向第二數(shù)據(jù)緩沖器708的、同第一數(shù)據(jù)緩沖器705的讀出地址相同的地址中寫(xiě)入生成的量化系數(shù)。
并且,向第二信息寄存器709的規(guī)定比特中寫(xiě)入同所寫(xiě)入量化系數(shù)是否是0有關(guān)的信息。此時(shí),處理器707在進(jìn)行向第二數(shù)據(jù)緩沖器708的寫(xiě)入處理之前,需要把第二信息寄存器709的所有比特設(shè)為‘0’。即,需要把第二信息寄存器709初始化。
以下,第二讀出控制單元710、第二游程長(zhǎng)度編碼單元711、第二可變長(zhǎng)度編碼單元712的動(dòng)作和實(shí)施方式1中對(duì)應(yīng)的讀出控制單元7、游程長(zhǎng)度編碼單元8和可變長(zhǎng)度編碼單元9相同。
采用通過(guò)處理器707來(lái)設(shè)置上述第一處理和第二處理的結(jié)構(gòu),可以縮短處理之間轉(zhuǎn)送數(shù)據(jù)時(shí)的讀出處理和寫(xiě)入處理時(shí)間。因此,能夠從整體上使編碼處理快速化。
另外,處理器707既可以逐個(gè)對(duì)每個(gè)數(shù)據(jù)交替進(jìn)行從數(shù)據(jù)緩沖器705的數(shù)據(jù)讀出處理和向第二數(shù)據(jù)緩沖器708的寫(xiě)入處理,也可以在數(shù)值不是0的數(shù)據(jù)的讀出全部結(jié)束后進(jìn)行寫(xiě)入處理。
信息寄存器709也可以是在1塊數(shù)據(jù)處理結(jié)束后自動(dòng)將所有比特初始化使為‘0’的結(jié)構(gòu)。
另外,也可以考慮圖29所示的結(jié)構(gòu)。在圖29中,把第二處理特定為具體的編碼處理。
即,處理器707根據(jù)存儲(chǔ)在信息寄存器704的信息,從數(shù)據(jù)緩沖器705讀出數(shù)值不是0的數(shù)據(jù)的同時(shí),求出當(dāng)前的信息寄存器704中的比特位置和同上次讀出的數(shù)據(jù)末尾相當(dāng)?shù)男畔⒓拇嫫?04中的比特位置之間的區(qū)間、例如圖5中的a,并計(jì)數(shù)數(shù)值是0的數(shù)據(jù)的個(gè)數(shù)進(jìn)行量化處理,從而在量化系數(shù)變?yōu)?時(shí)把數(shù)值是0的數(shù)據(jù)的個(gè)數(shù)增加‘1’,并根據(jù)存儲(chǔ)在信息寄存器704的信息,從數(shù)據(jù)緩沖器705讀出下一個(gè)數(shù)值不是0的數(shù)據(jù)。
在量化系數(shù)不是0時(shí),把該量化系數(shù)輸出到游程長(zhǎng)度編碼單元711,同時(shí)輸出數(shù)值是0的數(shù)據(jù)的累積個(gè)數(shù)。
如上所述,采用通過(guò)處理器來(lái)設(shè)置上述第一處理和第二處理的結(jié)構(gòu),可以縮短在處理之間轉(zhuǎn)送數(shù)據(jù)時(shí)的讀出處理和寫(xiě)入處理時(shí)間,所以能夠從整體上使編碼處理快速化。
如果采用以上所述的本發(fā)明涉及的編碼裝置,根據(jù)存儲(chǔ)在信息寄存器的信息來(lái)控制對(duì)數(shù)據(jù)緩沖器中數(shù)值不是0的數(shù)據(jù)的讀出等,實(shí)現(xiàn)讀出時(shí)間的縮短和寫(xiě)入轉(zhuǎn)送時(shí)間的縮短等,從而可以縮短可變長(zhǎng)度編碼處理中的等待時(shí)間,能夠從整體上使編碼處理快速化。
權(quán)利要求
1.一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼裝置,其特征在于,包括順序輸入1塊m×n個(gè)數(shù)據(jù)的輸入單元;判定用所述輸入單元輸入的各個(gè)數(shù)據(jù)的值是否是0的比較判定單元;存儲(chǔ)與所述比較判定單元的判定結(jié)果相關(guān)的判定結(jié)果信息的信息寄存器;存儲(chǔ)所述輸入單元輸入的數(shù)據(jù)的數(shù)據(jù)緩沖器;讀出控制單元,根據(jù)存儲(chǔ)在所述信息寄存器的所述判定結(jié)果信息,控制對(duì)所述數(shù)據(jù)緩沖器進(jìn)行的所述數(shù)據(jù)的讀出,以便僅讀出所述輸入數(shù)據(jù)的值是非0的數(shù)據(jù);游程長(zhǎng)度編碼單元,使用從所述數(shù)據(jù)緩沖器讀出的數(shù)據(jù)和存儲(chǔ)在所述信息寄存器的所述判定結(jié)果信息,進(jìn)行游程長(zhǎng)度編碼;和可變長(zhǎng)度編碼單元,使用由在所述游程長(zhǎng)度編碼單元求出的數(shù)值連續(xù)是0的數(shù)據(jù)的個(gè)數(shù)和所述輸入數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼。
2.根據(jù)權(quán)利要求1所述的編碼裝置,其特征在于,在所述信息寄存器中,相對(duì)所述塊內(nèi)的數(shù)據(jù)配置,所述判定結(jié)果信息是按Z形掃描順序存儲(chǔ)的。
3.根據(jù)權(quán)利要求1所述的編碼裝置,其特征在于,還包括控制對(duì)所述數(shù)據(jù)緩沖器的所述數(shù)據(jù)寫(xiě)入的寫(xiě)入控制單元,僅在所述比較判定單元判定所述數(shù)據(jù)的值不是0時(shí),所述寫(xiě)入控制單元允許對(duì)所述數(shù)據(jù)緩沖器的寫(xiě)入。
4.根據(jù)權(quán)利要求1所述的編碼裝置,其特征在于,所述數(shù)據(jù)緩沖器具有可以在一個(gè)地址存儲(chǔ)L(L為2以上的自然數(shù))個(gè)輸入數(shù)據(jù)的結(jié)構(gòu),還具有選擇單元,根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,從所述數(shù)據(jù)緩沖器讀出的L個(gè)輸入數(shù)據(jù)中,選擇應(yīng)該把哪個(gè)數(shù)據(jù)輸出到所述游程長(zhǎng)度編碼單元。
5.根據(jù)權(quán)利要求4所述的編碼裝置,其特征在于,所述信息寄存器具有可以存儲(chǔ)m×n比特的判定結(jié)果信息的結(jié)構(gòu),在所述信息寄存器中,僅在與L個(gè)輸入數(shù)據(jù)對(duì)應(yīng)的判定結(jié)果信息中至少一個(gè)比特表示輸入數(shù)據(jù)不是0時(shí),所述讀出控制單元從所述數(shù)據(jù)緩沖器讀出所述L個(gè)輸入數(shù)據(jù)。
6.根據(jù)權(quán)利要求4所述的編碼裝置,其特征在于,所述選擇單元根據(jù)在所述信息寄存器的比特中對(duì)應(yīng)L個(gè)輸入數(shù)據(jù)的L比特的判定結(jié)果信息,選擇從所述數(shù)據(jù)緩沖器讀出的L個(gè)輸入數(shù)據(jù)。
7.根據(jù)權(quán)利要求1所述的編碼裝置,其特征在于,所述信息寄存器具有可以按分別不同的排列順序、以m×n比特存儲(chǔ)所述判定結(jié)果信息的結(jié)構(gòu),并且由多個(gè)所述信息寄存器構(gòu)成信息寄存器組,還具有輸入用于表示由所述輸入單元輸入的數(shù)據(jù)的塊特征的特征信息的第二輸入單元,和根據(jù)從所述第二輸入單元輸入的所述特征信息從所述信息寄存器組選擇任一信息寄存器的寄存器選擇單元。
8.根據(jù)權(quán)利要求2所述的編碼裝置,其特征在于,具有輸出切換單元,該輸出切換單元具有多個(gè)把所述信息寄存器、所述數(shù)據(jù)緩沖器、所述寫(xiě)入控制單元和所述讀出控制單元作為1個(gè)系統(tǒng)的處理系統(tǒng),對(duì)從隸屬于哪個(gè)處理系統(tǒng)的數(shù)據(jù)緩沖器向所述掃描長(zhǎng)度編碼單元進(jìn)行輸出做切換控制,并同時(shí)進(jìn)行向所述處理系統(tǒng)之一的數(shù)據(jù)緩沖器的寫(xiě)入處理和向其他處理系統(tǒng)的數(shù)據(jù)緩沖器的讀出處理。
9.根據(jù)權(quán)利要求1所述的編碼裝置,其特征在于,還包括代碼字?jǐn)?shù)累積單元,根據(jù)信息寄存器的判定結(jié)果信息,累積不是0的輸入數(shù)據(jù)的個(gè)數(shù)。
10.根據(jù)權(quán)利要求9所述的編碼裝置,其特征在于,還包括區(qū)域設(shè)定單元,設(shè)定應(yīng)成為代碼字?jǐn)?shù)累積單元的累積處理對(duì)象的1塊內(nèi)的區(qū)域。
11.根據(jù)權(quán)利要求9所述的編碼裝置,其特征在于,還具有設(shè)定所述代碼字?jǐn)?shù)累積單元的累積值的界限值的界限值設(shè)定單元,和對(duì)所述累積值與所述界限值進(jìn)行比較的比較單元。
12.根據(jù)權(quán)利要求1所述的編碼裝置,其特征在于,還具有最終數(shù)據(jù)判定單元,根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,在從數(shù)據(jù)緩沖器讀出的輸入數(shù)據(jù)被判定為是數(shù)據(jù)塊內(nèi)最后的非0的輸入數(shù)據(jù)時(shí),把表示該輸入數(shù)據(jù)是最終數(shù)據(jù)的信息輸出到所述可變長(zhǎng)度編碼單元。
13.根據(jù)權(quán)利要求1所述的編碼裝置,其特征在于,還具有控制對(duì)所述數(shù)據(jù)緩沖器的供給時(shí)鐘的時(shí)鐘控制單元,所述時(shí)鐘控制單元根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,僅在所述輸入數(shù)據(jù)的值不是0的期間,向所述數(shù)據(jù)緩沖器供給時(shí)鐘。
14.一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼裝置,其特征在于,具有順序輸入1塊m×n個(gè)數(shù)據(jù)的輸入單元、處理器、第一處理單元和第二處理單元,其中,第一處理單元包括比較并判定用所述輸入單元輸入的各個(gè)數(shù)據(jù)的值是否是0的比較判定單元;存儲(chǔ)與所述比較判定單元的判定結(jié)果相關(guān)的第一判定結(jié)果信息的第一信息寄存器;存儲(chǔ)用所述輸入單元輸入的數(shù)據(jù)的第一數(shù)據(jù)緩沖器;和控制對(duì)所述第一數(shù)據(jù)緩沖器的所述數(shù)據(jù)寫(xiě)入的寫(xiě)入控制單元;第二處理單元包括存儲(chǔ)所述第二數(shù)據(jù)的第二數(shù)據(jù)緩沖器;存儲(chǔ)與所述第二數(shù)據(jù)的值是否是0相關(guān)的第二判定結(jié)果信息的第二信息寄存器;讀出控制單元,根據(jù)存儲(chǔ)在所述第二信息寄存器的所述第二判定結(jié)果信息,控制從所述第二數(shù)據(jù)緩沖器進(jìn)行的所述第二數(shù)據(jù)的讀出;游程長(zhǎng)度編碼單元,使用從所述第二數(shù)據(jù)緩沖器讀出的所述第二數(shù)據(jù)和存儲(chǔ)在所述第二信息寄存器的所述第二判定結(jié)果信息,進(jìn)行游程長(zhǎng)度編碼;和可變長(zhǎng)度編碼單元,使用由在所述游程長(zhǎng)度編碼單元求出的數(shù)值連續(xù)是0的所述第二數(shù)據(jù)的個(gè)數(shù)和所述第二數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼;所述處理器根據(jù)存儲(chǔ)在所述第一信息寄存器的信息,從所述第一數(shù)據(jù)緩沖器讀出所述數(shù)據(jù),生成第二數(shù)據(jù);所述讀出控制單元根據(jù)所述第二信息寄存器的第二判定結(jié)果信息,從所述第二數(shù)據(jù)緩沖器僅讀出數(shù)值不是0的所述第二數(shù)據(jù),所述游程長(zhǎng)度編碼單元把所述第二信息寄存器中的第二判定結(jié)果信息表示所述第二數(shù)據(jù)值不是0的區(qū)間,作為數(shù)值連續(xù)是0的所述第二數(shù)據(jù)的個(gè)數(shù)輸出到所述可變長(zhǎng)度編碼單元。
15.根據(jù)權(quán)利要求14所述的編碼裝置,其特征在于,所述處理器在所生成的第二數(shù)據(jù)的值是0時(shí)不輸出所述第二數(shù)據(jù),而累積數(shù)值是0的所述第二數(shù)據(jù)的個(gè)數(shù),在所生成的第二數(shù)據(jù)的值不是0時(shí)輸出所述第二數(shù)據(jù),同時(shí)向所述游程長(zhǎng)度編碼單元輸出數(shù)值是0的所述第二數(shù)據(jù)的累積個(gè)數(shù)。
16.一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼裝置,其特征在于,包括順序輸入1塊m×n個(gè)數(shù)據(jù)的輸入單元;判定用所述輸入單元輸入的各個(gè)數(shù)據(jù)的值是否是0的比較判定單元;存儲(chǔ)用所述輸入單元輸入的數(shù)據(jù)的數(shù)據(jù)緩沖器;存儲(chǔ)在所述比較判定單元被判定為數(shù)值不是0的所述數(shù)據(jù)在所述數(shù)據(jù)緩沖器中的地址的地址存儲(chǔ)單元;讀出控制單元,根據(jù)存儲(chǔ)在所述地址存儲(chǔ)單元的所述地址,控制從所述數(shù)據(jù)緩沖器進(jìn)行的所述數(shù)據(jù)的讀出;游程長(zhǎng)度編碼單元,使用從所述數(shù)據(jù)緩沖器讀出的所述輸入數(shù)據(jù)和存儲(chǔ)在所述地址存儲(chǔ)單元的所述地址,進(jìn)行游程長(zhǎng)度編碼;和可變長(zhǎng)度編碼單元,使用由在所述游程長(zhǎng)度編碼單元求出的數(shù)值連續(xù)是0的所述數(shù)據(jù)的個(gè)數(shù)和所述數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼;所述讀出控制單元根據(jù)存儲(chǔ)在所述地址存儲(chǔ)單元的所述地址,從所述數(shù)據(jù)緩沖器僅讀出數(shù)值不是0的所述數(shù)據(jù),所述游程長(zhǎng)度編碼單元把上次從所述地址存儲(chǔ)單元讀出的地址和此次讀出的地址的差分,作為數(shù)值是0的所述數(shù)據(jù)的個(gè)數(shù)輸出到所述可變長(zhǎng)度編碼單元。
17.根據(jù)權(quán)利要求16所述的編碼裝置,其特征在于,所述游程長(zhǎng)度編碼單元按照Z(yǔ)形掃描順序計(jì)算從所述數(shù)據(jù)緩沖器讀出的地址和前一次讀出的地址之間的差分,把所述差分作為數(shù)值是0的所述數(shù)據(jù)的個(gè)數(shù)輸出到所述可變長(zhǎng)度編碼單元。
18.根據(jù)權(quán)利要求16所述的編碼裝置,其特征在于,利用處理器實(shí)現(xiàn)所述地址存儲(chǔ)單元和所述讀出控制單元。
19.一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼方法,其特征在于,包括順序輸入1塊m×n個(gè)數(shù)據(jù)的步驟;判定所輸入的各個(gè)所述數(shù)據(jù)的值是否是0的步驟;把與所述判定結(jié)果相關(guān)的判定結(jié)果信息存儲(chǔ)到信息寄存器中的步驟;把所述輸入數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)緩沖器中的步驟;根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,從所述數(shù)據(jù)緩沖器有選擇地讀出數(shù)據(jù)的步驟;使用從所述數(shù)據(jù)緩沖器讀出的數(shù)據(jù)和所述判定結(jié)果信息,進(jìn)行游程長(zhǎng)度編碼的步驟;和使用由在所述進(jìn)行游程長(zhǎng)度編碼的步驟求出的數(shù)值連續(xù)是0的所述數(shù)據(jù)的個(gè)數(shù)和所述數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼的步驟。
20.根據(jù)權(quán)利要求19所述的編碼方法,其特征在于,,把可以在一個(gè)地址存儲(chǔ)L(L為2以上的自然數(shù))個(gè)所述數(shù)據(jù)的緩沖器作為數(shù)據(jù)緩沖器使用,從所述數(shù)據(jù)緩沖器有選擇地讀出數(shù)據(jù)的步驟包括根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,選擇應(yīng)該把從所述數(shù)據(jù)緩沖器讀出的L個(gè)所述數(shù)據(jù)中的哪些數(shù)據(jù)轉(zhuǎn)送到游程長(zhǎng)度編碼步驟的步驟,和把所選擇的數(shù)據(jù)轉(zhuǎn)送到游程長(zhǎng)度編碼步驟的步驟。
21.根據(jù)權(quán)利要求19所述的編碼方法,其特征在于,所述信息寄存器具有可以按分別不同的排列順序、以m×n比特存儲(chǔ)所述判定結(jié)果信息的結(jié)構(gòu),并且使用由多個(gè)所述信息寄存器構(gòu)成的信息寄存器組,還包括輸入用于表示輸入數(shù)據(jù)的塊特征的特征信息的步驟,和根據(jù)所輸入的所述特征信息,從所述信息寄存器組選擇任一信息寄存器的步驟。
22.根據(jù)權(quán)利要求19所述的編碼方法,其特征在于,還包括同時(shí)執(zhí)行多個(gè)處理系統(tǒng)并控制在所述多個(gè)處理系統(tǒng)中的哪一個(gè)處理系統(tǒng)中把從數(shù)據(jù)緩沖器讀出的數(shù)據(jù)轉(zhuǎn)送到游程長(zhǎng)度編碼步驟的步驟,同時(shí)執(zhí)行所述多個(gè)處理系統(tǒng)之一的向所述數(shù)據(jù)緩沖器的寫(xiě)入處理和其他處理系統(tǒng)中的對(duì)所述數(shù)據(jù)緩沖器的讀出處理,其中,所述處理系統(tǒng)包括把所述判定結(jié)果信息存儲(chǔ)在所述信息寄存器中的步驟;把所述輸入數(shù)據(jù)存儲(chǔ)在所述數(shù)據(jù)緩沖器中的步驟;和根據(jù)所述判定結(jié)果信息,從所述數(shù)據(jù)緩沖器有選擇地讀出數(shù)據(jù)的步驟。
23.根據(jù)權(quán)利要求19所述的編碼方法,其特征在于,還包括根據(jù)所述信息寄存器的判定結(jié)果信息,累積不是0的輸入數(shù)據(jù)的個(gè)數(shù)的步驟。
24.根據(jù)權(quán)利要求23所述的編碼方法,其特征在于,還包括設(shè)定應(yīng)成為所述累積處理對(duì)象的1塊內(nèi)的區(qū)域的步驟。
25.根據(jù)權(quán)利要求23所述的編碼方法,其特征在于,還包括設(shè)定累積值的界限值的步驟;比較所述累積值和所述界限值的比較步驟;和根據(jù)所述比較結(jié)果對(duì)所述可變長(zhǎng)度編碼步驟進(jìn)行控制、以便把編碼后的數(shù)據(jù)容量控制在規(guī)定范圍內(nèi)的步驟。
26.根據(jù)權(quán)利要求19所述的編碼方法,其特征在于,還包括根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,判定從數(shù)據(jù)緩沖器讀出的輸入數(shù)據(jù)是否是數(shù)據(jù)塊內(nèi)最后的非0的輸入數(shù)據(jù)的步驟,在判定為是最后的非0的輸入數(shù)據(jù)時(shí),把表示該輸入數(shù)據(jù)是最終數(shù)據(jù)的信息輸出到所述可變長(zhǎng)度編碼步驟。
27.根據(jù)權(quán)利要求19所述的編碼方法,其特征在于,包括控制對(duì)所述數(shù)據(jù)緩沖器的供給時(shí)鐘的步驟,根據(jù)存儲(chǔ)在所述信息寄存器的判定結(jié)果信息,僅在所述數(shù)據(jù)的值不是0的期間,向所述數(shù)據(jù)緩沖器供給時(shí)鐘。
28.一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼方法,其特征在于,具有第一處理步驟和第二處理步驟,其中,第一處理步驟包括順序輸入1塊m×n個(gè)數(shù)據(jù)的步驟;判定各個(gè)輸入數(shù)據(jù)的值是否是0的步驟;把與所述判定結(jié)果相關(guān)的判定結(jié)果信息存儲(chǔ)在第一信息寄存器的步驟;和把所述輸入數(shù)據(jù)存儲(chǔ)在第一數(shù)據(jù)緩沖器的步驟;第二處理步驟包括根據(jù)存儲(chǔ)在所述第一信息寄存器的信息,從所述第一數(shù)據(jù)緩沖器讀出數(shù)據(jù),生成第二數(shù)據(jù)的步驟;把所述第二數(shù)據(jù)存儲(chǔ)在第二數(shù)據(jù)緩沖器的步驟;把與所述第二數(shù)據(jù)的值是否是0相關(guān)的第二判定結(jié)果信息存儲(chǔ)在第二信息寄存器的步驟;根據(jù)存儲(chǔ)在所述第二信息寄存器的所述第二判定結(jié)果信息,控制從所述第二數(shù)據(jù)緩沖器進(jìn)行的所述第二數(shù)據(jù)的讀出的步驟;使用從所述第二數(shù)據(jù)緩沖器讀出的所述第二數(shù)據(jù)和存儲(chǔ)在所述第二信息寄存器的所述第二判定結(jié)果信息,進(jìn)行游程長(zhǎng)度編碼的步驟;和使用由在所述進(jìn)行游程長(zhǎng)度編碼的步驟求出的數(shù)值連續(xù)是0的所述第二數(shù)據(jù)的個(gè)數(shù)和所述第二數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼的步驟;并且,根據(jù)所述第二信息寄存器,從所述第二數(shù)據(jù)緩沖器僅讀出數(shù)值不是0的所述第二數(shù)據(jù),在所述進(jìn)行游程長(zhǎng)度編碼的步驟中,把所述第二信息寄存器中的第二判定結(jié)果信息表示所述第二數(shù)據(jù)值不是0的區(qū)間,作為連續(xù)數(shù)值是0的所述第二數(shù)據(jù)的個(gè)數(shù)轉(zhuǎn)送到進(jìn)行所述可變長(zhǎng)度編碼的步驟。
29.一種進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼方法,其特征在于,包括順序輸入1塊m×n個(gè)數(shù)據(jù)的步驟;判定各個(gè)輸入數(shù)據(jù)的值是否是0的步驟;把所述輸入數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)緩沖器的步驟;把被判定為數(shù)值不是0的所述數(shù)據(jù)在所述數(shù)據(jù)緩沖器中的地址存儲(chǔ)在地址存儲(chǔ)單元的步驟;根據(jù)存儲(chǔ)在所述地址存儲(chǔ)單元的所述地址,從所述數(shù)據(jù)緩沖器讀出所述數(shù)據(jù)的步驟;使用從所述數(shù)據(jù)緩沖器讀出的所述數(shù)據(jù)和所存儲(chǔ)的所述地址,進(jìn)行游程長(zhǎng)度編碼的步驟;和使用由在所述進(jìn)行游程長(zhǎng)度編碼的步驟求出的數(shù)值連續(xù)是0的所述數(shù)據(jù)的個(gè)數(shù)和所述數(shù)據(jù)形成的一對(duì)數(shù)據(jù),進(jìn)行可變長(zhǎng)度編碼的步驟;并且,根據(jù)存儲(chǔ)在所述存儲(chǔ)單元的所述地址,從所述數(shù)據(jù)緩沖器僅讀出數(shù)值不是0的所述數(shù)據(jù),把上次讀出的地址和此次讀出的地址的差分,作為數(shù)值是0的輸入數(shù)據(jù)的個(gè)數(shù)轉(zhuǎn)送到所述進(jìn)行可變長(zhǎng)度編碼的步驟。
全文摘要
本發(fā)明提供一種通過(guò)減少進(jìn)行可變長(zhǎng)度編碼處理的等待時(shí)間,實(shí)現(xiàn)進(jìn)一步快速化的編碼裝置及方法。進(jìn)行游程長(zhǎng)度編碼和可變長(zhǎng)度編碼的編碼裝置,順序輸入1塊m×n個(gè)數(shù)據(jù),判定各個(gè)輸入數(shù)據(jù)的值是否是0,把判定結(jié)果存儲(chǔ)在信息寄存器中,同時(shí)把輸入數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)緩沖器中,根據(jù)判定結(jié)果,控制從所述數(shù)據(jù)緩沖器進(jìn)行的數(shù)據(jù)讀出,使用從數(shù)據(jù)緩沖器讀出的數(shù)據(jù)和判定結(jié)果進(jìn)行游程長(zhǎng)度編碼,將數(shù)值連續(xù)是0的數(shù)據(jù)的個(gè)數(shù)和數(shù)據(jù)作為一對(duì)數(shù)據(jù)使用,進(jìn)行可變長(zhǎng)度編碼。
文檔編號(hào)H04N7/26GK1501716SQ20031011814
公開(kāi)日2004年6月2日 申請(qǐng)日期2003年11月13日 優(yōu)先權(quán)日2002年11月14日
發(fā)明者高倉(cāng)憲太郎, 二, 北村臣二 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社