專利名稱:高速可變長解碼裝置的制作方法
技術領域:
本發明涉及一種對可變長編碼數據進行解碼的裝置,更具體地說是涉及使信號處理頻率高的數據傳送系統的可變長解碼的處理速度得到提高的高速可變長解碼裝置。
高清晰度電視、高清晰度錄像機、數字錄像機、數字攝象機以及多媒體機等系統一般都是對圖象信息與聲音信息進行數字化處理后再記錄或傳輸的。對圖信息進行數字化處理已提出的方法有預測編碼法、正交變換編碼法以及可變長編碼法等。為了有效地壓縮圖象信息,使用這類編碼技術的典型編碼系統對分割圖象所得的數據塊進行正交變換編碼、量化與可變長編碼等。該系統為了進一步提高數據壓縮率還進行幀間或場間的預測編碼。
上述可變長編碼裝置因為是根據符號發生頻度壓縮信息的,因此具有對輸入的符號進行可變長編碼的可變長編碼表。這可變長編碼表是根據哈夫曼編碼(Huffman coding)方法設計的。如所周知,哈夫曼編碼給發生頻度相對高的符號分配短碼,給發生頻度相對低的符號分配長碼。在典型的編碼系統中,可變長編碼裝置輸入的符號通常是行程長度(run-length)編碼所得的[行程、量級]符號。[行程、量級]符號是用眾所周知的鋸齒形掃描得到的,“行程”表示不連續為“0”的,存在于變換系數間的連續的“0”的個數,“量級”表示不為“0”的變換系數的值。根據哈夫曼編碼方法設計的可變長編碼表,可以分為“行程”或“量級”中的一個具有相對極大值的符號的換碼(escape)區域與其他符號的正常(regular)區域。正常區域內[行程、量級]符號按哈夫曼編碼方法被分配編碼。換碼區域內的[行程、量級]符號由于統計發生頻度極低所以分配給相對長的編碼并分配表示換碼區域內的[行程、量級]符號的“ESC碼”。由可變長編碼生成的碼字以ESC碼與表示數據塊端的EOB碼等追加了附加信息的位流形態傳輸到解碼系統中。
解碼系統進行與編碼系統的信號處理過程相反的過程,使編碼信息解碼,因此具有可變長解碼器、逆量化器與逆正交變換器等。參照
圖1所示的現有可變長編碼裝置,可變長編碼數據以串行或并列的位流形態輸入FIFO存貯器11。FIFO存貯器11將輸入的可變長編碼數據存儲起來,當每次從接口12施加讀出信號READ時將存儲的數據中最先輸入的位流輸出到接口12。接口12根據加入從FIFO存貯器11輸出數據的開始碼將可變長編碼數據與其他附加數據區分開來。接口12根據來自桶式移位器14的數據請求信號RQST,將事先設定位數的數據,例如32位的數據輸出到桶式移位器14。
桶式移位器14將大小按編碼表15附加的碼長設定的窗口移位,并把移位窗口內的數據輸出到[行程、量級]表16與編碼表15。[行程、量級]表16把根據加入桶式移位器14輸出數據內的編碼的[行程、量級]符號輸出到位于后面的[行程、量級]解碼器17。編碼表15用桶式移位器14的輸出數據,將[行程、量級]表16輸出的對應[行程、量級]符號的碼長輸出到桶式移位器14。桶式移位器14將按新輸出的碼長移位的窗口內的位數據再輸出到[行程、量級1表16與編碼表15。桶式移位器14和[行程、量級]表16與編碼表15通過反復進行該動作,對接口12提供的數據進行可變長編碼。
順序控制器13控制接口12與桶式移位器14的動作中止并再啟動被中止的動作。因此,順序控制器13響應從外部控制的輸入與由桶式移位器14輸出的數據得到的參數生成開始信號START或中止信號HOLD。該信號START與HOLD施加到接口12與桶式移位器14。解碼器17將[行程、量級]表16施加的[行程、量級]符號解碼,輸出到位于后面的逆量化器IQ/逆正交變換器IDCT(圖中未表示出)。這里,圖2A-圖2C是表示[行程、量級]解碼器17的動作時序圖。[行程、量級]表16生成的[行程、量級]符號為[5、3][3、2]……時,[行程、量級]解碼器17按一定的時鐘率生成的圖2C的時鐘脈沖,如圖2A所示,對輸入[行程、量級]符號產生行程長度的數據“0”群與跟隨“0”群的級別。這就是說,對[行程、量級]符號[5、3]輸出五個“0”,然后輸出“3”的級別值,對[3、2]輸出三個“0”,然后輸出“2”的級別值。這時,[行程、量級]解碼器17在與行程長度一致個數的時鐘脈沖生成期間產生中止桶式移位器14動作的低電平中止信號HOLDA。這就是說,對[行程、量級]符號[5、3],在產生行程長度為5的時鐘脈沖期間、產生圖2C所示的中止信號HOLDA,以中止桶式移位器14移位動作。對符號[3、2],在行程長度3的時鐘脈沖生成期間生成中止桶式移位器14移位動作的低電平的中止信號HOLDA。
但是,在該現有的可變長解碼裝置中,[行程、量級]解碼器17在連續輸出“0”時桶式移位器14的動作也停止了。這樣,現有的可變長解碼裝置只能用于動作速度不高的系統。在單位時間里需要對更多符號解碼的高清晰度電視之類的高速系統就難以使用。
本發明的目的是提供一種能獨立進行[行程、量級]符號的生成動作和[行程、量級]符號的解碼動作,消除因桶式移位器動作中止而產生的相當于行程長度的延遲時間的高速可變長解碼裝置。
為了實現上述的發明目的,對可變長編碼數據進行解碼的可變長解碼裝置具有用以存儲可變長編碼數據并根據數據存儲狀態信號按事先設定的數據量分別輸出被存儲的可變長編碼數據的存儲與輸出裝置,輸出由上述存儲與輸出裝置輸出的數據決定的[行程、量級]符號的[行程、量級]表,以先入先出(FIFO)方式存儲與輸出上述[行程、量級]表輸出的[行程、量級]符號并生成表示自己的數據存儲狀態信號的存貯器,以及將來自上述存貯器的[行程、量級]符號進行行程量級解碼的[行程、量級]解碼器。
附圖簡要說明圖1表示原來的可變長解碼裝置的結構圖。
圖2A-2C為說明圖1裝置動作的時序圖。
圖3表示本發明的最佳實施例的高速可變長解碼裝置的結構圖。
圖4A-4E為說明圖3裝置動作的時序圖。
下面,參照附圖對本發明的最佳實施例進行詳細說明。
圖3表示本發明的最佳實施例的高速可變長解碼裝置。圖3的裝置具有與圖1相對應的方框及實現同一功能的方框,該方框具有與圖1所示的相應方框同樣的參照標號。根據本發明的圖3的裝置,包含有位于[行程、量級]表16與[行程、量級]解碼器38之間的、存儲[行程、量級]符號的FIFO存貯器37,根據FIFO存貯器37的數據存儲狀態控制接口12以及桶式移位器14的動作的順序控制器33,以及按數據塊單位存儲[行程、量級]解碼器38輸出的經行程量級解碼的數據的數據塊存貯器39。
FIFO存貯器11存儲串行或并列的位流形態的可變長編碼數據,每次由接口12加上讀出信號READ時將存儲數據中最先輸入的數據輸出到接口12。接口12在每次由桶式移位器14加上數據請求信號RQST時向FIFO存貯器11輸出讀出信號READ。接口12根據由FIFO存儲器11輸出的可變長編碼數據中加入的、表示任意區間開始的開始碼,響應數據請求信號RQST,將FIFO存貯器11輸出的可變長編碼數據調整成可以輸出的形態。只要得到接口12調整過的可變長編碼數據,桶式移位器14將按編碼表15輸出的碼長移位的窗口內的可變長編碼數據輸出到編碼表15與[行程、量級]表16。[行程、量級]表16把對應于由桶式移位器14輸出的可變長編碼數據內的碼字的[行程、量級]符號輸出到FIFO存貯器37。
另一方面,編碼表15將由桶式移位器14輸出的可變長編碼數據內的碼字的碼長輸出到桶式移位器14。該碼長是對應于同一可變長編碼數據經可變長解碼后得到的[行程、量級]符號的碼字的長度。桶式移位器14將大小按由編碼表15新輸出的碼長設定的窗口移位,將移位窗口內的可變長編碼數據輸出到[行程、量級]表16與編碼表15。桶式移位器14和[行程、量級]表16與編碼表15反復進行該動作。沒有進行可變長解碼的數據在編碼表15決定相應的[行程、量級]符號前重新輸出到桶式移位器14。該桶式移位動作是采用桶式移位的可變長解碼技術的技術人員熟知的,這里省略了具體的說明。
FIFO存貯器37存儲來自[行程、量級]表16的[行程、量級]符號,按輸入順序一個個地提供給[行程、量級]解碼器38。FIFO存貯器37在自己的數據存儲狀態達到充滿狀態時,便向順序控制器33輸出告知該狀態的充滿信號/FULL。
順序控制器33控制接口12與桶式移位器14的動作中止或再啟動被中止的動作。這就是說,順序控制器33通過充滿信號/FULL、外部控制輸入以及變量解碼器(圖中未表示出)受解碼的其他參數的控制,對接口12與桶式移位器14施加開始信號START至中止信號HOLD。響應充滿信號/FULL的順序控制器33在FIFO存貯器37為充滿狀態時,產生中止信號HOLD,該中止信號HOLD被送到接口12與桶式移位器14。響應該中止信號HOLD的接口12與桶式移位器14開始動作,使可變長編碼數據不從桶式移位器14輸出。通過響應充滿信號/FULL的順序控制器33的這一控制,FIFO存貯器37便能將[行程、量級]表16輸出的全部[行程、量級]符號存儲起來。這樣,就不會產生因FIFO存貯器37溢出而丟失[行程、量級]符號的問題。
FIFO存貯器37的數據存儲狀態如為空的狀態時,便向[行程、量級]解碼器38輸出告知該狀態的空信號EMPTY。換言之,FIFO存貯器37在沒有輸出的數據時產生空信號EMPTY。[行程、量級]解碼器38在被加上空信號EMPTY時,也就是說沒有從FIFO存貯器37輸出的數據時,便不進行行程量級解碼動作。但是,在不加空信號EMPTY時,[行程、量級]解碼器38通過FIFO存貯器37,對[行程、量級]表16施加的[行程、量級]符號進行行程量級解碼,將行程量級解碼后的數據輸出到數據塊存貯器39。通過該FIFO存貯器37及[行程、量級]解碼器38的動作,不僅可以防止錯誤的行程量級解碼動作,而且還可以不延遲地對[行程、量級]表16輸出的[行程、量級]符號進行行程量級解碼。
下面,參照圖4A至圖4F所示的時序圖對[行程、量級]符號的行程量級解碼的一個實例進行詳細說明。
FIFO存貯器37存儲的[行程、量級]符號的實例如圖4A所示,為[5、3]、[3、2]、[2、-1]……[3、-2]、[2、1]……。由于[行程、量級]符號[2、-1]的輸入,自己的數據存儲狀態達到充滿狀態時,FIFO存貯器37便以如圖4B所示的低電平狀態向順序控制器33輸出告知充滿狀態的充滿信號/FULL。這樣,順序控制器33便向位流接口12與桶式移位器14輸出圖4C所示的低電平狀態的中止信號HOLD,在施加低電平狀態的中止信號HOLD時,桶式移位器14便不輸出可變長編碼數據,不再產生更多的[行程、量級]符號。解碼器38對FIFO存貯器37輸出的[行程、量級]符號進行行程量級解碼。通過行程量級解碼,各[行程、量級]符號變更為相當于行程長度的數據“0”與其跟隨級別。例如,如圖4D所示,符號[5、3]變更為五個數據“0”及其跟隨級別值“3”。對[行程、量級]符號的該行程量級解碼對于跟隨[5、3]的符號[3、2]、[2、-1]……[2、1]進行同樣的操作,其結果如圖4D所示。
在由FIFO存貯器37施加圖4E所示的空信號EMPTY時,也就是說在[行程、量級]解碼器38的動作區間經過時刻,FIFO存貯器37不輸出[行程、量級]符號,[行程、量級]解碼器38也不進行行程量級解碼動作。這個例子的圖4所示的中止區間根據編碼格式在實際的圖象數據等追加了附加信息。
在空信號EMPTY變更為高電平狀態時,[行程、量級]解碼器38對FIFO存貯器37提供的[行程、量級]符號又進行行程量級解碼動作。行程量級解碼后的數據被提供給數據塊存貯器39。
根據相關的圖象標準化MPEG,數據塊大小有8×8象素,IDCT之類的逆正交變換器以數據塊為單位進行反正交變換。這樣,本發明的實施例的數據塊存貯器39是按至少存儲兩個數據塊的數據設計的。該數據塊存貯器39具有在輸出一個存儲單元存儲的一個數據塊的數據時,把行程量級解碼后的數據存儲在另一個存儲單元的雙重存儲單元結構。數據塊存貯器39存儲的數據被輸出到后面的逆量化器(圖中未表示出)IQ或逆離散余弦變換器IDCT等。
如上所述,本發明的高速可變長解碼裝置通過獨立地進行[行程、量級]符號的生成動作與[行程、量級]符號的行程量級解碼動作,可將可變長編碼數據以高信號處理頻率進行可變長解碼。因此,可適用于高清晰度電視等高速解碼系統。不僅如此,由于可以數據塊為單位存儲行程量級解碼后的數據,以較少的數據容量便可實現FIFO存貯,因此可以用ASIC制造該FIFO存貯器。
權利要求
1.一種對可變長編碼數據進行解碼的可變長解碼裝置,其特征是具有用以存儲可變長編碼數據并根據數據存儲狀態信號按事先設定的數據量分別輸出被存儲的可變長編碼數據的存儲與輸出裝置;輸出由上述存儲與輸出裝置輸出的數據決定的[行程、量級]符號的[行程、量級]表;以先入先出方式存儲與輸出上述[行程、量級]表輸出的[行程、量級]符號并生成表示自己的數據存儲狀態信號的存貯器;以及將上述存貯器輸出的[行程、量級]符號進行行程量級解碼的[行程、量級]解碼器。
2.根據權利要求1所述的可變長解碼裝置,其特征是當數據存儲狀態信號表示上述存貯器已得到數據時,上述存儲與輸出裝置中止可變長編碼數據的輸出。
3.根據權利要求1所述的可變長解碼裝置,其特征是上述存貯器產生表示本身沒有存儲數據的空信號,上述[行程、量級]解碼器響應所述空信號中止行程量級解碼操作。
4.根據權利要求1所述的可變長解碼裝置,其特征是還具有以大小已事先設定的數據塊為單位存儲與輸出上述[行程、量級]解碼器輸出的行程量級解碼數據的存貯裝置。
5.根據權利要求4所述的可變長解碼裝置,其特征是上述存貯裝置以數據塊為單位交替存儲與輸出行程量級解碼后的數據。
6.根據權利要求4所述的可變長解碼裝置,其特征是上述數據塊為8×8象素的數據塊。
7.根據權利要求4所述的可變長解碼裝置,其特征是上述存儲裝置至少具有兩個分別存儲一個數據塊的行程量級解碼數據的塊存貯器,上述數據塊存貯器交替存儲與輸出行程量級解碼后的數據。
8.根據權利要求7所述的可變長解碼裝置,其特征是上述數據塊為8×8象素的數據塊。
全文摘要
本發明提供一種能獨立進行[行程、量級]符號的生成動作和[行程、量級]符號的解碼動作,能適用于高清晰度電視等信號處理頻率高的系統的高速可變長解碼裝置。該裝置具有用以存儲、輸出可變長編碼數據的存儲與輸出裝置;輸出[行程、量級]符號的[行程、量級]表;存儲與輸出[行程、量級]符號并生成數據存儲狀態信號的存貯器;及將[行程、量級]符號進行行程量級解碼的[行程、量級]解碼器。
文檔編號H03M7/46GK1154014SQ96121039
公開日1997年7月9日 申請日期1996年10月19日 優先權日1995年10月19日
發明者文憲熙 申請人:三星電子株式會社