TWI343192B - Decoding method - Google Patents

Decoding method Download PDF

Info

Publication number
TWI343192B
TWI343192B TW098119811A TW98119811A TWI343192B TW I343192 B TWI343192 B TW I343192B TW 098119811 A TW098119811 A TW 098119811A TW 98119811 A TW98119811 A TW 98119811A TW I343192 B TWI343192 B TW I343192B
Authority
TW
Taiwan
Prior art keywords
huffman
index value
equal
huffman code
value
Prior art date
Application number
TW098119811A
Other languages
Chinese (zh)
Other versions
TW201044799A (en
Inventor
Wen Shan Wang
Po Wen Cheng
Original Assignee
Ind Tech Res Inst
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ind Tech Res Inst filed Critical Ind Tech Res Inst
Priority to TW098119811A priority Critical patent/TWI343192B/en
Priority to US12/575,799 priority patent/US7898444B2/en
Publication of TW201044799A publication Critical patent/TW201044799A/en
Application granted granted Critical
Publication of TWI343192B publication Critical patent/TWI343192B/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/42Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory
    • H03M7/425Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code using table look-up for the coding or decoding process, e.g. using read-only memory for the decoding process only

Description

13431921343192

, :· TW5226PA 六、發明說明: t 【發明所屬之技術領域】 ^ 本發明係關於一種解碼方法。 【先前技術】 • 制時參照第1圖及第2 81 ’第1崎示係為編碼端 之霍夫曼表,第2圖繪示係為傳統解碼端重建後^霍夫岛 表20。為了確保資料的一致性,編碼端及解碼端必須使用 •相同的霍夫曼表。故此,編碼端會根據霍夫曼表1〇產生 符號陣列Symn及相同位元長度的霍夫曼碼個數陣列 NC[]。符號陣列Sym□包括霍夫曼表1〇的所有符號 (Symbol),且依其所對應之霍夫曼碼的碼值(c〇de ^ 小而大依序來排列碼值所對應之符號,如霍夫曼表ι〇的 霍夫曼碼的碼值由小而大依序為0 2, 3,4, 5, 6, 12,24,48 96, 192, 384(即二進制數字的 〇〇, 〇1〇, 〇11,1〇〇, ι〇ι η/ 1110, 11110’m11〇’1111110,11111110,lllllul〇),所以 #其符號陣列内的符號也照霍夫曼碼之碼值順序排列,故得 其對應之符號陣列為 Sym[]={〇, 1,2, 3, 4, 5, 6, 7, 8, 9, 1〇, 11}。而相同位το長度的霍夫曼碼個數陣列NC□係記錄每 一種位元長度所對應之的霍夫曼碼個數,霍夫曼表對 應之相同位元長度的霍夫曼碼個數陣列1^(:[卜丨〇,丨,5, 1,^ ,1’ 1’ 1’ 0’ 0’ 0’ 〇, 〇, 〇, 0},這表示長度為i的霍夫曼碼 共有〇個;長度為2的霍夫曼碼有!個;長度為3的霍夫 曼碼有5個;長度為4到9的霍夫曼碼各有i個;長度為 10到16的霍夫曼碼都為〇個。編碼端將符號陣列办叫] 3 寸343192, :· TW5226PA VI. Description of the invention: t [Technical field to which the invention pertains] ^ The present invention relates to a decoding method. [Prior Art] • Refer to Figure 1 and Figure 2, where the 1st and 2nd 81st is the Huffman table of the coding end, and Figure 2 shows the reconstruction of the traditional decoder. In order to ensure data consistency, the encoder and decoder must use the same Huffman table. Therefore, the encoding end generates the symbol array Symm and the Huffman code number array NC[] of the same bit length according to the Huffman table. The symbol array Sym□ includes all the symbols of the Huffman table 1〇, and the code values corresponding to the Huffman codes corresponding thereto (c〇de ^ small and large, sequentially arrange the symbols corresponding to the code values, For example, the code value of the Huffman code of Huffman table is from 0 to 3, 3, 4, 5, 6, 12, 24, 48 96, 192, 384 (ie, the number of binary digits) , 〇1〇, 〇11,1〇〇, ι〇ι η/ 1110, 11110'm11〇'1111110,11111110,lllllul〇), so #the symbol in the symbol array is also in the code value order of the Huffman code Arranged, so the corresponding symbol array is Sym[]={〇, 1,2, 3, 4, 5, 6, 7, 8, 9, 1〇, 11}. The same bit το length of Hoffman The code number array NC□ records the number of Huffman codes corresponding to each bit length, and the Huffman code number array corresponding to the same bit length of the Huffman table 1^(:[卜丨〇 ,丨,5, 1,^ ,1' 1' 1' 0' 0' 0' 〇, 〇, 〇, 0}, which means that there are a total of Huffman codes of length i; There are five Huffman codes of length 3; Huffman codes of lengths of 4 to 9 each have i ; Huffman code length of 10 to 16 are encoded as a square array of symbols do called terminal] 343 192 3 inches.

TW5226PA 及相同位元長度的霍夫曼.碼個數陣列NC[]儲存於檔頭 (File Header)之中,而後解碼端會根據檔頭之符號陣列 Sym□及相同位元長度的霍夫曼碼個數陣列Nc□重建霍夫 曼表2〇,解碼端並根據霍夫曼表20產生查閱表。 凊>主意:第2圖的霍夫曼碼索引值恰好與其符號值完 全一樣,同時那些符號剛好排列成連續值。這些只不過是 個特殊情形,並非所有的霍夫曼表都有這種情形。The TW5226PA and the Huffman code array NC[] of the same bit length are stored in the File Header, and then the decoder end is based on the symbol array Symy of the head and Hoffman of the same bit length. The code number array Nc□ reconstructs the Huffman table 2〇, and the decoding end generates a lookup table based on the Huffman table 20.凊> Idea: The Huffman code index value of Figure 2 is exactly the same as its symbol value, and those symbols are just arranged in a continuous value. These are just special cases, not all Huffman tables have this situation.

請同時參照第2圖及第3圖,第3圖繪示係為傳統前 導1搜尋(Leading 1 ’s Search)之查閱表。查閱表3〇之查閱 索引值m’等於霍夫曼表2〇中霍夫曼碼的前導i個數,而 查閱表30之霍夫曼碼索引值L〇〇kup[m,]即為霍夫曼表 之霍夫曼碼索引值n’(n,= LG〇kup[m,])。因此,根據待解 碼之位元串的前導!個數,可以獲得對應之查閱表別之 查閱索引值m,。之後,根據查閱索引值m,對應之霍夫曼 碼索引值Looki^m,]可以獲得霍夫曼表2()之霍夫曼碼索 引值η’。最後,根據霍夫曼碼索引值n,開 應之符號、位元長度及霍夫曼碼。 又于 為使傳統前導1搜尋之解碼方法更為清晰易懂,下左 將以位元串〇1】1011為例說明:首先位元率0111011之诗 p個數等於〇,也就是說,查閱表3G之查閱索引值m 接著藉由查閱索引值m,等於0得知查閱表3〇之 =又碼索引值Lookup[m,卜L〇〇kup[〇]=〇。跟著藉由查皮 2〇益之霍夫曼碼索引值LGGkup_得知霍夫曼表2〇之 門二^引值11’等於G,並自霍夫曼碼索引值Π,等於( 開始搜哥霍夫曼表20。 1343192Please refer to Fig. 2 and Fig. 3 at the same time. Figure 3 shows the lookup table of the Leading 1 s Search. Referring to Table 3, the lookup index value m' is equal to the number of leading i of the Huffman code in the Huffman table 2, and the Huffman code index value L〇〇kup[m,] of the lookup table 30 is Huffman code index value n' (n, = LG 〇 kup [m,]). Therefore, according to the leader of the bit string to be decoded! The number of the reference index m can be obtained for the corresponding lookup table. Thereafter, based on the lookup index value m, the corresponding Huffman code index value Looki^m,] can obtain the Huffman code index η' of the Huffman table 2(). Finally, according to the Huffman code index value n, the symbol, the bit length and the Huffman code are specified. In order to make the decoding method of the traditional preamble 1 search more clear and easy to understand, the lower left will take the bit string 〇 1] 1011 as an example: first, the number of poems of the bit rate 0111011 is equal to 〇, that is, the view The reference index value m of Table 3G is then obtained by referring to the index value m, which is equal to 0, and the value of the lookup table 3 又 = code index value Lookup [m, 卜 L 〇〇 kup [〇] = 〇. Followed by the Huffman code index value LGGKup_ by Chapi 2, the Huffman table 2〇门二^引值11' is equal to G, and from the Huffman code index value Π, equal to (start search Brother Hoffman Table 20. 1343192

, it TW5226PA 由於霍夫琴碼索引值n,等於〇對應之霍夫曼碼為〇〇 且位元長度為2,因此將位元串〇〗11〇u前2個最重要位 元01與霍夫曼碼〇〇比較。由於〇 1與〇〇不符因此接著 向下搜尋霍夫曼表20。 下一個霍夫曼碼索引值η,等於丨。由於霍夫曼碼索引 、 值η’等於1對應之霍夫曼碼為010且位元長度為3,因此 將位元串0111011前3個最重要位元〇11與霍夫曼碼010 比較。由於011與010不符,因此接著向下搜尋霍夫曼表 • 20 ° 下一個霍夫曼碼索引值η’等於2。由於霍夫曼碼索引 值η’等於2對應之霍夫曼碼為011且位元長度為3,因此 將位元串0111011前3個最重要位元〇11與霍夫曼碼〇11 比較。由於011與011相符,因此停止向下搜尋霍夫曼表 20。當霍夫曼碼索引值η’等於2時,Sym[n,]=Sym[2] = 2, 其解出之符號為2且位元長度等於3。最後移除位元串 0111011中3個最重要位元產生移除後位元串1〇11。 魯 為使傳統前導1搜尋之解碼方法更為清晰易懂,下述 另以位元串0010為例說明:首先位元串〇〇1〇之前導i個 數等於0,也就是說,查閱表30之查閱索引值m,等於〇。 接著藉由查閱索引值m’等於〇得知查閱表3〇之霍夫曼碼 索引值Lookup[m’]=Lookup[0]=〇。跟著藉由查閲表3〇之 霍夫曼碼索引值Lookup[0]=0得知霍夫曼表2〇之霍夫曼碼 索引值η’等於0,並自霍夫曼碼索引值n’等於〇開始^尋 霍夫曼表20。 由於霍夫曼碼索引值η’等於〇對應之霍夫曼碼為〇〇 5 -Ϊ343192, it TW5226PA Because the Hoop code index value n is equal to the Huffman code corresponding to 〇 and the bit length is 2, so the bit string 〇 11〇u the first two most important bits 01 and Hoffman Pallet comparison. Since 〇 1 does not match 〇〇, then the Huffman table 20 is searched down. The next Huffman code index value η is equal to 丨. Since the Huffman code index, the value η' is equal to 1 and the Huffman code is 010 and the bit length is 3, the first three most significant bits 位11 of the bit string 0111011 are compared with the Huffman code 010. Since 011 and 010 do not match, the Huffman table is then searched down. • A Huffman code index value η' at 20 ° is equal to 2. Since the Huffman code index value η' is equal to 2 and the Huffman code is 011 and the bit length is 3, the first three most significant bits 位11 of the bit string 0111011 are compared with the Huffman code 〇11. Since 011 and 011 match, the search for the Huffman table 20 is stopped. When the Huffman code index value η' is equal to 2, Sym[n,] = Sym[2] = 2, the symbol of the solution is 2 and the bit length is equal to 3. Finally, the three most significant bits in the bit string 0111011 are removed to produce the removed bit string 1〇11. In order to make the decoding method of the traditional preamble 1 search more clear and easy to understand, the following takes the bit string 0010 as an example: first, the number of bits before the bit string 〇〇1〇 is equal to 0, that is, the lookup table 30 refers to the index value m, equal to 〇. Then, by referring to the index value m' equal to 〇, the Huffman code index value Lookup[m']=Lookup[0]=〇 of the lookup table 3〇 is known. The Huffman code index value η' of the Huffman table 2〇 is equal to 0, and the Huffman code index value n is obtained by looking up the Huffman code index value Lookup[0]=0 of Table 3. 'Equivalent to 〇 start ^ find Hoffman table 20. Since the Huffman code index value η' is equal to 〇, the Huffman code is 〇〇 5 -Ϊ343192

TW5226PA 且锊元長度為2,因此將位元串〇〇1p前2個最重要位元 00與霍夫曼碼00比較。由於00與00相符,因此停止向 下搜尋霍夫曼表20。當霍夫曼碼索引值n,等於〇時:TW5226PA and the length of the unit is 2, so the first two most significant bits 00 of the bit string 〇〇1p are compared with the Huffman code 00. Since 00 and 00 match, the search for the Huffman table 20 is stopped. When the Huffman code index value n is equal to 〇:

Symtn’hSymtO] = 0’其解出之符號為〇且位元長度等於 2。最後移除位元串〇_中2個最重要位元產生移^後位 元串10。 由此可知,傳統前導1搜尋方法搜尋位元串〇1 non 及位元串ooio時,至少需要搜尋4次方能獲得對應之符 號2及符號0。 & β月參照第4圖,其繪示係為傳統一位元二分搜尋 (One-bit Binary Search)之查閱表。查閱表4〇包括攔位 Index及欄位Content。欄位Index包括節點Node及位元 Bit ’而攔位Content包括指示值NodeSE及旗標Flag。隨 著節點Node及位元Bit的不同,將對應至不同的指示值 NodeSE及旗標Flag。請注意,開始搜尋時的Node值必為 0,而Bit值是依位元串逐一輸入。 當旗標Flag等於1時’表示二元搜尋已結束,指示 值NodeSE即為此位元串所對應的符號。相反地,當旗標 Flag等於0時,表示二元搜尋尚未結束,指示值NodeSE 表示下一節點Node。根據此下一節點Node及下一個位元 Bit進行另一次的二元搜尋。 藉由搜尋查閱表40即能找出與所接收的位元串相對 應之符號。為使傳統一位元二分搜尋之解碼方法更為清晰 易懂’下述將以位元串〇 111011為例說明: 首先,節點Node等於,而位元串之第1個位元 1343192Symtn'hSymtO] = 0', the symbol of its solution is 〇 and the bit length is equal to 2. Finally, the 2 most significant bits in the bit string 〇_ are removed to generate the shifted bit string 10. It can be seen that when the conventional preamble 1 search method searches for the bit string non1 non and the bit string ooio, at least 4 times need to be searched for the corresponding symbol 2 and symbol 0. & beta month refers to Figure 4, which is a look-up table for the traditional One-bit Binary Search. Look at Table 4, including the Block Index and the Field Content. The field Index includes the node Node and the bit Bit' and the block content includes the indication value NodeSE and the flag Flag. According to the node Node and the bit Bit, it will correspond to different indication values NodeSE and flag Flag. Note that the Node value at the start of the search must be 0, and the Bit value is entered one by one according to the bit string. When the flag Flag is equal to 1, ' indicates that the binary search has ended, and the indication value NodeSE is the symbol corresponding to this bit string. Conversely, when the flag Flag is equal to 0, it indicates that the binary search has not ended, and the indication value NodeSE indicates the next node Node. Another binary search is performed according to the next node Node and the next bit Bit. By searching the lookup table 40, the symbol corresponding to the received bit string can be found. In order to make the decoding method of the traditional one-bit binary search more clear and easy to understand, the following will take the bit string 〇 111011 as an example: First, the node Node is equal, and the first bit of the bit string is 1343192

' t TW5226PA' t TW5226PA

Bit等於”0”。根據節點及位元進行第一次二元搜 尋,找出與節點及位元對應之旗標值Flag與指示 值NodeSE。此時,旗標值Flag為”0”,而指示值NodeSE 為”1’’。由於旗標值Flag為表示搜尋尚未結束,而 指示值NodeSE為’’ 1”,表示下一個節點Node為” 1 ’’。 ^ 接著,節點Node等於”1”,而位元串之第2個位元 等於”1”。根據節點”1”及位元”1”進行第二次二元搜尋, 找出與節點”1”及位元”1”對應之旗標值Flag與指示值 鲁 NodeSE。此時,旗標值Flag為”0’’’而指示值NodeSE 為’’3”。由於旗標值Flag為’’0’,,表示搜尋尚未結束,而 指示值NodeSE為”3”,表示下一個節點Node為”3”。 跟著,節點Node等於”3’’,而位元串之第3個位元 等於”1”。根據節點”3”及位元”1”進行第三次二元搜尋, 找出與節點”3”及位元”1”對應之旗標值Flag與指示值 NodeSE。 此時,旗標值Flag為” 1”,而指示值NodeSE 為’’2’’。由於旗標值Flag為”1’’,表示搜尋結束,而指示 φ 值NodeSE為,,2,’,表示解得之符號為,,2,,。 為使傳統一位元二分搜尋之解碼方法更為清晰易 懂,下述將另以位元串0010為例說明: 首先,節點Node等於而位元串之第1個位元 Bit等於”0”。根據節點”0”及位元”0”進行第一次二元搜 尋,找出與節點及位元對應之旗標值Flag與指示 值NodeSE。此時,旗標值Flag為”0”,而指示值NodeSE 為”1”。由於旗標值Flag為表示搜尋尚未結束,而 指示值NodeSE為’’ 1 ”,表示下一個節點Node為’’ 1 ’’。 7 寸343192Bit is equal to "0". The first binary search is performed according to the node and the bit element, and the flag value Flag and the indication value NodeSE corresponding to the node and the bit element are found. At this time, the flag value Flag is "0", and the indication value NodeSE is "1". Since the flag value Flag indicates that the search has not ended, and the indication value NodeSE is ''1', indicating that the next node is "" 1 ''. ^ Next, the node Node is equal to "1", and the second bit of the bit string is equal to "1". The second binary search is performed according to the node "1" and the bit "1" to find out The flag value Flag corresponding to the node "1" and the bit "1" and the indication value LuNodeSE. At this time, the flag value Flag is "0"' and the indication value NodeSE is ''3". Flag is ''0', indicating that the search has not ended yet, and the indication value NodeSE is "3", indicating that the next node Node is "3". Then, the node Node is equal to "3"', and the third of the bit string The bit is equal to "1". The third binary search is performed according to the node "3" and the bit "1", and the flag value Flag corresponding to the node "3" and the bit "1" is found and the indication value NodeSE. At this time, the flag value Flag is "1", and the indication value NodeSE is ''2''. Since the flag value Flag is "1", indicating the end of the search, and indicating that the φ value NodeSE is ,, 2, ', the symbol of the solution is ,, 2,,. For the decoding method of the conventional one-bit binary search. More clear and easy to understand, the following will be further illustrated by the bit string 0010 as an example: First, the node Node is equal to and the first bit of the bit string Bit is equal to "0". According to the node "0" and the bit "0" The first binary search is performed to find the flag value Flag and the indication value NodeSE corresponding to the node and the bit. At this time, the flag value Flag is "0", and the indication value NodeSE is "1". The flag Flag indicates that the search has not ended, and the indication value NodeSE is ''1'', indicating that the next node Node is ''1''. 7 inches 343192

TW5226PA 接著,節點Node等於”1”,而位元串之第2個位元 * » 等於”0”。根據節點”1”及位元”0”進行第二次二元搜尋, 找出與節點’’1”及位元對應之旗標值Flag與指示值 NodeSE。此時,旗標值Flag為”1”,而指示值NodeSE 為。由於旗標值Flag為’’1”,表示搜尋結束。而指示 值NodeSE為表示解出之符號為。 由此可知,傳統一位元二分搜尋方法搜尋位元串 0111011及位元串0010時,至少需要搜尋5次方能獲得對 應之符號2及符號0。 【發明内容】 根據本一實施範例,提出一種解碼方法。解碼方法包 括:根據位元串之前導位元1個數(Number of Leading One’s)取得新創查閱表之第m個查閱索引值,第m個查閱 索引值等於位元串之前導1個數;根據第m個查閱索引值 取得精簡霍夫曼表之第η個基準霍夫曼碼索引值,第η個 基準霍夫曼碼索引值用以索引精簡霍夫曼表之第η個基準 霍夫曼碼及第η個基準符號索引值,且基準霍夫曼碼索引 值等於第η個基準霍夫曼碼之位元長度減1 ;根據第η個 基準霍夫曼碼索引值取得位元串之η+1個最重要位元 (Most Significant Bit, MSB );根據 η+1 個最重要位元與 第η個基準霍夫曼碼產生差異值;判斷差異值是否小於 零;若差異值不小於零,根據差異值及第η個基準符號索 引值產生符號索引值;根據符號索引值取得符號。若差異 值小於零,則遞減或遞增η值後繼續回到精簡霍夫曼表繼 1343192TW5226PA Next, the node Node is equal to "1", and the second bit of the bit string * » is equal to "0". The second binary search is performed according to the node "1" and the bit "0", and the flag value Flag and the indication value NodeSE corresponding to the node ''1" and the bit are found. At this time, the flag value Flag is " 1", and the indication value NodeSE is. Since the flag value Flag is ''1', it indicates that the search ends. The indicator value NodeSE is a symbol indicating that the solution is solved. It can be seen that the conventional one-bit binary search method searches for the bit string 0111011 and the bit string 0010, and at least 5 times need to search for the corresponding symbol 2 and symbol 0. SUMMARY OF THE INVENTION According to this embodiment, a decoding method is proposed. The decoding method includes: obtaining the mth lookup index value of the newly created lookup table according to the number of leading bits of the bit string (Number of Leading One's), and the mth lookup index value is equal to the number of the leading string of the bit string; Obtaining the nth reference Huffman code index value of the reduced Huffman table according to the mth lookup index value, and the nth reference Huffman code index value is used to index the nth reference Hough of the reduced Huffman table Mann code and nth reference symbol index value, and the reference Huffman code index value is equal to the bit length of the nth reference Huffman code minus 1; the bit string is obtained according to the nth reference Huffman code index value η+1 Most Significant Bit (MSB); generate a difference value according to n+1 most important bits and the nth reference Huffman code; determine whether the difference value is less than zero; if the difference value is not If it is less than zero, a symbol index value is generated according to the difference value and the nth reference symbol index value; the symbol is obtained according to the symbol index value. If the difference value is less than zero, then decrease or increment the value of η and continue back to the streamlined Huffman table. 1343192

-TW5226PA 續比較差異值。 4 4 本文只針對應用於JPEG的霍夫曼表來描述,但本實 施範例可涵蓋其它應用的霍夫曼表。例如,JPEG標準的 最長之霍夫曼碼為16位元,因此最大的前導1個數也就 必定小於17。在其它應用上,這些數字並不一定為分別為 16 與 17。 為讓本實施範例之上述内容能更明顯易懂,下文特舉 多個實施例,並配合所附圖式,作詳細說明如下: 【實施方式】 為了縮小完整的霍夫曼表及查閱表之表格大小並提 高解碼速度及表格的重建速度。下述將例舉第一實施例及 第二實施例說明。 第一實施例 請同時參照第2圖及第5圖,第5圖繪示係為第一實 施例之精簡霍夫曼表。本第一實施例將提供一種精簡霍夫 曼表50,為了和完整的霍夫曼表20區別,下述精簡後之 霍夫曼表將以精簡霍夫曼表50稱之。精簡霍夫曼表50僅 記錄完整的霍夫曼表20中部份霍夫曼碼及霍夫曼碼索引 值,精簡霍夫曼表50所記錄之部份霍夫曼碼下述將以基 準霍夫曼碼HfmBase[n].lstCode稱之,而精簡霍夫曼表 5 0所記錄之符號索引值下述將以基準符號索引值 HfmBase[n].lstOfs 稱之。 精簡霍夫曼表50包括基準符號索引值欄位及基準霍 9 1343192-TW5226PA Continue to compare difference values. 4 4 This paper is only described for Huffman tables applied to JPEG, but this embodiment can cover Huffman tables for other applications. For example, the longest Huffman code of the JPEG standard is 16 bits, so the maximum number of leading ones must be less than 17. In other applications, these numbers are not necessarily 16 and 17, respectively. In order to make the above-mentioned contents of the present embodiment more obvious, the following embodiments are specifically described, and the detailed description is as follows: [Embodiment] In order to reduce the complete Huffman table and look-up table Table size and increase decoding speed and table reconstruction speed. The description of the first embodiment and the second embodiment will be exemplified below. First Embodiment Please refer to Figs. 2 and 5 simultaneously, and Fig. 5 shows a simplified Huffman table which is the first embodiment. The first embodiment will provide a streamlined Huffman table 50 which, in order to distinguish it from the complete Huffman table 20, will be referred to as a reduced Huffman table 50. The reduced Huffman table 50 records only the partial Huffman codes and Huffman code index values in the complete Huffman table 20, and the Huffman codes recorded in the Huffman table 50 are hereinafter referred to as benchmarks. The Huffman code HfmBase[n].lstCode calls it, and the symbol index value recorded by the reduced Huffman table 50 is referred to below as the reference symbol index value HfmBase[n].lstOfs. Streamlined Huffman Table 50 includes reference symbol index value field and benchmark Huo 9 1343192

TW5226PA 夫曼碼欄位,不_.基轉夫曼財引值n於基準符號索 引值欄位中係對應至不同的基準符號索引值 *TW5226PA Fuman code field, not _. base transfuscent value n in the reference symbol index field corresponds to different reference symbol index value *

HfmBaSe[n]. 1 st〇fs,而不同的基準霍夫曼碼索引值η於基 準霍夫曼碼襴位中係對應至不同的基準霍夫曼碼HfmBaSe[n]. 1 st〇fs, and different reference Huffman code index values η correspond to different reference Huffman codes in the reference Huffman code clamp

HfmBase[n].lstCode。 請注意:當第5圖中基準霍夫曼碼索引值(n)等於〇,9, 10, 11,12, 13’ 14, 15時,其所對應的基準符號索引值與基 準霍夫曼碼都是無效的,因為當n等於〇, 9, 1〇, u,12, 13, 14,15時,其>1(:[11]都是等於零’這表示那些長度為11+1 之霍夫曼碼根本不存在。即根本沒有長度為〗,1〇, u,12, 13, 14, 15, 16位元的霍夫曼碼。 不同於完整的霍夫曼表紀錄所有的霍夫曼碼,精簡霍 夫曼表50係於相同位元長度時,僅紀錄碼值最小之霍夫 曼碼做為基準霍夫曼碼HfmBase[n].lstCode,並記錄基準 霍夫曼碼HfmBase[n].lstCode對應之基準符號索引值 HfmBase[n].lstOfs。此外,基準霍夫曼碼索引值n等於對 應之基準霍夫曼碼HfmBase[n].lstCode的位元長度減1。 舉例來說,完整的霍夫曼表20中位元長度為3的霍夫曼 碼包括010、0U、1〇〇、1〇1及11〇。精簡霍夫曼表5〇並 非同時紀錄010、011、1〇0、101及11()五個位元長度為3 的霍夫曼碼,而是僅紀錄碼值最小之〇1〇做為基準霍夫曼 碼HfmBase[2].lstCode,並記錄與霍夫曼碼〇10對應之索 引值1做為基準符號索引值HfmBase[2] lst〇fs。基準霍夫 曼碼010對應之基準霍夫曼碼索引值n等於基準霍夫曼碼 010之位元長度減1 ^所以,基準霍夫曼碼〇1〇對應之基 1343192HfmBase[n].lstCode. Please note: when the reference Huffman code index value (n) in Figure 5 is equal to 〇, 9, 10, 11, 12, 13' 14, 15, the corresponding reference symbol index value and the reference Huffman code It is invalid, because when n is equal to 〇, 9, 1〇, u, 12, 13, 14, 15, its >1(:[11] is equal to zero', which means that the length is 11+1. The Fuman code does not exist at all. That is, there is no Huffman code of length 〖, 1〇, u, 12, 13, 14, 15, 16 bits. Unlike the complete Huffman table record all Hoffman Code, the reduced Huffman table 50 is the same bit length, only the Huffman code with the smallest code value is recorded as the reference Huffman code HfmBase[n].lstCode, and the reference Huffman code HfmBase[n is recorded. The reference symbol index value HfmBase[n].lstOfs corresponding to .lstCode. In addition, the reference Huffman code index value n is equal to the bit length of the corresponding reference Huffman code HfmBase[n].lstCode minus 1. For example The Huffman code of the complete Huffman table 20 with a bit length of 3 includes 010, 0U, 1〇〇, 1〇1, and 11〇. The reduced Huffman table 5〇 does not record 010, 011, 1 at the same time. 〇0, 101 and 11() Huffman code with a bit length of 3, but only the smallest code value is recorded as the reference Huffman code HfmBase[2].lstCode, and the index value corresponding to the Huffman code 〇10 is recorded. 1 as the reference symbol index value HfmBase[2] lst〇fs. The reference Huffman code 010 corresponding to the reference Huffman code index value n is equal to the bit length of the reference Huffman code 010 minus 1 ^ So, the reference Hoff曼码〇1〇 corresponding base 1343192

. r TW5226PA 準霍夫曼碼索引值n等於2。 • * 精簡霍夫曼表50之第η個基準霍夫曼碼 HfmBase[n].lstCode及第η個基準符號索引值 HfmBase[n].lstOfs係根據符號陣列Sym□、包括每一種位 元長度的霍夫曼碼個數陣列NC[]及其索引值η所產生。第 η個基準霍夫曼碼HfmBase[n]. IstCode等於原始霍夫曼表 ,· 20中所有位元長度為(n+1)中碼值為最小之霍夫曼碼。舉 例來說,第2圖中位元長度等於3的霍夫曼碼包括010、 φ 0H、100、101 及 110。由於霍夫曼碼 010、0H、100、101 及110之中霍夫曼碼010之碼值(Code Value)最小,因此在 第5圖中,精簡霍夫曼表50之第2個基準霍夫曼碼 HfmBase[2].lstCode=010。 此外,精簡霍夫曼表50之第η個基準符號索引值r TW5226PA The quasi-Huffman code index value n is equal to 2. • * The nth reference Huffman code HfmBase[n].lstCode of the Huffman table 50 and the nth reference symbol index value HfmBase[n].lstOfs are based on the symbol array Sym□, including each bit length The Huffman code number array NC[] and its index value η are generated. The nth reference Huffman code HfmBase[n]. IstCode is equal to the Huffman code of the original Huffman table, where all bit lengths in 20 are (n+1) and the code value is the smallest. For example, the Huffman code having a bit length equal to 3 in Fig. 2 includes 010, φ 0H, 100, 101, and 110. Since the code value of the Huffman code 010 among the Huffman codes 010, 0H, 100, 101, and 110 is the smallest, in FIG. 5, the second reference Hough of the Huffman table 50 is simplified. Man code HfmBase[2].lstCode=010. In addition, the nth reference symbol index value of the Huffman table 50 is reduced.

HfmBase[n]. 1 stOfs對應至第η個基準霍夫曼碼 HfmBase[n].lstCode。第η個基準符號索引值 HfmBase[n]. 1 stOfs等於第η個基準霍夫曼碼 HfmBase[n].IstCode所代表的符號在符號陣列Sym□的索 引值。舉例來說,第2圖中霍夫曼碼010所對應之符號為 1。由於符號1在符號陣列Sym□的索引值也是1,因此在 第5圖的精簡霍夫曼表中第2個基準符號索引值 HfmBase[2].lst0fs=l。為使本實施範例更為清晰易懂,下 述將例舉一個產生精簡霍夫曼表50之方法,但此例並不 侷限本申請專利範圍。 寸343192 TW5226PA , , 請參照第6圖,其缯'示係為產生第一實施例之精簡霍 夫曼表之流程圖。首先如步驟410所示,設定精簡霍夫曼 表50之第0個基準符號索引值HfmBase[0].lst〇fs等於0, 並設定精簡霍夫曼表50之第0個基準霍夫曼碼 HfmBase[0],lstCode等於0。接著如步驟420所示,設定 基準霍夫曼碼索引值η等於1。跟著如步驟430所示,判 斷基準霍夫曼碼索引值η是否小於16 ?若否,則結束此一 流程。若是’則執行步驟440。步驟440係根據第n-l個 ❿ 基準符號索引值HfmBase[n-l].lstOfs及長度為η之霍夫曼 碼個數NC[n-l]產生第η個基準符號索引值 HfmBase[n].lstOfs且根據第η_1個基準霍夫曼碼 HfmBase[n· 1 ]. 1 stc〇de及長度為η之霍夫曼碼個數NC[n-1 ] 產生第η個基準霍夫曼碼HfmBase[n].lstCode。其中第η 個基準符號索引值 HfmBase[n].lstOfs =HfmBase[n-l].lstOfs + NC[n-l] ’而第n個基準霍夫曼碼HfmBase[n].lstCode等· 於第η·1個基準霍夫曼碼HfmBase[n-l].lstCode及長度為 η之霍夫曼碼個數NC[n-l]之總和乘2。然後如步驟450所 不’遞增基準霍夫曼碼索引值η。若遞增後之基準霍夫曼 碼索引值η仍小於16 ’即重複執行步驟44〇及步驟45〇。 其中,長度為η之霍夫曼碼個數\(:[11_1]係由一相同位元 長度的霍夫曼碼個數陣列Nc[]而得。 產生精簡霍夫曼表50可以有多種不同的程式撰寫態 12 1343192HfmBase[n]. 1 stOfs corresponds to the nth reference Huffman code HfmBase[n].lstCode. The nth reference symbol index value HfmBase[n]. 1 stOfs is equal to the index value of the symbol represented by the nth reference Huffman code HfmBase[n].IstCode in the symbol array Sym□. For example, the symbol corresponding to the Huffman code 010 in Fig. 2 is 1. Since the index value of the symbol 1 in the symbol array Sym□ is also 1, the second reference symbol index value HfmBase[2].lst0fs=l in the reduced Huffman table of Fig. 5. In order to make the present embodiment more clear and understandable, a method of generating a reduced Huffman table 50 will be exemplified below, but this example is not intended to limit the scope of the patent application. Insulation 343192 TW5226PA, , please refer to Fig. 6, which is a flow chart for generating the reduced Houghman table of the first embodiment. First, as shown in step 410, the 0th reference symbol index value HfmBase[0].lst〇fs of the reduced Huffman table 50 is set equal to 0, and the 0th reference Huffman code of the reduced Huffman table 50 is set. HfmBase[0], lstCode is equal to 0. Next, as shown in step 420, the reference Huffman code index value η is set equal to one. Next, as shown in step 430, it is determined whether the reference Huffman code index value η is less than 16 ? If not, the flow is ended. If yes, step 440 is performed. Step 440: generating an nth reference symbol index value HfmBase[n].lstOfs according to the nl ❿ reference symbol index value HfmBase[nl].lstOfs and the number of Huffman codes NC[nl] of length η Η_1 reference Huffman codes HfmBase[n· 1 ]. 1 stc〇de and the number of Huffman codes of length η NC[n-1 ] Generate the nth reference Huffman code HfmBase[n].lstCode . Wherein the nth reference symbol index value HfmBase[n].lstOfs =HfmBase[nl].lstOfs + NC[nl] ' and the nth reference Huffman code HfmBase[n].lstCode, etc. at the η·1 The sum of the reference Huffman code HfmBase[nl].lstCode and the number of Huffman codes of length η, NC[nl], is multiplied by two. The reference Huffman code index value η is then incremented as in step 450. If the incremented reference Huffman code index value η is still less than 16 ', step 44 and step 45 are repeated. Wherein, the number of Huffman codes whose length is η\(:[11_1] is obtained by an array of Huffman codes of the same bit length Nc[]. The generation of the reduced Huffman table 50 can be varied. Program writing state 12 1343192

* ,TW5226PA 樣,為方便說明起見下述將例舉一例說明,但此例並不侷 • 4 限本之申請專利範圍。精簡霍夫曼表50例如係由下列程 式所實現:*, TW5226PA-like, for illustrative purposes, the following will give an example, but this example is not limited to the scope of the patent application. The streamlined Huffman table 50 is implemented, for example, by the following procedures:

HfmBase[0].lstOfs = 0;HfmBase[0].lstOfs = 0;

HfmBase[0].lstCode = 0; for(n =1; η <16; η++) {HfmBase[0].lstCode = 0; for(n =1; η <16; η++) {

HfmBase[n].lstOfs = HfmBase[n-l].lstOfs + NC[n-l]; 肇 //1 st offset of same length codesHfmBase[n].lstOfs = HfmBase[n-l].lstOfs + NC[n-l]; 肇 //1 st offset of same length codes

HfmBase[n].lstCode = (HfmBase[n-l].lstCode + NC[n-l]) « 1; // 1 st code of same length codes 請同時參照第5圖及第7圖,新創查閱表7〇之基準 霍夫曼碼索引值Lookup[m]係根據精簡霍夫曼表50之基 準霍夫曼碼HfmBase[n].lstCode之索引值n所建立的。需 說明的是’ m等於霍夫曼碼的前導1個數,而基準霍夫曼 碼索引值Lookup[m]等於精簡霍夫曼表50中具有m個前 導1之基準霍夫曼碼HfmBase[n]. 1 stCode也索引值η。所 以Lookup[m] = η,表示精簡霍夫曼表50之基準霍夫曼碼 中’第η個HfmBase[n].lstCode的前導1個數等於m。舉 例來說,當新創查閱表70之索引值m等於4時,其HfmBase[n].lstCode = (HfmBase[nl].lstCode + NC[nl]) « 1; // 1 st code of same length codes Please refer to Figure 5 and Figure 7 together, and create a new lookup table 7 The reference Huffman code index value Lookup[m] is established based on the index value n of the Huffman code HfmBase[n].lstCode of the reduced Huffman table 50. It should be noted that 'm is equal to the leading number of the Huffman code, and the reference Huffman code index value Lookup[m] is equal to the reference Huffman code HfmBase with m leading 1 in the reduced Huffman table 50 [ n]. 1 stCode also indexes the value η. Therefore, Lookup[m] = η, which indicates that the number of leading ones of the nth HfmBase[n].lstCode in the reference Huffman code of the reduced Huffman table 50 is equal to m. For example, when the index value m of the new lookup table 70 is equal to 4,

Lookup[m] = Lookup[4] = 4 = η,則表示精簡霍夫曼表50 之第4個基準霍夫曼碼HfmBase[4].lstCode( = 11110)的前 13 1343192 TW5226PA 導1個數等於4。 4 然而’上述說明可能會有兩種例外狀 例外狀況是精簡霍夫曼表50中有二個以上的基生準霍第夫』重 rrrrrustc°de的前導1個數相同。由於這些前又導 1數相同的多個基準霍夫曼碼HfmBase[n]」stcode分別 1至夕個基準霍夫曼碼索引值n,此時,新創查閱表70 之第m個基準霍夫曼碼索引值選擇等於這些基準霍夫岛 :索引值n之中最大者。舉例來說,精簡霍夫曼 第Η固基準霍夫曼碼HfmBase[1] lstc〇de及第2個基準霍 夫曼媽HfmBase[2].丨stCode的前導丨個數 精簡霍夫曼表5〇的第2個基準霍夫曼碼索引值2大於第; 個,準霍夫曼碼索引值!,因此新創查閱表7()之第〇個基 準霍夫曼碼索弓丨值Lookup[〇]=2。 第二種例外狀況是新創查閱表7〇的查閱索引值m I 法=精簡霍夫曼表5〇的基準霍夫曼碼HfmBase[n]丨 獲得,則第m個基準霍夫曼碼索引值L〇〇kup[m]等於第 m·1個基準霍夫曼碼索引值Lookup[m-l]。舉例來說,新 創查閱表70的基準霍夫曼碼索引值L〇〇kup[l]及Lo〇kup[2] 無法由精簡霍夫曼表50獲得,也就說精簡霍夫曼表50中 π有一個基準霍夫曼碼HfmBase[n]」stC〇de的前導i個數 等於1或2。此時,就讓新創查閱表7〇的基準霍夫曼碼索 引值 Lo〇kup[2]=Lookup[l]=Lookup[0]=2。 請參照第7圖,其繪示係為第一實施例之精簡霍夫曼 表之新創查閱表。為了和傳統查閱表區別,下述精簡霍夫 曼表之查閱表將以新創查閱表70稱之。精簡霍夫曼表5〇 1343192Lookup[m] = Lookup[4] = 4 = η, which means the first 13 1343192 TW5226PA of the 4th reference Huffman code HfmBase[4].lstCode(= 11110) of the Huffman table 50 Equal to 4. 4 However, there may be two exceptions to the above description. The exception is that there are more than two basal quasi-Hochiffs in the Huffman Table 50. The number of leading rrrrrustc°de is the same. Since the plurality of reference Huffman codes HfmBase[n]"stcode of the same number and the same number are respectively 1 to the base Huffman code index value n, at this time, the mth reference of the newly created lookup table 70 The husbandman code index value selection is equal to these benchmarks: the largest of the index values n. For example, streamlined Huffman's stagnation benchmark Huffman code HfmBase[1] lstc〇de and the second benchmark Hoffman mom HfmBase[2].丨StCode's leading number of condensed Huffman table 5 The second base Huffman code index value 2 of 〇 is greater than the first, quasi-Huffman code index value! Therefore, the new benchmark Huffman code for the new lookup table 7() is Lookup[〇]=2. The second exception is the lookup index value of the new lookup table 7 m method = the reference Huffman code HfmBase[n] 精 of the reduced Huffman table 5〇, then the mth reference Huffman code index The value L〇〇kup[m] is equal to the m·1th base Huffman code index value Lookup[ml]. For example, the baseline Huffman code index values L〇〇kup[l] and Lo〇kup[2] of the new lookup table 70 cannot be obtained from the reduced Huffman table 50, that is, the reduced Huffman table 50 The number of leading i of the reference π having a reference Huffman code HfmBase[n]"stC〇de is equal to 1 or 2. At this point, let the reference Huffman code of the newly created lookup table 7〇 Lo〇kup[2]=Lookup[l]=Lookup[0]=2. Please refer to Fig. 7, which shows a newly created look-up table which is a simplified Huffman table of the first embodiment. In order to distinguish it from the traditional look-up table, the following reduced Huffman table lookup table will be referred to as the new lookup table 70. Streamlined Huffman Table 5〇 1343192

' ,TW5226PA •之新創查閱表70包括基準霍$曼碼索引值搁位,基準霍 夫曼碼索引值攔㈣以記錄各查閱㈣值m對應之基準 霍夫曼碼索引值L〇〇kuP[m] ’而基準霍夫曼碼索引值 L〇〇kuP[m]即為精簡霍夫曼表5〇之基準霍夫曼碼索引值 • η。其巾’查时引值m等於待解碼之位元串之前導1個 數。為使本實施範例更為清晰㈣,下述將例舉—個產生 新創查閱表7G之方法’但此例並不舰本申請專利範圍。 請注意:當第7时查閱索引值(m)大於8時, 鲁對應的基準霍夫曼碼索引值是無效的,因為第$圖中^最 大有效的基準霍夫曼碼索引值⑻為8,其對應Nc[n]為 1 ’且其對應的HfmBase[n].istCode* U11⑴丨〇,也就 是此霍夫曼表的最大碼為11U 1U1 〇。所以最大的前導 1個數為8,也就是最大的查閱索引值m為8。 請參照第8圖,其繪示係為產生第一實施例之精簡霍 夫曼表之新創查閲表之流程圖。首先如步驟612所示設 查閱索引值m等於基準霍夫曼碼索引值η等於接著如 ,步驟614所示,判斷基準霍夫曼碼索引值η是否小於16 9 若基準霍夫曼碼索引值„不小於16,則執行步驟63〇。相 反地,若基準霍夫曼碼索引值η小於16,職行步驟616。 步驟616係計算出第η個基準霍夫曼碼', TW5226PA • The new lookup table 70 includes the reference Huoman $man code index value position, the reference Huffman code index value (4) to record each reference (four) value m corresponding to the base Huffman code index value L〇〇kuP [m] 'The reference Huffman code index value L〇〇kuP[m] is the reference Huffman code index value η of the reduced Huffman table 5〇. Its towel's time-valued m is equal to the number of bits before the bit string to be decoded. In order to make the present embodiment clearer (4), the following will exemplify a method of generating a new lookup table 7G', but this example is not within the scope of the patent application. Please note that when the reference index value (m) is greater than 8 at the 7th, the reference value of the reference Huffman code corresponding to Lu is invalid, because the maximum valid reference Huffman code index value (8) in the $Fig is 8 , corresponding to Nc[n] is 1 ' and its corresponding HfmBase[n].istCode* U11(1)丨〇, that is, the maximum code of this Huffman table is 11U 1U1 〇. Therefore, the maximum number of leading ones is 8, that is, the maximum index value m is 8. Referring to Figure 8, there is shown a flow chart for creating a new lookup table of the reduced Houghman table of the first embodiment. First, as shown in step 612, the reference index value m is equal to the reference Huffman code index value η is equal to, as shown in step 614, determining whether the reference Huffman code index value η is less than 16 9 if the reference Huffman code index value „Not less than 16, step 63〇 is performed. Conversely, if the reference Huffman code index value η is less than 16, then step 616 is performed. Step 616 is to calculate the nth reference Huffman code.

HfmBase[n]. 1 stCode 之前導 1 個數 l。 由於精簡霍夫曼表50並非記錄所有的霍夫曼碼因 此新創查_ 7〇的部份基準霍夫曼碼索引值L00kup[m] 將無法完全由精簡霍夫曼表50直接得知。舉例來說,在 完整的霍夫曼表20中位元長度為3的霍夫曼碼包括查閱 1343192HfmBase[n]. 1 stCode leads to 1 number l. Since the condensed Huffman table 50 does not record all of the Huffman codes, the partial Huffman code index value L00kup[m] of the new _ 7〇 will not be directly known by the condensed Huffman table 50. For example, a Huffman code with a bit length of 3 in the complete Huffman table 20 includes a look at 1343192

TW5226PA 索引值m’等於0.之010及Oil、查閱索引值m’等於1之 100及101、查閱索引值m’等於2之110,所以查閱表30 由完整的霍夫曼表20可直接得知查閱索引值m’等於〇之 霍夫曼碼索引值Lookup[m’]等於0,查閱索引值m,等於J 之霍夫曼碼索引值Lookup[m’]等於3且查閱索引值m,等 於2之霍夫曼碼索引值Lookup[m’]等於5。但精簡霍夫曼 表50僅紀錄m等於0之010,因此,當查閱索弓丨值m等 於1或2時,新創查閱表70的部份基準霍夫曼蝎索引值 Lookup[m]將無法完全由精簡霍夫曼表50直接得知。故 此,執行步驟618、步驟620及步驟622以填補無法由精 簡霍夫曼表50直接得知的部份基準霍夫曼碼索引值 Lookup[m],如基準霍夫曼碼索引值Lookup[l]及基準霍夫 曼碼索引值Lookup[2]。 步驟618係判斷查閱索引值m是否小於第η個基準 霍夫曼碼HfmBase[n]. 1 stCode之前導1個數L?若查閱索 引值m不小於第η個基準霍夫曼碼HfmBase[n].lstCode 之前導1個數L,則表示m等於L因m不可能大於L, 也就是沒有遺漏掉的前導1個數,執行步驟624。相反地, 若查閱索引值m小於第η個基準霍夫曼碼 HfmBase[n].lstCode之前導1個數L,則表示有遺漏掉的 前導1個數,執行步驟620。步驟620係使新創查閱表70 中第m個基準霍夫曼碼索引值Lookup[m]用第m-Ι個基準 霍夫曼碼索引值L〇〇kup[m-l]來彌補。接著如步驟622所 示遞增查閱索引值m。跟著步驟618、步驟620及步驟622 將被重複地執行直至查閱索引值m不小於第η個基準霍夫 1343192TW5226PA index value m' is equal to 0. 010 and Oil, the reference index value m' is equal to 1 of 100 and 101, and the reference index value m' is equal to 2 of 110, so the lookup table 30 can be directly obtained from the complete Huffman table 20. It is known that the index value m' is equal to the Huffman code index value Lookup[m'] is equal to 0, and the index value m is consulted, and the Huffman code index value Lookup[m'] equal to J is equal to 3 and the index value m is consulted. The Huffman code index value Lookup[m'] equal to 2 is equal to 5. However, the reduced Huffman table 50 only records m equal to 0 010. Therefore, when the reference value m is equal to 1 or 2, the partial reference Huffman 蝎 index value Lookup[m] of the new lookup table 70 will It cannot be directly learned by the streamlined Huffman Table 50. Therefore, step 618, step 620 and step 622 are executed to fill the partial reference Huffman code index value Lookup[m] which cannot be directly known by the reduced Huffman table 50, such as the reference Huffman code index value Lookup [l] ] and the base Huffman code index value Lookup [2]. Step 618 is to determine whether the reference index value m is smaller than the nth reference Huffman code HfmBase[n]. 1 stCode is preceded by a number L? If the reference index value m is not smaller than the nth reference Huffman code HfmBase[n ].lstCode is preceded by a number L, which means that m is equal to L, since m cannot be greater than L, that is, there is no missing leading number, and step 624 is performed. Conversely, if the reference index value m is smaller than the n-th reference Huffman code HfmBase[n].lstCode and the number L is preceded, it indicates that there is a missing leading number, and step 620 is executed. Step 620 is such that the mth reference Huffman code index value Lookup[m] in the new lookup table 70 is compensated by the mth-th order reference Huffman code index value L〇〇kup[m-l]. The index value m is then incrementally reviewed as indicated by step 622. Following step 618, step 620 and step 622 will be repeated until the reference index value m is not less than the nth reference Hough 1343192

^ TW5226PA 曼碼HfmBaSe[n].lstC〇de之前導1個數L,才改執行步 624 。 . ’ 步驟624係使新創查閱表7〇中第L個基準霍夫曼碼 索引值L〇〇kuP[L]等於基準霍夫曼碼索引值n。接著如^驟 026所示,查閱索引值m等於第11個基準霍夫曼碼/ HfmBaSe[n].lstC〇de之前導丨個數[加!,代表著下一個 應有的前導1個數,也就是建立中的新創查閱表之應古玄下 -個輪到的索引值。跟著如步驟628所示,遞增二 鲁回到步驟614。 '^ TW5226PA Man code HfmBaSe[n].lstC〇de leads a number L before changing step 624. Step 624 is such that the Lth reference Huffman code index value L〇〇kuP[L] in the new lookup table 7 is equal to the reference Huffman code index value n. Then, as shown in step 026, the index value m is equal to the number of leading points of the eleventh reference Huffman code / HfmBaSe[n].lstC〇de [plus! It represents the number of the leading ones that should be next, that is, the index of the new creation of the newly created look-up table. Following the step 628, the increment is returned to step 614. '

v驟630、步驟632及步驟634係用以填補不足的查 閱索引值m之對應之基準霍夫曼碼索引值L〇Gkup[m],因 為無論是完整的霍夫曼表或精簡霍夫曼表都残證能提 =所有17個(〇到16)前導丨個數值。步驟⑽係判斷 查閱索引值m是否小於17?若查閱索引值爪不小於17, 則結束流程目料1個數m不可料於17。相反地 查=索引值m小於17,則執行步驟㈣。 =閱表财“錄準Su^^LGGku]J等新 =第ΠΜ個基準霍夫曼碼㈣值L⑻_㈣也是如步 驟620般的一種填補作用。 索引值m,並回到步驟63。者如步驟634所示遞增查閱 產生新創查閲表7〇可· 檨,At描^ 了 乂有夕種不同的程式撰寫態 限本= 但此例並⑽ 實現: j —閱表70例如係由下列程式所 1343192Step 630, step 632 and step 634 are used to fill the corresponding reference Huffman code index value L〇Gkup[m] of the insufficient index index m, since either the complete Huffman table or the simplified Huffman The table can be recalculated = all 17 (〇 to 16) leading values. Step (10) is to judge whether the index value m is less than 17? If the reference index value is not less than 17, the end of the flow plan number 1 is not expected to be 17. Conversely, if the index value m is less than 17, then step (4) is performed. = read the table "recording Su ^ ^ LGGku] J and so on = the second reference Huffman code (four) value L (8) _ (four) is also a filling function as step 620. Index value m, and return to step 63. The incremental review shown in 634 produces a new lookup table. At, 描, ^ 乂 乂 夕 夕 夕 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 1343192

TW5226PA for(m = η = 0; η < 16; η++) { // for all code lengths·… 4 L = leading_one(HfmBase[n].lstCode); // get number of leading 1 ’s from simplified table for(; m < L; m++) // pad the gap in Lookup[ ] if there isTW5226PA for(m = η = 0; η <16; η++) { // for all code lengths·... 4 L = leading_one(HfmBase[n].lstCode); // get number of leading 1 's from Simplified table for(; m <L; m++) // pad the gap in Lookup[ ] if there is

Lookup[m] = Lookup[m - 1];Lookup[m] = Lookup[m - 1];

Lookup [L] = n; // save (length - 1) to Lookup[ ]. Overwrite is possible, m = L + 1; } for(; m < 17; m++) // pad the trailing elements in Lookup[]Lookup [L] = n; // save (length - 1) to Lookup[ ]. Overwrite is possible, m = L + 1; } for(; m <17; m++) // pad the trailing elements in Lookup[ ]

Lookup[m] = Lookup[m - 1]; 上例之程式中的函式leading_one()用於計算位元串的前 導1的個數。 請參照第9圖,其繪示係為依照第一實施例之解碼方 法之流程圖。首先如步驟710所示,根據待解碼之位元串 之前導位元1個數取得新創查閱表70之查閱索引值m, 查閱索引值m用以指示位元串之前導1個數。由於查閱索 引值m用以指示位元串之前導1個數多寡,因此當查閱索 引值m等於1時,表示位元串之前導1個數等於1;當查 閱索引值m等於2時,表示位元串之前導1個數等於2, 以此類推。也就是說查閱索引值m等於位元串之前導1個 1343192Lookup[m] = Lookup[m - 1]; The function leading_one() in the program above is used to calculate the number of leading 1's of the bit string. Referring to Figure 9, there is shown a flow chart of the decoding method in accordance with the first embodiment. First, as shown in step 710, the lookup index m of the newly created lookup table 70 is obtained according to the number of leading bits of the bit string to be decoded, and the index value m is used to indicate that the bit string is preceded by one. Since the reference index value m is used to indicate the number of bits before the bit string is forwarded, when the reference index value m is equal to 1, it indicates that the number of leading bits of the bit string is equal to 1; when the index value m is equal to 2, The number of bits before the bit string is equal to 2, and so on. In other words, the reference index value m is equal to the bit string leading to 1343192

'TW5226PA 數。 . # 接著如步驟720所示,根據查閱索引值m取得精簡 霍夫曼表50之基準霍夫曼碼索引值η,基準霍夫曼碼索引 值η用以索弓丨精簡霍夫曼表50之第η個基準霍夫曼碼 HfmBase[n].lstCode及第η個基準符號索引值 HfmBase[n]. 1 stOfs,且基準霍夫曼碼索引值11等於第η個 基準霍夫曼碼HfmBase[n].lstCode之位元長度減卜其中, 基準霍夫曼碼索引值η等於基準霍夫曼碼索引值 • Lookup[m]。 跟著如步驟730所示,根據基準霍夫曼碼索引值η取 得位元串之η+1個最重要位元。其中’位元串之η+1個最 重要位元於第一實施例中係以ν標示。由於基準霍夫曼碼 索引值η等於第η個基準霍夫曼碼HfmBase[n].lstCode之 位元長度減1,因此,於步驟730中能根據基準霍夫曼碼 索引值η先取得第η個基準霍夫曼碼HfmBase[n].lstCode 之位元長度。之後再根據第η個基準霍夫曼碼 φ HfmBase[n].lstCode之位元長度取得位元串之η+1個最重 要位元。 然後如步驟740所示,根據η+1個最重要位元ν與第 η個基準霍夫曼碼HfmBase[n].lstCode產生差異值Diff。 其中,差異值Diff等於η+1個最重要位元ν減該第η個基 準霍夫曼碼 HfmBase[n].lstCode。 之後如步驟750所示,判斷差異值Diff是否小於零? 若差異值Diff不小於零,則如步驟760所示,根據差異值 Diff及第η個基準符號索引值HfmBase[n].lstOfs產生符號 1343192'TW5226PA number. # Next, as shown in step 720, the reference Huffman code index value η of the reduced Huffman table 50 is obtained from the lookup index value m, and the reference Huffman code index value η is used to simplify the Huffman table 50. The nth reference Huffman code HfmBase[n].lstCode and the nth reference symbol index value HfmBase[n]. 1 stOfs, and the reference Huffman code index value 11 is equal to the nth reference Huffman code HfmBase The length of the bit of [n].lstCode is reduced, wherein the reference Huffman code index value η is equal to the reference Huffman code index value • Lookup[m]. Next, as shown in step 730, n+1 of the most significant bits of the bit string are taken from the reference Huffman code index value η. The n+1 most significant bits of the 'bit string' are indicated by ν in the first embodiment. Since the reference Huffman code index value η is equal to the bit length of the nth reference Huffman code HfmBase[n].lstCode minus 1, the first Huffman code index value η can be obtained in step 730. The bit length of n reference Huffman codes HfmBase[n].lstCode. Then, according to the bit length of the nth reference Huffman code φ HfmBase[n].lstCode, the n+1 most important bits of the bit string are obtained. Then, as shown in step 740, a difference value Diff is generated from the n+1th most significant bit ν and the nth reference Huffman code HfmBase[n].lstCode. Wherein, the difference value Diff is equal to η+1 most important bits ν minus the ηth basis Huffman code HfmBase[n].lstCode. Then, as shown in step 750, is it judged whether the difference value Diff is less than zero? If the difference value Diff is not less than zero, as shown in step 760, the symbol 1343192 is generated according to the difference value Diff and the nth reference symbol index value HfmBase[n].lstOfs.

TW5226PA 索引值Ofs。符號索引值Ofs例如等於差異值Diff加第η * · 個基準符號索引值HfmBase[n].lstOfs。 接著如步驟770所示,根據符號索引值Ofs取得符 號,即S。其中,步驟770係根據符號索引值Ofs自檔頭 中的符號陣列Sym□中取得對應之符號,即S等於 Sym[0fs]。 跟著如步驟772所示,移除位元串之n+1個最重要位 元,以產生一移除後位元串。 相反地,若差異值Diff小於零,則如步驟780所示, 以遞減方式來調整基準霍夫曼碼索引值η後再回到步驟 730。 為使上述第一實施例之解碼方法更為清晰易懂,下述 將以位元串0111011為例說明:首先如前述步驟710所示, 位元串0111011之前導位元1個數等於0,根據位元串 0111011之前導位元1個數取得新創查閱表70之查閱索引 值m等於0。接著如前述步驟720所示,精簡霍夫曼表50 之基準霍夫曼碼索引值η等於新創查閱表70記錄之基準 霍夫曼碼索引值Lookup[0]等於2。 跟著如前述步驟730所示,根據基準霍夫曼碼索引值 η等於2取得位元_之3個最重要位元011。然後如前述 步驟740所示,根據基準霍夫曼碼索引值η第一次搜尋精 簡霍夫曼表50之第2個基準霍夫曼碼HfmBase[2].lstCode 及之第2個基準符號索引值HfmBase[2].lst0fs。精簡霍夫 曼表50之第2個基準霍夫曼碼HfmBase[2].lstCode為 010,而精簡霍夫曼表50之第2個基準符號索引值 1343192TW5226PA index value Ofs. The symbol index value Ofs is, for example, equal to the difference value Diff plus the η*·th reference symbol index value HfmBase[n].lstOfs. Next, as shown in step 770, the symbol, i.e., S, is obtained from the symbol index value Ofs. Wherein, step 770 obtains a corresponding symbol from the symbol array Sym□ in the header according to the symbol index value Ofs, that is, S is equal to Sym[0fs]. Following the step 772, the n+1 most significant bits of the bit string are removed to produce a removed bit string. Conversely, if the difference value Diff is less than zero, as shown in step 780, the reference Huffman code index value η is adjusted in a decreasing manner and then returns to step 730. In order to make the decoding method of the first embodiment more clear and easy to understand, the following description will be made by taking the bit string 0111011 as an example: first, as shown in the foregoing step 710, the number of leading bits 1 of the bit string 0111011 is equal to 0. The lookup index value m of the newly created lookup table 70 is equal to 0 according to the number of the first bit of the bit string 0111011. Next, as shown in the previous step 720, the reference Huffman code index value η of the reduced Huffman table 50 is equal to the reference Huffman code index value Lookup[0] of the new lookup table 70 record is equal to two. Following the previous step 730, the three most significant bits 011 of the bit_ are taken according to the reference Huffman code index value η equal to two. Then, as shown in the foregoing step 740, the second reference Huffman code HfmBase[2].lstCode of the reduced Huffman table 50 and the second reference symbol index are searched for the first time according to the reference Huffman code index value η. The value HfmBase[2].lst0fs. The second base Huffman code HfmBase[2].lstCode of the reduced Houghman table 50 is 010, and the second reference symbol index value of the reduced Huffman table 50 is 1343192.

TW5226PATW5226PA

HfmBaSe[2],1 St〇fs為丨。声異值Diff等於位元串之3個最 重要位元011減第2個基準霍夫曼碼010等於i。 之後如前述步驟750所示,判斷差異值Diff是否小 於零?由於Diff等於丨’因此差異值Diff不小於零。所以 將如前述步驟760所示,符號索引值〇fs等於差異值Diff 加上第2個基準符號索引值HfmBase[n]」st〇fs。其中,差 異值Diff等於1且第2個基準符號索引值 八HfmBaSe[2], 1 St〇fs is 丨. The acoustic value Diff is equal to the three most significant bits 011 of the bit string minus the second reference Huffman code 010 equal to i. Then, as shown in the foregoing step 750, is it judged whether the difference value Diff is less than zero? Since Diff is equal to 丨', the difference value Diff is not less than zero. Therefore, as shown in the foregoing step 760, the symbol index value 〇fs is equal to the difference value Diff plus the second reference symbol index value HfmBase[n]"st〇fs. Where the difference value Diff is equal to 1 and the second reference symbol index value is eight

HfmBaSe[n].1 St〇fs等於卜所以符號索引值Ofs等於2。 接著如前述步驟770所示,根據符號索引值Ofs自檔 頭中的符號陣列sym[]取得符號s特Sym[〇fs]。舉例來 說,符號陣列例如為⑽二从以二以冰⑴。所以,當 符號索引值Ofs等於2時’取得符號等於_⑺等於2。 跟著如前述步驟772所示,移除位元串之3個最重要 位元oil,並獲得移除後位元串1〇11。 為使上述解碼方法更為清晰易懂,下述將另以位 0010為例說明:首沐^义 ^播 首先如别述步驟710所示,位元串00H) 之别導位幻個數等於G,根據位HfmBaSe[n].1 St〇fs is equal to Bu, so the symbol index value Ofs is equal to 2. Next, as shown in the foregoing step 770, the symbol s special Sym [[fs]] is obtained from the symbol array sym[] in the header according to the symbol index value Ofs. For example, the symbol array is, for example, (10) two from two to ice (1). Therefore, when the symbol index value Ofs is equal to 2, the obtained symbol is equal to _(7) equal to 2. Following the previous step 772, the three most significant bits oil of the bit string are removed and the removed bit string 1〇11 is obtained. In order to make the above decoding method more clear and easy to understand, the following will take the example of bit 0010 as an example: firstly, as shown in step 710, the number of the other derivative of the bit string 00H) is equal to G, according to the bit

個數轉新創查閱表%之查閲㈣值m等於G 霍去述步驟720所示’精簡霍夫曼表50之基準 碼索二值L引Γ Π等於新創查閱表7〇記錄之基準霍夫曼 據基準霍:所示,根 位元_。 ’、 等於2取得位元串之3個最重要 第久搜哥精簡霍夫曼表之第2個基準霍夫曼瑪 1343192The number of conversions to the newly created lookup table is checked. (4) The value m is equal to G. The description of step 720 is shown in step 720. The reference code of the Huffman table 50 is equivalent to the value of L. Π is equal to the benchmark of the new record. Hoffman according to the benchmark Huo: shown, the root _. ‘, equal to 2 to get the three most important bits of the string. The second time of the search for the simplified Hoffman table, the second reference Hoffmanma 1343192

TW5226PATW5226PA

HfmBase[2].lstCode及第2個基準符號索引值 * ·HfmBase[2].lstCode and the second reference symbol index value * ·

HfmBase[2].lstOfs。精簡霍夫曼表50之第2個基準霍夫曼 碼HfmBase[2].lstCode為010,而精簡霍夫曼表50之第2 個基準符號索引值HfmBase[2].lstOfs為1。差異值Diff 等於位元串之3個最重要位元001減第2個基準霍夫曼碼 010等於-1。 之後如前述步驟750所示,判斷差異值Diff是否小 於零?由於Diff等於-1,因此差異值Diff小於零。所以將 如前述步驟780所示,遞減基準霍夫曼碼索引值η。遞減 後之基準霍夫曼碼索引值η由2改為丨。重複執行步驟 730,根據基準霍夫曼碼索引值η等於1以取得位元串之2 個最重要位元00。 重複執行步驟740,根據基準霍夫曼碼索引值η等於 1第二次搜尋精簡霍夫曼表50之第1個基準霍夫曼碼 HfmBase[l].lstCode及之第1個基準符號索引值 HfmBase[l].lstOfs。精簡霍夫曼表50之第1個基準霍夫曼 碼HfmBase[l].lstCode為00,而精簡霍夫曼表50之第1 個基準符號索引值HfmBase[l].lstOfs為0。差異值Diff 等於位元串之2個最重要位元00減第1個基準霍夫曼碼 00等於0。 重複執行步驟750以判斷差異值Diff是否小於零? 由於Diff等於0,因此差異值Diff不小於零。所以將如前 述步驟760所示,相加差異值Diff及第1個基準符號索引 值HfmBase[l].lstOfs產生符號索引值Ofs。由於差異值 Diff等於0且第1個基準符號索引值HfmBase[l].lst〇fs 22 1343192HfmBase[2].lstOfs. The second reference Huffman code HfmBase[2].lstCode of the reduced Huffman table 50 is 010, and the second reference symbol index value HfmBase[2].lstOfs of the reduced Huffman table 50 is 1. The difference value Diff is equal to the 3 most significant bits 001 of the bit string minus the second reference Huffman code 010 equals -1. Then, as shown in the foregoing step 750, is it judged whether the difference value Diff is less than zero? Since Diff is equal to -1, the difference value Diff is less than zero. Therefore, the reference Huffman code index value η will be decremented as shown in the previous step 780. The decremented reference Huffman code index value η is changed from 2 to 丨. Step 730 is repeated to obtain the two most significant bits 00 of the bit string according to the reference Huffman code index value η equal to one. Step 740 is repeatedly executed to search for the first reference Huffman code HfmBase[l].lstCode of the reduced Huffman table 50 and the first reference symbol index value according to the reference Huffman code index value η equal to 1 for the second time. HfmBase[l].lstOfs. The first reference Huffman code HfmBase[l].lstCode of the reduced Huffman table 50 is 00, and the first reference symbol index value HfmBase[l].lstOfs of the reduced Huffman table 50 is 0. The difference value Diff is equal to the 2 most significant bits 00 of the bit string minus the 1st reference Huffman code 00 is equal to 0. Repeat step 750 to determine if the difference value Diff is less than zero? Since Diff is equal to 0, the difference value Diff is not less than zero. Therefore, as shown in the foregoing step 760, the addition difference value Diff and the first reference symbol index value HfmBase[l].lstOfs generate the symbol index value Ofs. Since the difference value Diff is equal to 0 and the first reference symbol index value HfmBase[l].lst〇fs 22 1343192

、 · TW5226PA IT二ΤΙ符號索引值0色等於。。接著執行步驟”。 =索引值ofs自檔頭中的符號陣列—取得符 5虎S等於Sym[0fs]。舉例來說,符號陣列例如為 {〇’1,2,3,4,5,6,7,8,9,10,11}。所以,當符號索引值⑽等於 0時’取得符號等於Sym[0]等於〇。 跟著執行步驟772以移除位元串0010之2個最重要 位元’並獲得移除後位元串10。 上述解碼方法使得位元串0111011及0010僅需比較3 •次即能快速地獲得對應之符號2及符號〇。 第二實施例 請同時參照第2圖及第10圖,精簡霍夫曼表100之 第η個基準霍夫曼碼HfmBase[n] lstC〇de及第〇個基準符 號索引值HfmBaSe[n].ist0fs係根據符號陣列Sym[]、包括 每一種位元長度的霍夫曼碼個數陣列Nc□及索引值η所 產生。第η個基準霍夫曼碼HfmBase[n] lstC〇de等於原始 •霍夫曼表20中所有位元長度為(n+1)中碼值為最大之霍夫 曼碼。舉例來說,第2圖中位元長度等於3的霍夫曼碼包 括 010、011、1〇〇、101 及 11〇。由於霍夫曼碼 〇1〇 〇11、 100、101及110之中霍夫曼碼110之碼值(c〇de Va丨ue)最 大,因此在第10圖中,精簡霍夫曼表1〇〇之第2個基準 霍夫曼碼 HfmBase[2].lstCode= 110。 此外,精簡霍夫曼表100之第η個基準符號索引值 HfmBase[n].lstOfs對應至第η個基準霍夫曼碼 HfmBase[n].lstCode。第η個基準符號索引值 23 1343192· · TW5226PA IT binary symbol index value 0 color is equal to. . Then execute the step ". = index value ofs from the symbol array in the header - the acquisition 5 tiger S is equal to Sym [0fs]. For example, the symbol array is for example {〇'1,2,3,4,5,6 , 7, 8, 9, 10, 11}. Therefore, when the symbol index value (10) is equal to 0, the 'get symbol is equal to Sym[0] is equal to 〇. Following step 772, the 2 most significant bits of the bit string 0010 are removed. The element 'is obtained after the removed bit string 10. The above decoding method makes the bit string 011011 and 0010 only need to compare 3 times and can quickly obtain the corresponding symbol 2 and symbol 〇. For the second embodiment, please refer to the second FIG. 10 and FIG. 10 show that the nth reference Huffman code HfmBase[n] lstC〇de and the second reference symbol index value HfmBaSe[n].ist0fs of the Huffman table 100 are based on the symbol array Sym[], The Huffman code array Nc□ and the index value η are included for each bit length. The nth reference Huffman code HfmBase[n] lstC〇de is equal to all bits in the original Huffman table 20. The Huffman code whose length is (n+1) and whose code value is the largest. For example, the Huffman code whose bit length is equal to 3 in FIG. 2 includes 010, 011, 1〇〇. , 101 and 11. Since the code value (c〇de Va丨ue) of the Huffman code 110 among Huffman codes 〇11, 100, 101 and 110 is the largest, in Figure 10, the simplification is simplified. The second reference Huffman code HfmBase[2].lstCode=110 of the Huffman table 1 is further reduced. In addition, the nth reference symbol index value HfmBase[n].lstOfs of the Huffman table 100 is corresponding to the η reference Huffman codes HfmBase[n].lstCode. nth reference symbol index value 23 1343192

TW5226PA « *TW5226PA « *

HfmBase[n].lst〇fs等,第n個基準霍夫曼碼 HfmBase[n]. 1 stCode所代表的符號在符號陣列Sym[]的索 引值。舉例來說,第2圖中霍夫曼碼110所對應之符號為 5。由於符號5在符號陣列Sym[]的索引值也是5,因此在 精簡霍夫曼表100中第2個基準符號索引值 HfmBase[2].lstOfs=5。 請參照第10圖,其繪示係為第二實施例之精簡霍夫 曼表。前述第一實施例係於多個相同位元長度之霍夫曼碼 中選擇碼值最小之霍夫曼碼及其對應之索引值做為基準 籲 霍夫曼碼HfmBase[n]. 1 stCode及基準符號索引值 HfmBase[n].lstOfs。第二實施例之精簡霍夫曼表丨⑽與第 一實施例之精簡霍夫曼表50不同之處在於:第二實施例 係於多個相同位元長度之霍夫曼碼中選擇碼值最大之霍 夫曼碼及其對應之索引值做為基準霍夫曼碼 HfmBase[n]. I stCode及基準符號索引值 HfmBase[n].lstOfs。 舉例來說,完整的霍夫曼表1〇中位元長度為3的霍鲁 夫曼碼包括010、011、100、101及11〇。精簡霍夫曼表 100並非紀錄010、011、1〇〇、1〇1及丨1〇中碼值最小之霍 夫曼碼010 ’而是僅紀錄碼值最大之110做為基準霍夫曼 碼HfmBase[2].lstCode,並記錄與霍夫曼碼110對應之索 引值5做為基準符號索引值HfmBase[2].lst0fs。基準霍夫 曼碼110對應之基準霍夫曼碼索引值η等於基準霍夫曼碼 〇 1 〇之位元長度減1。所以,基準霍夫曼碼11 〇對應之基 準霍夫曼碼索引值η等於2。 24 1343192HfmBase[n].lst〇fs, etc., nth reference Huffman code HfmBase[n]. 1 The index of the symbol represented by stCode in the symbol array Sym[]. For example, the symbol corresponding to the Huffman code 110 in Fig. 2 is 5. Since the index value of the symbol 5 in the symbol array Sym[] is also 5, the second reference symbol index value HfmBase[2].lstOfs=5 in the reduced Huffman table 100. Referring to Figure 10, there is shown a reduced Huffman table which is a second embodiment. In the foregoing first embodiment, the Huffman code with the smallest code value and the corresponding index value are selected as the reference Huffman code HfmBase[n]. 1 stCode and in the Huffman codes of the same bit length. The reference symbol index value HfmBase[n].lstOfs. The reduced Huffman table (10) of the second embodiment is different from the reduced Huffman table 50 of the first embodiment in that the second embodiment selects code values in Huffman codes of a plurality of identical bit lengths. The largest Huffman code and its corresponding index value are used as the reference Huffman code HfmBase[n]. I stCode and the reference symbol index value HfmBase[n].lstOfs. For example, a full Huffman table 1 霍 Holmanman code with a bit length of 3 includes 010, 011, 100, 101, and 11 〇. The simplified Huffman table 100 is not the Huffman code 010 that records the smallest code value in 010, 011, 1〇〇, 1〇1, and 丨1〇, but only the 110th code value is the base Huffman code. HfmBase[2].lstCode, and record the index value 5 corresponding to the Huffman code 110 as the reference symbol index value HfmBase[2].lst0fs. The reference Huffman code index value η corresponding to the reference Huffman code 110 is equal to the bit length of the reference Huffman code 〇 1 减 minus one. Therefore, the reference Huffman code index η corresponding to the reference Huffman code 11 等于 is equal to two. 24 1343192

• * TW5226PA 请,意:當第10圖中基準霍夫曼碼索,引值(n)等於〇, 9’ 1 〇’ 11 ’ 12, 13, 14, 1 5時,其所對應的基準符號索引值與 基準霍夫曼碼都是無效的,因為當η等於〇, 9, 10, 11,12, 13, 14, 15時’其NC[n]都是等於零,這表示那些長度為^ +1之霍夫曼碼根本不存在。 請同時參照第10圖及第11圖,新創查閱表11〇之基 準霍夫曼碼索引值Lookup[m]係根據精簡霍夫曼表1〇〇之 基準霍夫曼碼HfmBase[n].lstCode之索引值n所建立的。 #需說明的是,m等於第霍夫曼碼的前導i個數,而基準霍 夫曼碼索引值Lookup[m]等於精簡霍夫曼表1〇〇中具有m 個刚導1之基準霍夫曼碼HfmBase[n] 1 stC〇de的索引值 η。所以L〇〇kuP[m]=n,表示在精簡霍夫曼表1〇〇之基準 霍夫曼碼中,第n個HfmBase[n].lstC〇de的前導1個數等 於m。舉例來說,當新創查閱表11〇之索引值出等於*時, 其L〇〇kuP[m] = L0〇kuP[4] = 4 = n,則表示精簡霍夫曼表 100 之第 4 個基準霍夫曼碼 HfmBase[4].lstCode(= lliio) • 的前導1個數等於4。 然而,上述說明可能會有兩種例外狀況發生。第一種 例外狀況是精簡霍夫曼表100中有二個以上的基準霍夫曼 碼HfmBase[n].〗stCode的前導!個數相同。由於這些前^ 1個數相同的多個基準霍夫曼碼HfmBase[n]」stc〇de分別 對應至多個基準霍夫曼碼索引值η,因此,新創查閱表11〇 之第m個基準霍夫曼碼索引值等於這些基準霍夫曼碼索 引值η之中最小者。由於第1〇圖並無第一種的例外狀況 發生,故無法以第10圖舉例說明。不過,假設某精簡霍 25 1343192• * TW5226PA Please, meaning: when the reference Huffman code in Figure 10, the reference (n) is equal to 〇, 9' 1 〇 ' 11 ' 12, 13, 14, 1 5, the corresponding reference symbol Both the index value and the reference Huffman code are invalid, because when η is equal to 〇, 9, 10, 11, 12, 13, 14, 15 'its NC[n] are equal to zero, which means that the length is ^ + The Huffman code of 1 does not exist at all. Please refer to Fig. 10 and Fig. 11 at the same time. The reference Huffman code index value Lookup[m] of the newly created lookup table is based on the Huffman code HfmBase[n] of the simplified Huffman table. The index value of lstCode is established by n. # It should be noted that m is equal to the number of leading i of the Huffman code, and the reference Huffman code index value Lookup[m] is equal to the base of the reduced Huffman table 1 with m rigid guides 1 The index value η of the Fuman code HfmBase[n] 1 stC〇de. Therefore, L〇〇kuP[m]=n indicates that in the reference Huffman code of the reduced Huffman table, the number of leading ones of the nth HfmBase[n].lstC〇de is equal to m. For example, when the index value of the new lookup table 11 is equal to *, its L〇〇kuP[m] = L0〇kuP[4] = 4 = n, which means the fourth of the simplified Huffman table 100 The base Huffman code HfmBase[4].lstCode(= lliio) • The number of leading 1s is equal to 4. However, there are two exceptions to this description. The first exception is to have more than two benchmark Huffman codes in the Huffman table 100. HfmBase[n]. The number is the same. Since the plurality of reference Huffman codes HfmBase[n]"stc〇de having the same number of the first ^1 numbers respectively correspond to the plurality of reference Huffman code index values η, the mth reference of the new lookup table 11 The Huffman code index value is equal to the smallest of these reference Huffman code index values η. Since there is no first exception in Figure 1, it cannot be illustrated in Figure 10. However, suppose a streamlined Huo 25 1343192

TW5226PA 夫曼表的第1個基準霍夫曼碼HfmBase[l].lstCode及第2 個基準雈夫曼碼HfmBase[2].lstCode的前導1個數都等於 0。由於該精簡霍夫曼表的第丨個基準霍夫曼碼索引值1 小於第2個基準霍夫曼碼索引值2,因此該精簡霍夫曼表 所對應的新創查閱表之第〇個基準霍夫曼碼索引值 Lookup[0]=l。 第二種例外狀況是新創查閱表】1〇的查閱索引值m 無法由精簡霍夫曼表100的基準霍夫曼碼 HfmBase[n].lstCode獲得,則第m個基準霍夫曼碼索引值 L〇〇kUp[m]等於第m+1個基準霍夫曼碼索引值 Lm>kUp[m+l]。舉例來說,新創查閱表11〇的基準霍夫曼 碼索引值LookupH]無法由精簡霍夫曼表1〇〇獲得也= 說精簡霍夫曼表100中沒有一個基準霍夫曼碼The first base Huffman code HfmBase[l].lstCode of the TW5226PA Fuman table and the leading number of the second reference Huffman code HfmBase[2].lstCode are both equal to zero. Since the first reference Huffman code index value 1 of the reduced Huffman table is smaller than the second reference Huffman code index value 2, the third of the newly created lookup tables corresponding to the reduced Huffman table The reference Huffman code index value Lookup[0]=l. The second exception is the new lookup table. The reference index value m of 1〇 cannot be obtained from the reference Huffman code HfmBase[n].lstCode of the reduced Huffman table 100, then the mth reference Huffman code index The value L 〇〇 kUp [m] is equal to the m+1th reference Huffman code index value Lm > kUp [m + l]. For example, the baseline Huffman code index value LookupH of the new lookup table 11〇 cannot be obtained by the reduced Huffman table 1也. = There is no reference Huffman code in the reduced Huffman table 100.

HfmBase[n].lstCode的前導!個數等於卜此時就讓新 創查閱表110的基準霍夫曼碼索引值L〇〇kup[1] = Lookup[2] = 2。 请參照第11圖’其繪示係為第二實施例之精簡霍夫 曼表之新創查閱表。由於第二實施例之精簡霍夫曼表_ =第-實施例之精簡霍夫曼表50不同,因此對應於精簡 霍夫曼表100之新創查閱表11〇自然與對應於精簡霍夫曼 表50之新創查閱表7〇不同。需特別說明的是杳 引值爪等於〇,精簡霍夫曼表5G記錄之基準霍夫曼^索索 而精簡霍夫曼表_記錄之基準霍夫曼碼索 請注意:當第11圖中查閱索引值⑽大於8時其所 26 1343192The leader of HfmBase[n].lstCode! The number is equal to the value of the reference Huffman code index L〇〇kup[1] = Lookup[2] = 2 of the new lookup table 110. Please refer to Fig. 11 for a new look-up table which is a simplified Huffman table of the second embodiment. Since the condensed Huffman table of the second embodiment _ = the condensed Huffman table 50 of the first embodiment is different, the new lookup table 11 corresponding to the condensed Huffman table 100 is naturally corresponding to the condensed Hoffman Table 50 of the new creation checklist 7 is different. It should be specially stated that the 杳 杳 爪 〇 〇 〇 〇 〇 霍夫 霍夫 霍夫 霍夫 霍夫 H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H When the index value (10) is greater than 8, its 26 1343192

., · TW5226PA 對應的基準霍夫曼♦碼索引值是無效的,因為第1〇圖中之 最大有效的基準霍夫曼碼索引值(n)為8,其對應的, HfmBase[n].lstCode為ini η〗〗〇,也就是此霍夫曼表的 最大碼為1111 1111 0。所以最大的前導1個數為8,也 就是最大的查閱索引值m為8。 由於實施例一與實施例二選擇的基準值不同,所以產 生的精簡霍夫曼表與新創查閱表的内容乃至於其產生方 法也不同。雖然產生方法不同,但產生上的精神都是一 •致,故在此不再贅述如何產生實施例二之精簡霍夫曼表 100與新創查閱表110。 凊參照第12圖,其繪示係為依照第二實施例之解碼 方法之^㈣。首先如步驟聊所示,根據待解碼之位 凡串之前導位元1個數取得新創查閱表11〇之查閱索引值 m,查閱索引值m用以指示位元串之前導〗個數。由於查 閱索引值m用以指示位元串之前導丨個數多寡,因此當^ 閱索引值m等於】時,表示位元串之前導丨個數等於"丨了 •當查閲索引值m等於2時,表示位元串之前導⑽數等於 2 ’以此類推。也就是說查閱索引值m等於位元串之前導 1個數。 守 接著如步驟1020所示,根據查閱索引值m取得精鬥 霍夫曼表100之基準霍夫曼碼索引值η,基準霍夫曼碼^ 引值η用以索引精簡霍夫曼表1〇〇之第η個基準霍夫曼喝 HfmBaSe[n]. 1 stCode及第η個基準符號索引值 又The reference Huffman ♦ code index value corresponding to TW5226PA is invalid because the maximum valid reference Huffman code index value (n) in the first diagram is 8, which corresponds to HfmBase[n]. lstCode is ini η〗 〖, that is, the maximum code of this Huffman table is 1111 1111 0. Therefore, the maximum number of leading ones is 8, that is, the maximum index value m is 8. Since the reference values selected in the first embodiment and the second embodiment are different, the contents of the simplified Huffman table and the newly created look-up table are different from each other. Although the production method is different, the spirit of the generation is one, so that the simplified Huffman table 100 and the new look-up table 110 of the second embodiment are not described herein. Referring to Fig. 12, it is shown that the decoding method according to the second embodiment is (4). First, as shown in the step chat, the reference index value m of the newly created lookup table 11 is obtained according to the number of bits before the string to be decoded, and the index value m is used to indicate the number of leading bits of the bit string. Since the reference index value m is used to indicate the number of leading digits before the bit string, when the index value m is equal to 】, the number of leading words before the bit string is equal to "丨• When referring to the index value m When it is equal to 2, it means that the number of leading bits (10) of the bit string is equal to 2' and so on. That is to say, the reference index value m is equal to one number before the bit string. Next, as shown in step 1020, the reference Huffman code index value η of the trick Huffman table 100 is obtained based on the lookup index value m, and the reference Huffman code ^ index η is used to index the reduced Huffman table. The nth reference Huffman drink HfmBaSe[n]. 1 stCode and the nth reference symbol index value

HfmBase[n].lst〇fs,且基準霍夫曼碼索引值η等於第打個 基準霍夫曼碼HfmBase[n]. i stCode之位元長度減!。其中, 27 1343192 TW5226PA _ · 基準霍夫曼碼索引值η等於基準霍夫曼碼索引值 4 *HfmBase[n].lst〇fs, and the reference Huffman code index value η is equal to the first hit Hoffman code HfmBase[n]. The bit length of i stCode is reduced! . Where 27 1343192 TW5226PA _ · The reference Huffman code index value η is equal to the reference Huffman code index value 4 *

Lookup[m] ° 跟著如步驟1030所示,根據基準霍夫曼碼索引值η 取得位元串之η+1個最重要位元。其中,位元串之η+1個 最重要位元於第二實施例中係以ν標示。由於基準霍夫曼 碼索引值η等於第η個基準霍夫曼碼HfmBase[n].lstCode 之位元長度減1,因此,於步驟1030中能根據基準霍夫曼 碼索引值η先取得第η個基準霍夫曼碼Lookup[m] ° follows, as shown in step 1030, the n+1 most significant bits of the bit string are obtained from the reference Huffman code index value η. The n+1 most significant bits of the bit string are indicated by ν in the second embodiment. Since the reference Huffman code index value η is equal to the bit length of the nth reference Huffman code HfmBase[n].lstCode minus 1, the first Huffman code index value η can be obtained in step 1030. η reference Huffman codes

HfmBase[n].lstCode之位元長度。之後再根據第η個基準 鲁 霍夫曼碼HfmBase[n].lstCode之位元長度取得位元串之 n+1個最重要位元。 然後如步驟】040所示,根據n+1個最重要位元ν與 第η個基準霍夫曼碼HfmBase[n].lstCode產生差異值 Diff。其中,差異值Diff等於該第η個基準霍夫曼碼 HfmBase[n].lstCode 減 n+1 個最重要位元 ν。 之後如步驟1050所示,判斷差異值Diff是否小於 零?若差異值Diff不小於零,則如步驟1060所示,符號 籲 索引值Ofs等於第η個基準符號索引值HfmBase[n].lstOfs 減差異值Diff。相反地,若差異值Diff小於零,則如步驟 1080所示,遞增基準霍夫曼碼索引值η後再回到步驟 1030。 接著如步驟1070所示,根據符號索引值Ofs取得符 號,即S。其中,步驟1070係根據符號索引值Ofs自檔頭 中的符號陣列Sym[]中取得對應之符號,即S等於 Sym[0fs]。 28 1343192The bit length of HfmBase[n].lstCode. Then, the n+1 most significant bits of the bit string are obtained according to the bit length of the nth reference Luhoffman code HfmBase[n].lstCode. Then, as shown in step 040, a difference value Diff is generated according to n+1 most important bits ν and the nth reference Huffman code HfmBase[n].lstCode. Wherein, the difference value Diff is equal to the nth reference Huffman code HfmBase[n].lstCode minus n+1 most important bits ν. Then, as shown in step 1050, is it judged whether the difference value Diff is less than zero? If the difference value Diff is not less than zero, as shown in step 1060, the symbolic index value Ofs is equal to the nth reference symbol index value HfmBase[n].lstOfs minus the difference value Diff. Conversely, if the difference value Diff is less than zero, then as shown in step 1080, the reference Huffman code index value η is incremented and then returned to step 1030. Next, as shown in step 1070, the symbol, i.e., S, is obtained based on the symbol index value Ofs. Wherein, step 1070 obtains a corresponding symbol from the symbol array Sym[] in the header according to the symbol index value Ofs, that is, S is equal to Sym[0fs]. 28 1343192

• TW5226PA 跟著如步驟1072所示,移除位 位元,以產生-移除後位元串。疋串之州個最重要 為使上料DM牧解財衫 onion 新- - a, η 乃百先如前述步驟1010 所Γ位70串0111011之前導位元1個數等於〇,根據位 :=1011/前導位元1個數取得新創查閱表110之查 閱索引值m等於〇。 接著如前述步驟1020所示,精簡霍 準霍夫曼碼索引值n等於新創杳間砉:矿 之丞 t啊別笪閲表〗1〇記錄之基準霍夫 又碼索引值L〇〇kuP[0]等於!。跟著如前述步驟刪所示, 根據基準霍夫曼碼索引值n等於1取得位元串之2個最重 要位元01。 然後如前述步驟1040所示,根據基準霍夫曼碼索引 值η第-次搜尋精簡霍夫曼表1〇〇之第“固基準霍夫曼碼 HfmBase[l].lstCode及第1個基準符號索引值• The TW5226PA then removes the bit bit as shown in step 1072 to generate a bit string after the removal. The most important thing for the state of the string is to make the DM grazing onion new - - a, η is a hundred first as in the previous step 1010, the number of the leader of the 70 string 0111011 is equal to 〇, according to the bit: = The number of 1011/preamble bits is 1 and the lookup index value of the newly created lookup table 110 is equal to 〇. Then, as shown in the foregoing step 1020, the index value n of the streamlined Hoffmann Huffman code is equal to the value of the new creation: 矿 矿 啊 啊 啊 〗 〗 〗 〗 〗 〇 〇 〇 〇 霍夫 霍夫 霍夫 又 又 又 又 又 又 霍夫 霍夫 霍夫 霍夫 霍夫 霍夫 霍夫[0] is equal! . Following the deletion of the preceding steps, the two most important bits 01 of the bit string are obtained from the reference Huffman code index value n equal to one. Then, as shown in the foregoing step 1040, the first "solid reference Huffman code HfmBase[l].lstCode and the first reference symbol of the simplified Huffman table 1" are searched according to the reference Huffman code index value η. Index value

HfmBaSe[1].lst0fs。精簡霍夫曼表1〇〇之第ι個基準霍夫 曼碼HfmBase[l].lstCode為〇〇’而精簡霍夫曼表1〇〇之第 1個基準符號索引值HfmBase⑴〗st〇fs為〇。差異值 等於第2個基準霍夫曼碼00減位元串之2個最重要位元 01等於-1。 之後如前述步驟1050所示,判斷差異值Diff是否小 於零?由於Diff等於-1,因此差異值Diff小於零。所以將 如前述步驟1080所示,遞增基準霍夫曼碼索引值n。遞增 後之基準霍夫曼碼索引值η由1改為2。重複執行步驟 1030,根據基準霍夫曼碼索引值η等於2以取得位元串之 29 1343192HfmBaSe[1].lst0fs. The first reference symbol index HfmBase(1)〗 st〇fs of the Huffman Huffman Table 1〇〇 第 霍夫 H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H H Hey. The difference value is equal to the 2nd most significant bit of the 2nd reference Huffman code 00 minus bit string 01 is equal to -1. Then, as shown in the foregoing step 1050, is it judged whether the difference value Diff is less than zero? Since Diff is equal to -1, the difference value Diff is less than zero. Therefore, as shown in the previous step 1080, the reference Huffman code index value n is incremented. The incremented reference Huffman code index value η is changed from 1 to 2. Step 1030 is repeated, according to the reference Huffman code index value η is equal to 2 to obtain the bit string 29 1343192

TW5226PA 3個最重要位元〇 11。 * 重複執行步驟1040,根據基準霍夫曼碼索引值11等 於2第二次搜尋精簡霍夫曼表100之第2個基準霍夫曼碼TW5226PA 3 most important bits 〇 11. * Repeat step 1040 to search for the second base Huffman code of the reduced Huffman table 100 based on the reference Huffman code index value 11 equal to 2 for the second time.

HfmBase[2].lstCode及之第2個基準符號索引值HfmBase[2].lstCode and the second reference symbol index value

HfmBaSe[2].lst0fs。精簡霍夫曼表1〇〇之第2個基準霍夫 曼碼胸8咖[2].1说0如為11〇,而精簡霍夫曼表1〇〇之 第2個基準符號索引值HfmBase[2].lst〇fs為5。差異值HfmBaSe[2].lst0fs. Streamlined Huffman Table 1 〇〇 2nd benchmark Huffman code chest 8 coffee [2].1 says 0 as 11〇, and streamlined Huffman table 1〇〇 2nd reference symbol index value HfmBase [2].lst〇fs is 5. Difference value

Diff等於第2個基準霍夫曼碼削減位^串之3個最重要 位元011等於3。 重複執行步驟1〇5〇以判斷差異值Diff是否小於零? 由於Diff等於3,因此差異值赌不小於零。所以將如前 述步驟1060所示,第2個基準符號索引值 HfmBase[2],lst〇fs減差異值〇游產生符號索引值⑽。由 於差異值Diff等於3且第2個基準符號索引值 HfmBaSe[2].lst〇fs等於5 ’所以符號索引值〇fs等於5_3 -2。接著執行步驟1〇7〇以根據符號索引值〇伪自檔頭中 的符號陣列Sym□取得符號S等於Sym[〇fs]。舉例來說, 符號陣列例如為8 1〇,11}。所以,當符號 索引值〇fs等於2時,取得符號等於Sym[2]等於2。 跟著執行步驟1〇72以移除位元串〇111〇11之3個最 重要位元’並獲得移除後位元串1 〇 1 J。 為使上述第二實施例之解碼方法更為清晰易懂,下述 將再以位元串0010為例說明:首先如前述步驟1〇1〇所 不,位70串0010之前導位元1個數等於〇,根據位元串 0010之前導位元1個數取得新創查閱表110之查閱索引值 1343192Diff is equal to the 2nd most important bit 011 of the 2nd reference Huffman code reduction bit string 011 is equal to 3. Repeat step 1〇5〇 to determine if the difference value Diff is less than zero? Since Diff is equal to 3, the difference value bet is not less than zero. Therefore, as shown in the above step 1060, the second reference symbol index value HfmBase[2], lst〇fs minus the difference value migration generates the symbol index value (10). Since the difference value Diff is equal to 3 and the second reference symbol index value HfmBaSe[2].lst〇fs is equal to 5 ', the symbol index value 〇fs is equal to 5_3 -2. Next, step 1〇7〇 is performed to obtain the symbol S equal to Sym[〇fs] according to the symbol index value 〇 pseudo symbol array Symbol. For example, the symbol array is, for example, 8 1 〇, 11}. Therefore, when the symbol index value 〇fs is equal to 2, the obtained symbol is equal to Sym[2] equal to 2. Steps 〇72 are followed to remove the three most significant bits ' of the bit string 〇111〇11 and the removed bit string 1 〇 1 J is obtained. In order to make the decoding method of the second embodiment clearer and easier to understand, the following description will be made by taking the bit string 0010 as an example: first, as in the foregoing step 1〇1〇, the bit 70 string 0010 is preceded by one bit. The number is equal to 〇, and the reference index value 1343192 of the newly created lookup table 110 is obtained according to the number of the leading bits before the bit string 0010.

• - TW5226PA m等於0。 • # 接著如前述步驟1020所示,精簡霍夫曼表100之基 準霍夫曼碼索引值η等於新創查閱表110記錄之基準霍夫 曼碼索引值Lookup[0]等於1。 跟著如前述步驟1030所示,根據基準霍夫曼碼索引 值η等於1取得位元串之2個最重要位元00。然後如前述 步驟1040所示,根據基準霍夫曼碼索引值η第一次搜尋 精簡霍夫曼表1〇〇之第1個基準霍夫曼碼 φ HfmBase[l].lstCode及之第1個基準符號索引值• - TW5226PA m is equal to 0. • # Next, as shown in the previous step 1020, the reference Huffman code index value η of the reduced Huffman table 100 is equal to the reference Huffman code index value Lookup[0] of the new lookup table 110 record is equal to one. Following the previous step 1030, the two most significant bits 00 of the bit string are obtained based on the reference Huffman code index value η equal to one. Then, as shown in the foregoing step 1040, the first reference Huffman code φ HfmBase[l].lstCode and the first one of the reduced Huffman table 1 are searched for the first time according to the reference Huffman code index value η. Reference symbol index value

HfmBase[l].lstOfs。精簡霍夫曼表100之第1個基準霍夫 曼碼HfmBase[l].lstCode為00,而精簡霍夫曼表100之第 1個基準符號索引值HfmBase[l].lstOfs為0。差異值Diff 等於第1個基準霍夫曼碼00減位元串之2個最重要位元 00等於0。 之後如前述步驟1050所示,判斷差異值Diff是否小 於零?由於Diff等於0,因此差異值Diff不小於零。 • 接著如前述步驟1060所示,第1個基準符號索引值 HfmBase[l].lstOfs減差異值Diff產生符號索引值Ofs。由 於差異值Diff等於0且第1個基準符號索引值 HfmBase[l].lstOfs等於0,所以符號索引值Ofs等於0-0 =0。接著執行步驟1070以根據符號索引值Ofs自檔頭中 的符號陣列Sym□取得符號S等於Sym[Ofs]。舉例來說, 符號陣列例如為{〇,1,2,3,4,5,6,7,8,9,10,11}。所以,當符號 索引值Ofs等於0時,取得符號等於Sym[0]等於0。 跟著執行步驟1072以移除位元串0010之2個最重要 31 1343192 TW5226PA · · 位元,並獲得移除後位元串10。 • » 上述實施例所揭露之霍夫曼解碼方法,具有多項特 點,當原本的霍夫曼表越大時,這些特點就越顯著: 當精簡霍夫曼表及其新創查閱表小於完整的霍夫曼 表及其傳統查閱表。請參照第13圖,該圖乃根據JPEG標 準所提供之應用於AC亮度(AC luminance)或AC彩度 (AC chrominance)的霍夫曼表製作,其繪示係為傳統前導1 搜尋(Leading 1’s Search)、傳統一位元二分搜尋(One-bit φ Binary Search)及本實施範例之表格大小之比較表。由第13 圖可比較得知,本實施範例精簡霍夫曼表及其新創查閱表 之表格小於完整的霍夫曼表及其傳統查閱表。 請參照第14圖,該圖亦根據JPEG標準所提供之應 用於AC亮度與AC彩度的霍夫曼表製作,其繪示係為傳 統前導1搜尋、傳統一位元二分搜尋及本實施範例之搜索 次數比較表。 由於精簡霍夫曼表小於完整的霍夫曼表,因此,精簡 _ 霍夫曼表及新創查閱表的重建時間將小於完整的霍夫曼 表及傳統查閱表的重建時間,而提高表格的重建速度。 綜上所述,雖然已以多個實施例揭露如上,然其並非 用以限定本實施範例。本實施範例所屬技術領域中具有通 常知識者,在不脫離本實施範例之精神和範圍内,當可作 各種之更動與潤飾。因此,本實施範例之保護範圍當視後 附之申請專利範圍所界定者為準。 32 1343192HfmBase[l].lstOfs. The first reference Huffman code HfmBase[l].lstCode of the reduced Huffman table 100 is 00, and the first reference symbol index value HfmBase[l].lstOfs of the reduced Huffman table 100 is 0. The difference value Diff is equal to the 1st reference Huffman code 00 minus the 2 most significant bits of the bit string 00 is equal to 0. Then, as shown in the foregoing step 1050, is it judged whether the difference value Diff is less than zero? Since Diff is equal to 0, the difference value Diff is not less than zero. • Next, as shown in the foregoing step 1060, the first reference symbol index value HfmBase[l].lstOfs minus the difference value Diff produces a symbol index value Ofs. Since the difference value Diff is equal to 0 and the first reference symbol index value HfmBase[l].lstOfs is equal to 0, the symbol index value Ofs is equal to 0-0 =0. Next, step 1070 is executed to obtain the symbol S equal to Sym[Ofs] from the symbol array Sym□ in the header according to the symbol index value Ofs. For example, the symbol array is, for example, {〇, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}. Therefore, when the symbol index value Ofs is equal to 0, the obtained symbol is equal to Sym[0] equal to 0. Step 1072 is followed to remove the two most important 31 1343192 TW5226PA · bits of the bit string 0010, and the removed bit string 10 is obtained. • The Huffman decoding method disclosed in the above embodiment has a number of features. The larger the original Huffman table is, the more significant these features are: When the reduced Huffman table and its newly created lookup table are smaller than the complete Hoffman table and its traditional lookup table. Please refer to Figure 13, which is based on the Huffman table for AC brightness or AC chrominance provided by the JPEG standard. The drawing is based on the traditional lead 1 search (Leading 1's). Search), the traditional one-bit φ Binary Search and the table size comparison table of this example. As can be seen from Fig. 13, the table of the simplified Huffman table and its newly created look-up table of this embodiment is smaller than the complete Huffman table and its conventional look-up table. Please refer to Figure 14, which is also based on the Huffman table for AC brightness and AC chroma provided by the JPEG standard. The drawing is based on traditional lead 1 search, traditional one-bit binary search and this example. Comparison of the number of searches. Since the reduced Huffman table is smaller than the complete Huffman table, the reconstruction time of the reduced _ Huffman table and the new lookup table will be less than the reconstruction time of the complete Huffman table and the traditional lookup table, and the table is improved. Rebuild speed. In view of the above, although the above has been disclosed in various embodiments, it is not intended to limit the embodiment. It is to be understood that those skilled in the art can make various changes and modifications without departing from the spirit and scope of the embodiments. Therefore, the scope of protection of this embodiment is intended to be defined by the scope of the appended claims. 32 1343192

,TW5226PA 【圖式簡單說明】 第1圖繪示係為編碼端之霍夫曼表。 第2圖繪示係為完整的解碼端重建之霍夫曼表。 第3圖繪示係為傳統前導1搜尋(Leading l’s Search) 之查閱表。 第4圖繪示係為傳統一位元二分搜尋(One-bit Binary Search)之查閱表。 第5圖繪示係為第一實施例之精簡霍夫曼表。 第6圖繪示係為產生第一實施例之精簡霍夫曼表之 流程圖。 第7圖繪示係為第一實施例之精簡霍夫曼表之新創 查閱表。 第8圖繪示係為產生第一實施例之精簡霍夫曼表之 新創查閱表之流程圖。 第9圖繪示係為依照第一實施例之解碼方法之流程 圖。 第10圖繪示係為第二實施例之精簡霍夫曼表。 第11圖,其繪示係為第二實施例之精簡霍夫曼表之 新創查閱表。 第12圖繪示係為依照第二實施例之解碼方法之流程 圖。 第13圖繪示係應用於JPEG標準所提供之AC亮度 或AC彩度的霍夫曼表的傳統前導1搜尋(Leading l’s Search)、傳統一位元二分搜尋(One-bit Binary Search)及本 實施範例之表格大小比較表。 33 1343192, TW5226PA [Simple description of the diagram] Figure 1 shows the Huffman table as the encoding end. Figure 2 depicts the Huffman table reconstructed for the complete decoder. Figure 3 depicts a look-up table for the Leading l’s Search. Figure 4 depicts a look-up table for a traditional One-bit Binary Search. Figure 5 is a simplified Huffman table of the first embodiment. Figure 6 is a flow chart showing the generation of the reduced Huffman table of the first embodiment. Fig. 7 is a diagram showing a new look-up table of the reduced Huffman table of the first embodiment. Figure 8 is a flow chart showing the creation of a new lookup table for the reduced Huffman table of the first embodiment. Fig. 9 is a flow chart showing the decoding method according to the first embodiment. Figure 10 is a simplified Huffman table of the second embodiment. Figure 11 is a diagram showing a new lookup table of the reduced Huffman table of the second embodiment. Fig. 12 is a flow chart showing the decoding method according to the second embodiment. Figure 13 shows the traditional Leading l's Search, the traditional One-bit Binary Search and the present application of the Huffman table applied to the AC brightness or AC chroma provided by the JPEG standard. A table size comparison table for the implementation example. 33 1343192

TW5226PA 第14圖繪示係應用於JPE(Ji標準所提供之AC亮度 與AC彩度的霍夫曼表的傳統前導1搜尋、傳統一位元二 分搜尋及本實施範例之搜索次數比較表。 【主要元件符5^ δ兒明】 10 :霍夫曼表 20 :完整之重建霍夫曼表 50、100 :精簡霍夫曼表 70、110 :新創查閱表 m’、m :查閱索引值 η’ :霍夫曼碼索引值 η:基準霍夫曼碼索引值 410 、 420 、 430 、 440 、 450 、 612 ' 614 、 616 、 618 、 620 、 622 、 624 、 628 ' 630 ' 632 ' 634 ' 710 ' 720 、 730 、 740 、 750 、 760 、 770 、 772 、 1010 、 1020 、 1030 、 1040 、 1050、1060、1070、1072 ' 1080 :步驟 HfmBase[n].lstOfs:基準符號索引值 HfmBase[n].lstCode:基準霍夫曼碼 Lookup[m’]:霍夫曼碼索引值TW5226PA Figure 14 shows a comparison of the traditional pilot 1 search, traditional one-bit binary search and the search times of this example applied to JPE (Ji standard (AC standard brightness and AC chroma) Huffman table. Main component code 5^ δ 儿明] 10 : Huffman Table 20: Complete reconstruction Huffman table 50, 100: Streamlined Huffman table 70, 110: Newly created look-up table m', m: Lookup index value η ' : Huffman code index value η: reference Huffman code index values 410 , 420 , 430 , 440 , 450 , 612 ' 614 , 616 , 618 , 620 , 622 , 624 , 628 ' 630 ' 632 ' 634 ' 710 '720, 730, 740, 750, 760, 770, 772, 1010, 1020, 1030, 1040, 1050, 1060, 1070, 1072 '1080: Step HfmBase[n].lstOfs: reference symbol index value HfmBase[n]. lstCode: reference Huffman code Lookup[m']: Huffman code index value

Lookup[m]:基準霍夫曼碼索引值Lookup[m]: reference Huffman code index value

Node :節點Node : node

Bit :位元Bit : bit

NodeSE :指示值NodeSE : indicator value

Flag :旗標值Flag : Flag value

Index、Context :欄位 34Index, Context: field 34

Claims (1)

1343192 J TW5226PA 七、申請專利範圍: 1. 一種解碼方法;包括: , 根據-位元串之-前導位元!個數取得_新創查閱 之第m個查閱索引值,該第則固查閱索引值等於待解 碼的位元串之前導1個數; 根據該第出個查閱索引值取得一精簡霍夫曼表之第η 個基準霍夫曼碼索引值,該第η個基準霍夫曼碼索 以索引該精簡霍夫曼表之第η個基 及 丞+戛夫曼碼及一第n個 ίίΓΓΓ且該基準霍夫曼碼索5丨值等於該第η個 基準霍夫曼碼之位元長度減!; 根據該第η個基準霍夫曼碼索引值取得該位元串之 η+1個最重要位元; 生一州個最重要位元與該第η個基準霍夫曼媽產 判斷該差異值是否小於零; 脖值科料,根肋Μ值及料η個基準 付號索引值產生一符號索引值; 根據該符號索引值取得一符號。 2·如申請專利範圍第!項所述之解碼方法更包括 位元串移除該位元串之n+1個最重要位元,以產生一移除後 差異專利㈣第1項所狀解碼枝,其中該 :異值等於该n+1個最重要位元減該第。個基準霍夫曼 4.如申請專利範@第丨項所述之解碼方法其中該 35 1343192 TW5226PA Ϊ異值等於該第11個基準霍夫曼碼減該⑽個最重要位 5:如申請專利範圍第1項所述之解竭方法,更包括. 值。右该差異值小於零,調整該第n個基準霍夫曼碼索引 6·如申請專利範圍第5項所述之解碼方法, 霍夫曼碼索引值之該步驟中,係遞減該 第η個基準霍夫曼碼索引值。 7.如申4專利範g第5項所述之解碼方法,其 =整該第η個基準霍夫曼碼索引值之 第η個基準霍夫曼碼索引值。 $係遞增4 8·如申請專利範圍第1項所述之解财法,盆中今 付號索引值等於該差異值加該第η個基準符號索引值/ 專利範圍第1項所述之解碼方法,其中該 虎索引值等於該第η個基準符號索引值減該差里值。 據二:;霍專==f之解碼方法’其中根 重要位元之二=;碼索—-個最 根據該第η個基準霍夫曼碼㈣值取得該第η個基準 霍夫曼碼之該位元長度;以及 元 根據該位元長度取得該位元串之該_個最重要位 日如申請專利範圍第丨項所述之解碼方法,其中於 取侍一符號之該步驟係根據該符號索引值於一檔頭之一、 符號陣列中取得該符號。 田 36 TW5226PA ‘ 範圍第1項—包括: 适立孩精間霍夫曼表;以及 =立對應於該精簡霍夫曼表之該新創杳閱表。 於二=範圍第12項所述之解碼二其中 括每-種位-县表之该步驟係根據一符號陣列、-包 陣列數陣列及該霍夫曼個數 基準霍夫曼碼。夫曼表之基準符號索引值及 於建二圍第13項所述之解碼方法,其中 η個基準霍ΙΑ 步驟’該精簡霍夫曼表之該第 ㈣)中碼值為;:二:夫曼表中所有位元長度為 =如申請專·_ 13項所述之解碼方法㈠ 二=簡夫= 之該步驟’該精簡霍夫曼表之該第 於建請專㈣13項所叙解碼方法,其中 值等二m之該步驟’該第_基準符號索引 基準霍夫曼碼所代表的符號在該符號陣列 17.如申請專利範圍第12項所述之解碼方法,1 驟建iff於該精簡霍夫曼表之該新創查閱表之該步、 第η個精簡霍夫曼表之該第n個基準霍夫曼碼及該 基準“曼瑪夫:索引值產生該新創查閱表之,個 37 U4J192 TW5226PA 、I8.如申請專$範圍第12項所述之解碼方法,其中 =建,對應於該精簡霍夫曼表之該新創查閱表之該步· 意笼該精簡霍夫曼表之該第n個基準霍夫曼碼之前導⑽ 該新創查閱表之該第m個基準霍夫曼碼索引值 、^精間霍夫曼表之該第n個基準霍夫曼碼索引值。 士 ^9.如申請專利範圍第12項所述之解碼方法,其中 6亥精簡霍夫曼表包括複數個料1個數等於m之基準霍夫 該些前導!個數等於,之基準霍夫曼碼分ς對應至 ^ ί個基準霍夫曼碼索引值,該新創查閱表之第@個基準 夫曼碼索引值等於該些基準霍夫曼碼索引值之中最小 > 如申請專利範圍第12項所述之解碼方法,其^ δ亥精簡霍夫曼表包括複數個前導1個數等於m之基準霍· 曼碼,該㈣導!個數等Km之基準霍夫曼碼分別對應\ 複數個基準霍夫曼碼索引值’該新創查閱表之第m個基』 霍夫曼碼索引值等於該些基準霍夫曼碼索引值之中最= 者01343192 J TW5226PA VII. Patent application scope: 1. A decoding method; including: , according to the - bit string - leading bit! The number is obtained from the mth lookup index value of the newly-inquired reference, and the first fixed reference index value is equal to the number of leading bits of the bit string to be decoded; and a reduced Huffman table is obtained according to the first lookup index value The nth reference Huffman code index value, the nth reference Huffman code to index the nth base of the reduced Huffman table and the 丞+戛夫曼 code and an nth ίίΓΓΓ The reference Huffman code 5 丨 value is equal to the bit length of the nth reference Huffman code minus! Obtaining the n+1th most significant bit of the bit string according to the nth reference Huffman code index value; determining the difference between the most important bit of the first state and the nth reference Huffman Whether the value is less than zero; the neck value, the root rib value, and the n base reference index values generate a symbol index value; a symbol is obtained according to the symbol index value. 2. If you apply for a patent range! The decoding method of the item further includes removing, by the bit string, the n+1 most significant bits of the bit string to generate a decoded branch of the first item of the removed difference patent (4), wherein the difference value is equal to The n+1 most significant bits are decremented by the first. Reference Huffman 4. The decoding method described in the patent application section [the above] wherein the 35 1343192 TW5226PA distinct value is equal to the 11th reference Huffman code minus the (10) most significant bit 5: as claimed The method of exhaustion described in item 1 of the scope includes the value. Right, the difference value is less than zero, and the nth reference Huffman code index is adjusted. 6. The decoding method according to item 5 of the patent application scope, in the step of the Huffman code index value, the ηth is decremented Base Huffman code index value. 7. The decoding method according to claim 5, wherein the nth reference Huffman code index value of the nth reference Huffman code index value is integer. $ is incremented by 4 8 · As described in claim 1 of the patent scope, the index value of the basin is equal to the difference value plus the index of the nth reference symbol index / the decoding described in item 1 of the patent scope The method wherein the tiger index value is equal to the nth reference symbol index value minus the difference value. According to two:; Huo's == f decoding method 'the root of the important bit two =; code - the most based on the nth reference Huffman code (four) value to obtain the nth reference Huffman code The length of the bit; and the method for obtaining the _ most significant bit of the bit string according to the length of the bit, as described in the scope of claim 2, wherein the step of taking a symbol is based on The symbol index value is obtained in one of the first gears and in the symbol array. Field 36 TW5226PA ‘ Scope 1 – includes: Optimum Hoffman Table; and = 立 corresponding to the condensed Hoffman table of this new reading. The decoding described in item 12 of the second = range, wherein each step of the bit-count table, is based on a symbol array, an array of array numbers, and the Huffman number reference Huffman code. The reference symbol index value of the Fuman table and the decoding method described in Item 13 of Jian Jianwei, wherein n code values of the nth reference 霍ΙΑ step 'the condensed Huffman table (4)); The length of all the bits in the Mann table is = the decoding method as described in the application _ 13 items. (1) The second step = the simple step = the step of the simplification of the Huffman table. a step in which the value is equal to two m, the symbol represented by the _ datum reference index reference Huffman code is in the symbol array 17. The decoding method as described in claim 12 of the patent application, 1 The step of the newly created lookup table of the Huffman table, the nth reference Huffman code of the nth reduced Huffman table and the reference "Manmarf: the index value generates the newly created lookup table , 37 U4J192 TW5226PA, I8. For the decoding method described in the 12th item of the scope of the application, wherein = construction, corresponding to the step of the newly created lookup table of the simplified Huffman table, the meaning of the streamlined Hough The nth reference Huffman code of the Man table is preceded by (10) the mth reference Huffman code of the newly created lookup table The index value, the nth reference Huffman code index value of the Huffman table. The decoding method according to claim 12, wherein the 6-Hail simplified Huffman table includes a complex number The number of pieces of material is equal to the reference of m. The number of the leading numbers is equal to, the reference Huffman code is corresponding to the index of the Huffman code of the reference, the @ benchmark of the newly created lookup table The Fraunmann code index value is equal to the smallest among the reference Huffman code index values. The decoding method described in claim 12, wherein the ^ hl lite Huffman table includes a plurality of leading numbers equal to The base of the m ho·man code, the (four) guide! The number of Km base Huffman codes respectively correspond to \ plural reference Huffman code index value 'the mth base of the new lookup table' Huffman code The index value is equal to the most = 0 of the reference Huffman code index values 21.如申請專利範圍第12項所述之解碼方法,其中 f該新創查閱表之第m個查閱索引值無法由該精簡霍夫 曼表獲得’該新創查閱表之第m個查閲索引值等於該新創 查閱表之第m-1個查閱索引值。 ♦ 22.如申請專利範圍第12項所述之解碼方法,其令 當該新創查閱表之第m個查閱㈣值無法由該精簡霍夫 曼表獲得’該_查_之第⑺個查㈣引值等於該新創 查閱表之第m+1個查閱索引值。 3821. The decoding method of claim 12, wherein the mth lookup index value of the newly created lookup table cannot be obtained from the reduced Huffman table. The mth view of the newly created lookup table The index value is equal to the m-1th lookup index value of the new lookup table. ♦ 22. The decoding method of claim 12, wherein the mth lookup (four) value of the newly created lookup table cannot be obtained from the reduced Huffman table by the (7) check. (4) The reference value is equal to the m+1th index value of the newly created lookup table. 38
TW098119811A 2009-06-12 2009-06-12 Decoding method TWI343192B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW098119811A TWI343192B (en) 2009-06-12 2009-06-12 Decoding method
US12/575,799 US7898444B2 (en) 2009-06-12 2009-10-08 Decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW098119811A TWI343192B (en) 2009-06-12 2009-06-12 Decoding method

Publications (2)

Publication Number Publication Date
TW201044799A TW201044799A (en) 2010-12-16
TWI343192B true TWI343192B (en) 2011-06-01

Family

ID=43305967

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098119811A TWI343192B (en) 2009-06-12 2009-06-12 Decoding method

Country Status (2)

Country Link
US (1) US7898444B2 (en)
TW (1) TWI343192B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI428023B (en) * 2008-11-18 2014-02-21 Ind Tech Res Inst Decoding method and apparatus
GB201014347D0 (en) * 2010-08-28 2010-10-13 Lu Mingying Huffman code table transform and parrallel Huffman decoding
TWI420830B (en) * 2010-12-31 2013-12-21 Ind Tech Res Inst Dynamic decoding lookup table generation method and electronic device applying the same
KR101843087B1 (en) 2012-03-05 2018-03-28 삼성전자주식회사 Apparatus and method for decoding
US20150215633A1 (en) * 2012-08-22 2015-07-30 Nec Corporation Image-data binary arithmetic decoding device and image decoding device
US9584156B1 (en) * 2015-11-17 2017-02-28 International Business Mahcines Corporation Creating a dynamic Huffman table

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5254991A (en) 1991-07-30 1993-10-19 Lsi Logic Corporation Method and apparatus for decoding Huffman codes
US5842033A (en) 1992-06-30 1998-11-24 Discovision Associates Padding apparatus for passing an arbitrary number of bits through a buffer in a pipeline system
US5467131A (en) 1993-12-30 1995-11-14 Hewlett-Packard Company Method and apparatus for fast digital signal decoding
US5654806A (en) 1996-05-06 1997-08-05 Xerox Corporation Code manipulation for a high speed JPEG decoder
US5818364A (en) 1996-06-19 1998-10-06 Hewlett-Packard Company High bit-rate huffman decoding
US5825312A (en) 1996-11-25 1998-10-20 Xerox Corporation DX JPEG Huffman decoder
US6121905A (en) 1998-05-11 2000-09-19 Oak Technology, Inc. Method and apparatus for decoding JPEG symbols
US6130631A (en) 1998-05-11 2000-10-10 Oak Technology, Inc. Method and apparatus utilizing a simplified content-addressable memory for JPEG decoding
US6292114B1 (en) * 1999-06-10 2001-09-18 Intel Corporation Efficient memory mapping of a huffman coded list suitable for bit-serial decoding
US6373412B1 (en) * 2000-12-15 2002-04-16 International Business Machines Corporation Fast JPEG huffman encoding and decoding
US6650996B1 (en) * 2001-12-20 2003-11-18 Garmin Ltd. System and method for compressing data
KR100468742B1 (en) 2002-06-26 2005-01-29 삼성전자주식회사 JPEG Huffman table decoder and method thereof based on binary search technique
US7016547B1 (en) * 2002-06-28 2006-03-21 Microsoft Corporation Adaptive entropy encoding/decoding for screen capture content
US7283591B2 (en) * 2003-03-28 2007-10-16 Tarari, Inc. Parallelized dynamic Huffman decoder
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US6956511B2 (en) 2004-01-06 2005-10-18 Sharp Laboratories Of America, Inc. Multi-symbol/coefficient decode operation for Huffman codes
TWI378654B (en) * 2009-02-04 2012-12-01 Novatek Microelectronics Corp Adaptive canonical huffman decoder and method thereof and video decoder

Also Published As

Publication number Publication date
US20100315269A1 (en) 2010-12-16
US7898444B2 (en) 2011-03-01
TW201044799A (en) 2010-12-16

Similar Documents

Publication Publication Date Title
TWI343192B (en) Decoding method
JP2022008511A5 (en)
CN107094021A (en) Data compression
JP7321208B2 (en) Polar code rate matching method and apparatus
US20100141488A1 (en) Accelerated decompression
TWI223501B (en) Apparatus and method for decoding variable length code
JP5913748B2 (en) Secure and lossless data compression
JP2012124679A (en) Apparatus and method for decoding encoded data
JPH0750592A (en) Statistical decoding method for symbol
CN106936541B (en) RS coding and byte interleaving method and system
RU2010144569A (en) METHOD AND DEVICE FOR DECODING CODE WITH LOW DENSITY GENERATOR MATRIX
US5574448A (en) Method and apparatus for encoding data with variable block lengths
Kaipa et al. System for random access dna sequence compression
JP4309344B2 (en) Digital data compression robustness related to transmission noise
CN111279422A (en) Encoding/decoding method, encoding/decoding device, and storage method and device
JP4536412B2 (en) Recording / reproducing apparatus and signal processing circuit
TW201143306A (en) Method for storing information of nodes in a huffman tree and method for decoding data using an array of the huffman tree
TW201136187A (en) Decoding device, decoding method, and recording medium
TWI227088B (en) Method and related apparatus for searching the syncword of a next frame in an encoded digital signal
TWI384377B (en) Data encoding and decoding method
US20090292699A1 (en) Nucleotide and amino acid sequence compression
JP2008278497A (en) Method and apparatus for channel coding and decoding
TWI303806B (en) System of converting information words to a signal
CN107705340A (en) A kind of method and device of image decoding
Chang et al. A weight method of decoding the (23, 12, 7) Golay code using reduced table lookup

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees