KR100233537B1 - Run-level symbol decoding method and the apparatus - Google Patents
Run-level symbol decoding method and the apparatus Download PDFInfo
- Publication number
- KR100233537B1 KR100233537B1 KR1019970012537A KR19970012537A KR100233537B1 KR 100233537 B1 KR100233537 B1 KR 100233537B1 KR 1019970012537 A KR1019970012537 A KR 1019970012537A KR 19970012537 A KR19970012537 A KR 19970012537A KR 100233537 B1 KR100233537 B1 KR 100233537B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- run
- level
- scan
- scan pattern
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000013500 data storage Methods 0.000 claims abstract description 24
- 238000000926 separation method Methods 0.000 claims description 7
- 230000003213 activating effect Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 7
- 238000013139 quantization Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000011550 data transformation method Methods 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10009—Improvement or modification of read or write signals
- G11B20/10481—Improvement or modification of read or write signals optimisation methods
- G11B20/10509—Improvement or modification of read or write signals optimisation methods iterative methods, e.g. trial-and-error, interval search, gradient descent or feedback loops
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10009—Improvement or modification of read or write signals
- G11B20/10018—Improvement or modification of read or write signals analog processing for digital recording or reproduction
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
개시된 내용은 부호화 과정에서 이용된 것과 동일한 스캔패턴에 따라 [런,레벨]심볼들을 복호화하는 런-레벨심볼 복호화방법 및 장치에 관한 것이다. 본 발명의 장치는 [런,레벨]심볼을 입력받아 런 및 레벨의 데이타로 분리하여 각각 출력하는 심볼분리부와, 매 블록데이타의 런-레벨복호화 시작전에 인가되는 초기화신호에 따라 모든 저장내용을 “0”으로 리세트시키며 인가되는 어드레스에 의해 지정되는 위치에 분리된 레벨데이타를 저장하여 블록단위의 런-레벨복호화된 데이타로 출력하는 데이타저장부와, 분리된 런데이타와 클럭을 입력받아 런길이만큼의 클럭기간동안 데이타저장부가 저장동작하지 않도록 제어하는 인에이블부, 및 다양한 스캔패턴의 스캔순서에 대응하는 스캔어드레스들의 각각을 테이블형태로 미리 저장하고 인가되는 초기화신호에 따라 어드레스포인터를 초기화시키며 스캔패턴인덱스에 근거하여 가변장부호화시 사용된 스캔패턴과 동일한 스캔패턴의 어드레스포인터에 대응하는 스캔어드레스를 클럭에 맞추어 출력하는 어드레스출력부로 구성된다. 따라서, 본 발명은 런데이타에 대응하는 런길이만큼의 데이타 영들(zeros)을 일일이 저장할 필요없이 레벨데이타만을 저장하므로써 런-레벨복호화된 데이타를 얻을 수 있는 효과를 제공한다.The present disclosure relates to a run-level symbol decoding method and apparatus for decoding [run, level] symbols according to the same scan pattern as used in the encoding process. The apparatus of the present invention receives a [run, level] symbol, and separates the data into run and level data, respectively, and outputs all stored contents according to an initialization signal applied before the start of run-level decoding of each block data. The data storage unit resets to "0" and stores the separated level data in the position designated by the applied address, and outputs it as run-level decoded data in units of blocks. An enable unit which controls the data storage unit not to store the data for a length of a clock period, and prestores each of the scan addresses corresponding to the scanning order of various scan patterns in a table form and initializes the address pointer according to an applied initialization signal. The address pointer of the same scan pattern as the scan pattern used for variable length encoding based on the scan pattern index And an address output section for outputting a scan address corresponding to the clock. Accordingly, the present invention provides an effect of obtaining run-level decoded data by storing only level data without having to store data zeros as much as run length corresponding to run data.
Description
본 발명은 가변장부호화된 데이타를 복호화하는 복호화시스템에 관한 것으로, 보다 상세하게는, 다양한 스캔패턴들중 선택된 하나의 스캔패턴을 이용하여 가변장부호화된 런-레벨심볼을 복호화하기 위한 방법 및 장치에 관한 것이다.The present invention relates to a decoding system for decoding variable length coded data, and more particularly, to a method and apparatus for decoding a variable length coded run-level symbol by using a scan pattern selected from various scan patterns. It is about.
최근에, 영상 및 음성신호를 전송하거나 또는 저장매체에 저장하기 위하여 디지탈데이타로 부호화하며, 영상신호 및 음성신호를 재생하기 위하여 부호화된 디지탈데이타를 복호화하는 다양한 방법들이, 영상신호 및 음성신호를 전송 및 수신하기 위한 시스템에서 사용되었다. 그러나, 이러한 부호화 및 복호화시스템에서의 데이타 전송효율을 증진시키기 위하여 전송데이타량을 보다 더 줄이기 위한 기법이 요구되었다. 전송하거나 저장할 디지탈데이타를 부호화하기 위한 방법들의 예로는 변환(transformation)부호화법, 차분펄스부호변조(Differential Pulse Code Modulation; DPCM)법, 벡터양자화법 및 가변장부호화법등이 있다. 이러한 부호화방법들은 전송되거나 저장된 디지탈데이타에 들어있는 여분의(redundant) 데이타를 제거하므로써 전체 데이타량을 더욱 줄인다.Recently, various methods of encoding video data and / or transmitting the video and audio signals or storing the data in a storage medium, and decoding the encoded digital data to reproduce the video and audio signals, transmit the video and audio signals. And in a system for receiving. However, in order to improve data transmission efficiency in such an encoding and decoding system, a technique for further reducing the amount of transmission data has been required. Examples of methods for encoding digital data to be transmitted or stored include transform coding, differential pulse code modulation (DPCM), vector quantization, and variable length coding. These encoding methods further reduce the total amount of data by eliminating redundant data in the transmitted or stored digital data.
각 프레임의 영상데이타는 기설정된 크기(size)의 블록들로 분할되며, 영상신호의 저장 또는 전송, 및 수신을 위해 부호화 및 복호화시스템에서 데이타 처리된다. 각 블록데이타 또는 블록데이타간의 차분데이타는 직교변환(orthogonal-transform)되어, 영상데이타가 주파수영역(frequency domain)의 변환계수들로 변환된다. 알려진 블록데이타 변환방법들로는, 이산코사인변환(Discrete Cosine Transform; DCT), 월시-하다마르변환(Walsh-Hadamard Transform; WHT), 이산퓨리에변환(Discrete Fourier Transform; DFT) 및 이산사인변환(Discrete Sine Transform; DST)등이 있다. 이러한 변환방법들에 의해 얻어진 변환계수들은 계수데이타의 특성에 따라 적절히 양자화 및 가변장부호화되어, 압축효율이 증가된다. 인간의 시각적 인지(認知)는 고주파보다 저주파에 더욱 민감하므로, 고주파성분데이타는 데이타처리에 의해 감소된다. 따라서, 부호화된 데이타량은 감소되어질 수 있다.The image data of each frame is divided into blocks of a predetermined size and processed in an encoding and decoding system for storing or transmitting and receiving an image signal. Each block data or difference data between the block data is orthogonal-transformed, and the image data is converted into transform coefficients of a frequency domain. Known block data transformation methods include Discrete Cosine Transform (DCT), Walsh-Hadamard Transform (WHT), Discrete Fourier Transform (DFT) and Discrete Sine Transform. ; DST). The conversion coefficients obtained by these conversion methods are appropriately quantized and variable length coded according to the characteristics of the coefficient data, thereby increasing the compression efficiency. Since human visual perception is more sensitive to low frequencies than high frequencies, high frequency component data is reduced by data processing. Thus, the encoded data amount can be reduced.
가변장부호화를 위한 장치는 심볼들의 확률들에 근거하여 데이타를 압축하는 것으로서, 입력되는 심볼들을 가변장부호화하기 위한 가변장코드테이블을 구비하고 있다. 이 가변장코드테이블은 허프만부호화(Huffman coding)기법에 따라 설계된다. 허프만부호화는 잘 알려진 것처럼 발생빈도가 상대적으로 높은 심볼일수록 길이가 짧은 코드를 배정하고 발생빈도가 상대적으로 낮은 심볼일수록 길이가 긴 코드를 배정한다. 기존의 부호화시스템에서 가변장부호화장치로 입력하는 심볼들은 통상 런-랭스(run-length)부호화에 의해 얻어진 [런,레벨]심볼들이다. 영상표준화에 관련한 MPEG 등에 근거하여 8×8화소 크기(size)의 블록들로 분할된 데이타를 주파수영역으로 변환시킨 다음 양자된한다. 양자화된 변환계수들은 8×8 크기의 2차원 주파수영역에서 표현되는 것으로, 2차원 주파수공간의 저주파로부터 고주파로 스캔하는 잘 알려진 지그재그스캔(zigzag scan)에 의해 런[런,레벨]심볼들로 부호화된다. 여기서, 런(run)은 “0”이 아닌 계수들간의 0의 발생횟수를 의미하며, 레벨(level)은 “0”이 아닌 계수의 절대값을 의미한다. 8×8 크기의 주파수영역의 경우, 런은 “0”부터 “63”까지의 값들을 가질 수 있으며, 양자화된 변환계수가 “-255”부터 “255”까지의 값이며 그 부호(sign)는 별도로 표시된다.An apparatus for variable length coding compresses data based on probabilities of symbols, and has a variable length code table for variable length coding the input symbols. This variable long code table is designed according to the Huffman coding technique. Huffman coding, as is well known, assigns shorter codes to symbols with relatively high occurrence frequency and codes with longer codes to symbols with relatively low occurrence frequency. In the conventional coding system, the symbols input to the variable length encoding apparatus are [run, level] symbols that are usually obtained by run-length encoding. The data divided into blocks of 8x8 pixel size are transformed into a frequency domain and then quantized on the basis of MPEG related to image standardization. The quantized transform coefficients are represented in 8-by-8 size two-dimensional frequency domain, and are encoded into run (run, level) symbols by a well-known zigzag scan that scans from low frequency to high frequency in two-dimensional frequency space. do. Here, run means the number of occurrences of 0 between coefficients that are not "0", and level means the absolute value of the coefficient which is not "0". For an 8x8 frequency domain, a run can have values from "0" to "63", where the quantized transform coefficient is from "-255" to "255" and the sign is It is displayed separately.
지그재그스캔패턴의 사용은 영상신호의 에너지가 DC성분을 중심으로 저주파영역에 집중되는 현상에서 기인된 것이다. 그러나, 영상신호의 에너지는 영상신호의 패턴에 따라 수평주파수성분쪽으로 또는 수직주파수성분 쪽으로 보다 집중적으로 또는 보다 넓게 분포할 수 있다. 그러므로, 기존의 지그재그스캔패턴이 항상 영상데이타의 가변장부호화를 위한 최적의 스캔패턴인 것은 아니다. 따라서, 영상데이타의 분포특성들에 따라 융통성있게 2차원 주파수영역의 수평방향 또는 수직방향으로 집중될 수 있는 스캔패턴들이 가변장부호화 및 복호화를 위하여 소망되었다. 이를 위한 선행기술이 동일출원인에 의해 특허출원된 제 92-13171호의 “가변장부호화 및 복호화시스템”에 개시되어 있다.The use of the zigzag scan pattern results from the phenomenon that the energy of the image signal is concentrated in the low frequency region centered on the DC component. However, the energy of the video signal may be distributed more intensively or more widely toward the horizontal frequency component or the vertical frequency component according to the pattern of the video signal. Therefore, the existing zigzag scan pattern is not always an optimal scan pattern for variable length encoding of image data. Therefore, scan patterns that can be flexibly concentrated in the horizontal or vertical direction of the two-dimensional frequency domain according to the distribution characteristics of the image data are desired for variable length encoding and decoding. Prior art for this purpose is disclosed in "Variable Coded Encoding and Decoding System" of No. 92-13171 filed by the same applicant.
위의 선행기술에서는, 기설정된 크기의 블록들로 구분된 디지탈데이타는 다양한 스캔패턴들에 따라 가변장부호화되며, 가변장부호화된 데이타의 길이는 스캔패턴들 각각에 대응되게 누적되며, 최소의 누적길이에 대응하는 스캔패턴이 선택된다. 선택된 스캔패턴 및 선택된 스캔패턴에 대응하는 가변장부호화된 데이타 둘다는 전송된다. 복호화를 위해, 전송된 가변장부호화된 데이타는 가변장부호화시 선택된 스캔패턴과 동일한 스캔패턴에 따라 스캔되면서 가변장복호화된다. 따라서, 블록데이타의 가변장부호화 및 복호화에 최적의 스캔패턴이 사용되어져 데이타 압축효율이 보다 향상되어진다. 이러한 선출원서의 제6도에 기재된 가변장복호화장치를 여기에서 제1도에 도시하였으며, 이러한 가변장복호화하는 장치에 대해 설명한다.In the above prior art, the digital data divided into blocks of a predetermined size is variable-length coded according to various scan patterns, and the length of the variable-length coded data is accumulated corresponding to each of the scan patterns, with a minimum accumulation. The scan pattern corresponding to the length is selected. Both the selected scan pattern and the variable length coded data corresponding to the selected scan pattern are transmitted. For decoding, the variable length coded data is variably decoded while being scanned according to the same scan pattern as the scan pattern selected during variable length coding. Therefore, an optimal scan pattern is used for variable length encoding and decoding of block data, thereby improving data compression efficiency. The variable length decoding apparatus described in FIG. 6 of such an application is shown in FIG. 1, and this variable length decoding apparatus will be described.
제1도는 종래 가변장복호화장치의 일예를 보여준다. 제1도를 참조하면, 부호화장치(미도시)로부터 전송된 가변장부호화된 데이타(DVLC) 및 대응하는 스캔패턴데이타(DSCAN)는 가변장복호화부(11) 및 스캔패턴선택부(12)로 각각 입력한다. 가변장복호화부(11)는 입력하는 가변장부호화된 데이타(DVLC)를 가변장복호화테이블에 따라 [런,레벨]심볼로 변환시킨다. 스캔패턴선택부(12)는 1부터 N까지의 다양한 스캔패턴들에 따른 스캔어드레스들을 스캔패턴들 각각에 대응되게 저장하는 것으로서, 입력된 스캔패턴데이타(DSCAN)에 대응하는 스캔어드레스들(ADDRs)을 선택하여 출력한다. 런-레벨복호화부(13)는 가변장복호화부(11)로부터 입력하는 [런,레벨]심볼들을 스캔패턴선택부(12)로부터 입력된 스캔어드레스들(ADDRs)에 따라 2차원 공간영역(spatial domain)에서 표현되는 양자화계수들로 변환한다. 그런 다음, 양자화계수들은 뒷단의 역양자화부(미도시)로 공급된다.1 shows an example of a conventional variable length decoding apparatus. Referring to FIG. 1, the variable length coded data D VLC and the corresponding scan pattern data D SCAN transmitted from an encoding device (not shown) may be converted into a
따라서, 본 발명의 목적은 위와 같이 각 블록데이타의 부호화 처리에서 사용한 것과 동일한 스캔패턴에 따라 블록데이타를 복호화하는 복호화시스템에서 [런,레벨]심볼을 복호화하기 위한 방법을 제공함에 있다.Accordingly, an object of the present invention is to provide a method for decoding [run, level] symbols in a decoding system for decoding block data according to the same scan pattern used in the encoding process of each block data as described above.
본 발명의 다른 목적은 전술한 런-레벨심볼 복호화방법을 하드웨어로 구현하기 위한 장치를 제공함에 있다.Another object of the present invention is to provide an apparatus for implementing the aforementioned run-level symbol decoding method in hardware.
제1도는 종래 가변장복호화장치의 일예를 나타낸 블록도.1 is a block diagram showing an example of a conventional variable length decoding apparatus.
제2도는 본 발명의 바람직한 실시예에 따른 런-레벨심볼 복호화장치를 나타내는 블록도.2 is a block diagram showing a run-level symbol decoding apparatus according to a preferred embodiment of the present invention.
제3(a)-(b)도는 지그재그스캔패턴 및 대체(alternate)스캔패턴의 스캔순서를 설명하기 위한 도면.3 (a)-(b) are diagrams for explaining the scanning order of a zigzag scan pattern and an alternate scan pattern.
제4도는 제3(a)-(b)도에 관련하여 설명된 스캔순서들에 대응하는 스캔어드레스에 대한 테이블.4 is a table for scan addresses corresponding to the scan sequences described in relation to FIGS. 3 (a)-(b).
제5도는 제2도 장치의 동작을 설명하기 위한 타이밍도.5 is a timing diagram for explaining the operation of the apparatus of FIG.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
21 : 심볼분리부 22 : 어드레스출력부21: symbol separation unit 22: address output unit
23 : 인에이블부 24 : 데이타저장부23: enable unit 24: data storage unit
이와 같은 목적들을 달성하기 위한 런-레벨심볼 복호화방법은, 데이타의 부호화 처리에서 사용한 것과 동일한 스캔패턴에 따라 블록데이타를 복호화하는 방법에 있어서, (1) 초기화신호가 인가될 때마다 복호화되어 저장된 모든 내용을 “0”으로 리세트시키는 단계와, (2) 가변장복호화된 [런,레벨]심볼 및 부호화 처리에서 사용한 스캔패턴에 해당하는 스캔패턴인덱스를 공급받는 단계와, (3) 상기 공급된 [런,레벨]심볼을 런 및 레벨의 데이타로 분리하여 각각 출력하는 단계와, (4) 상기 분리된 런데이타와 클럭을 입력받아 런데이타에 해당하는 만큼의 클럭기간동안 제 1레벨의 인에이블신호를 출력하고, 그 이외의 클럭기간동안에는 제 2레벨의 인에이블신호를 출력하는 단계와, (5) 상기 공급된 스캔패턴인덱스에 대응하는 기설정된 스캔어드레스들을 상기 분리된 런데이타와 상기 클럭에 따라 출력하는 단계, 및 (6) 상기 제 2레벨의 인에이블신호가 인가되는 동안에 상기 출력되는 스캔어드레스에 해당하는 위치에 상기 분리된 레벨데이타를 저장하여 런-레벨복호화된 데이타로 출력하는 단계를 포함한다.The run-level symbol decoding method for achieving the above objects is a method of decoding block data according to the same scan pattern used in the encoding process of data. Resetting the contents to "0", (2) receiving a scan pattern index corresponding to the scan pattern used in the variable length-decoded [run, level] symbol and the encoding process, and (3) the supplied Outputting the [run, level] symbols into run and level data, respectively, and (4) enabling the first level for a clock period corresponding to the run data by receiving the separated run data and the clock; Outputting a signal, and outputting an enable signal of a second level during the other clock periods, and (5) preset scan addresses corresponding to the supplied scan pattern indexes; Outputting according to the separated run data and the clock; and (6) storing the separated level data at a position corresponding to the output scan address while the enable signal of the second level is applied. Outputting the level-decoded data.
본 발명의 다른 목적을 달성하기 위한 런-레벨심볼 복호화장치는, 데이타의 부호화 처리에서 사용한 것과 동일한 스캔패턴에 따라 블록데이타를 복호화하는 장치에 있어서, 가변장복호화된 [런,레벨]심볼들을 입력받아 런데이타 및 레벨데이타로 분리하여 각각 출력하는 심볼분리부와, 복수개 스캔패턴들 각각의 스캔순서에 따른 스캔어드레스들을 저장하고, 상기 사용한 스캔패턴에 해당하는 스캔패턴인덱스를 입력받아 그에 대응하는 스캔패턴의 저장된 스캔어드레스들을 상기 분리된 런데이타와 클럭에 따라 출력하는 어드레스출력부와, 인가되는 초기화신호에 따라 모든 저장내용을 “0”으로 리세트시키며, 상기 심볼분리부로부터 출력되는 레벨데이타를 상기 어드레스출력부로부터의 스캔어드레스에 의해 지정되는 저장위치에 저장하는 데이타저장부, 및 상기 클럭 및 상기 어드레스출력부로 입력되는 상기 런데이타를 수신하며, 상기 클럭의 펄스갯수가 수신된 런데이타에 해당하는 갯수만큼 경과한 시점에 상기 데이타저장부의 저장동작을 활성화시키기 위한 인에이블신호를 발생하는 인에이블부를 포함한다.A run-level symbol decoding apparatus for achieving another object of the present invention is a device for decoding block data according to the same scan pattern as used in the data encoding process, wherein the variable-length decoded [run, level] symbols are input. A symbol separation unit that receives and outputs each of the run data and the level data and outputs the scan data according to the scanning order of each of the plurality of scan patterns, and receives a scan pattern index corresponding to the used scan pattern and scans the corresponding scan pattern index. The address output unit outputs the stored scan addresses of the pattern according to the separated run data and the clock, and resets all the stored contents to "0" according to the applied initialization signal. The level data output from the symbol separator is reset. The data to be stored in the storage location specified by the scan address from the address output section. A storage unit receives the run data input to the clock and the address output unit, and activates a storage operation of the data storage unit when the number of pulses of the clock has elapsed by the number corresponding to the received run data. It includes an enable unit for generating an enable signal.
이하, 첨부한 도면들을 참조하여 본 발명의 바람직한 실시예에 상세히 기술하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
제2도는 본 발명에 따른 런-레벨심볼 복호화장치를 나타내는 블록도이다. 제2도에 나타낸 장치는 미도시된 가변장복호화부로부터 인가되는 런 및 레벨의 쌍으로 구성된 [런,레벨]심볼들을 입력받아 런데이타(RUN)과 레벨데이타(LEVEL)로 분리하여 각각 출력하는 심볼분리부(21)와, 매 블록의 심볼들에 대한 런-레벨복호화 시작전에 인가되는 초기화신호(initialize)에 따라 모든 저장내용을 “0”으로 리세트시키며, 그런 이후에, 심볼분리부(21)에 의해 분리된 레벨데이타(LEVEL)를 저장하는 데이타저장부(24)를 구비한다. 제2도의 장치는 또한, 복수의 스캔패턴들 각각의 스캔순서에 대응하는 스캔어드레스들을 테이블형태로 저장하며, 초기화신호(initialize)와 스캔패턴인덱스(Scan_pattern)와 분리된 런데이타(RUN) 및 클럭(CLOCK)을 입력받아 해당하는 스캔패턴의 스캔어드레스(ADDR)를 발생하는 어드레스출력부(22)를 구비한다. 분리된 런데이타(RUN) 및 클럭(CLOCK)은 인에이블부(23)로도 입력되어 데이타저장부(24)의 저장동작을 제어하기 위한 제5도에 보인것 같은 인에이블신호(enable)를 출력하도록 구성된다.2 is a block diagram showing a run-level symbol decoding apparatus according to the present invention. The apparatus shown in FIG. 2 receives [run, level] symbols consisting of pairs of run and level applied from a variable length decoding unit (not shown), and outputs them separately from run data and run level data, respectively. According to the
이러한 구성을 갖는 본 발명의 런-레벨심볼 복호화장치에 대한 동작을 제3도 내지 제5도를 참조하여 좀더 구체적으로 설명한다.The operation of the run-level symbol decoding apparatus of the present invention having such a configuration will be described in more detail with reference to FIGS. 3 to 5.
제3(a)-(b)도는 지그재그스캔패턴 및 대체(alternate)스캔패턴의 스캔순서를 설명하기 위한 도면이고, 제4도는 제3(a)-(b)도에 관련하여 설명된 스캔패턴들에 대응하는 스캔어드레스에 대한 테이블이며, 제5도는 제2도 장치의 동작을 설명하기 위한 타이밍도이다.3 (a)-(b) are diagrams for explaining the scanning order of a zigzag scan pattern and an alternate scan pattern, and FIG. 4 is a scan pattern described with reference to FIGS. 3 (a)-(b). FIG. 5 is a table for scan addresses corresponding to the above figure, and FIG. 5 is a timing diagram for explaining the operation of the apparatus of FIG.
제어기(미도시)에 의해 발생된 초기화신호(initialize)는, 런-레벨복호화가 매 블록에 대해 시작되기 이전에 어드레스출력부(22) 및 데이타저장부(24)로 각각 입력된다. 초기화신호(initialize)가 입력될 때마다, 어드레스출력부(22)는 현재의 어드레스포인터를 초기화시키며 데이타저장부(24)는 모든 저장내용을 “0”으로 리세트시킨다. 여기서, 데이타저장부(24)는 데이타저장부(24)를 구성하는 모든 메모리셀들(memory cells)을 한꺼번에 “0”으로 리세트시키거나 또는 행(row)단위로 메모리셀들을 리세트시킨다. 초기화를 위한 메모리셀들의 리스트기법은 메모리 기술분야의 당업자에게는 통상적인 것이므로, 그 설명을 생략한다.The initialization signal generated by the controller (not shown) is input to the
어드레스포인터 및 데이타저장부(24)의 메모리셀들이 초기화된 상태에서, 가변장복호화부(미도시)로부터 [런,레벨]심볼이 인가되면, 심볼분리부(21)는 인가된 [런,레벨]심볼을 런데이타(RUN) 및 레벨데이타(level)로 분리한다. 심볼분리부(21)는 제5도에 보인 것처럼 [런,레벨]심볼이 [3,5]인 경우 런데이타(RUN) “3” 및 레벨데이타(LEVEL) “5”로 분리하며, 런데이타(RUN) “3”을 어드레스출력부(22) 및 인에이블부(23)로 출력하며, 레벨데이타(LEVEL) “5”를 데이타저장부(24)로 출력한다. 바람직하게는, 심볼분리부(21)는 수신된 개별 심볼에 대하여, 런데이타가 갖는 런길이 만큼의 기간이 경과한 시점에 레벨데이타를 출력한다. 인에이블부(23)는 런데이타(RUN) “3” 및 제5도에 보여진 것 같은 클럭(CLOCK)을 입력받아, 데이타저장부(24)의 데이타저장동작을 제어하기 위해 제5도에 보인 것 같은 인에이블신호(enable)을 발생하여 데이타저장부(24)로 공급한다. 보다 상세하게는, 인에이블부(23)는 런데이타(RUN)가 갖는 런길이만큼의 클럭펄스기간동안 “로우(Low; L)”레벨의 인에이블신호(enable)를 출력하고, 그 다음의 1클럭펄스기간동안에는 “하이(High; H)”레벨의 인에이블신호(enable)를 출력한다. 그러므로, “하이(H)”레벨의 인에이블신호(enable)는 데이타저장부(24)가 심볼분리부(21)로부터 공급되는 레벨 데이타(LEVEL)를 저장할 시점에 인에이블부(23)로부터 데이타저장부(24)로 공급된다. 인에이블부(23)로 입력되는 클럭(CLOCK)과 동일한 클럭(CLOCK)을 수신하는 어드레스출력부(22)는 제3(a)도 및 제3(b)도에 보인 2개의 스캔패턴을 포함하는 복수의 스캔패턴들 각각의 스캔순서에 대응하는 스캔어드레스들을 제4도에서 보인 것과 같은 테이블형태로 저장한다.When the [run, level] symbol is applied from the variable length decoding unit (not shown) while the memory cells of the address pointer and the
8×8화소 크기의 블록데이타에서 제3(a)도는 지그재그스캔패턴의 스캔순서를 보여주며, 제3(b)도는 대체(alternate)스캔패턴의 스캔순서를 보여준다. 이러한 스캔패턴들의 스캔순서에 대응하여 제4도의 테이블은 인터(Inter)부호화모드에서의 초기어드레스로부터 스캔어드레스 오프셋을 보여준다. 제4도를 보면, 스캔패턴들의 스캔순서 “1”에 대응하는 어드레스오프셋은 “0”으로, 스캔하는 첫번째데이타가 DCT성분계수중 DC성분에 해당하는 위치(즉, 좌표점으로 (0,0))임을 나타낸다. 그런데, 인트라(Intra)부호화모드에서는 각 블록시작시에 스캔순서 “2”에서부터 시작하며, 이는 인트라(Intra)부호화모드에서 DC성분은 따로 전송하고, AC성분만 스캔한 후 런랭스 및 가변장부호화해서 전송하는 데 근거한다.In block data of 8x8 pixel size, FIG. 3 (a) shows the scanning order of the zigzag scan pattern, and FIG. 3 (b) shows the scanning order of the alternate scan pattern. Corresponding to the scanning order of these scan patterns, the table of FIG. 4 shows the scan address offset from the initial address in the inter encoding mode. Referring to FIG. 4, the address offset corresponding to the scanning order “1” of the scan patterns is “0”, and the position at which the first data to be scanned corresponds to the DC component in the DCT component coefficient (that is, (0,0) as the coordinate point). ). However, in the Intra coding mode, the scan sequence starts at "2" at the beginning of each block. In the Intra coding mode, the DC component is transmitted separately and only the AC component is scanned. Is based on the transmission.
한편, 어드레스출력부(22)는 초기화신호(initialize)가 인가될 때마다, 부호화장치에서 런-레벨 부호화를 위해 사용한 스캔패턴에 대응하는 스캔패턴인덱스(Scan_pattern)에 따라 복수개 스캔패턴들중 하나를 선택하며, 선택된 스캔패턴에 관련한 스캔어드레스들중의 첫번째 스캔어드레스를 가리키도록 어드레스포인터를 초기화시킨다. 이러한 상태에서, 어드레스출력부(22)는 외부로부터 입력하는 스캔패턴데이타(Scan_pattern)에 대응하는 스캔패턴에 관련한 스캔어드레스들(ADDR) 각각을 입력 클럭(CLOCK)의 각 펄스에 동기되게 데이타저장부(24)로 출력한다. 런데이타(RUN)를 수신하는 어드레스출력부(22)는 선택된 스캔패턴 및 수신된 런데이타(RUN)에 근거하여 대응하는 레벨데이타(LEVEL)의 어드레스포인터 위치를 결정하며 결정된 위치를 갖는 스캔어드레스(ADDR)를 제5도의 클럭(CLOCK)에 맞추어 데이타저장부(24)로 출력한다. 심볼분리부(21)로부터 출력하는 레벨데이타(LEVEL)를 수신하는 데이타저장부(24)는 인에이블부(23)로부터 인가되는 인에이블신호(enable)가 “로우(L)”레벨인 동안에는 어드레스출력부(22)로부터 스캔어드레스(ADDR)가 인가되더라도 심볼분리부(21)로부터 공급되는 데이터에 대한 저장동작을 하지 않는다. 데이타저장부(24)는 인에이블부(23)로부터 인가되는 인에이블신호(enable)가 “하이(H)”레벨인 동안에는 심볼분리부(21)로부터 공급된 레벨데이타(LEVEL)를 어드레스 출력부(22)에서 출력되는 스캔어드레스(ADDR)에 해당하는 저장위치에 저장한다. 그러므로, 런데이타(RUN)가 “3”이며 레벨데이타(LEVEL) “5”인 경우, 데이타 저장부(24)는 제5도에서 보인 것처럼 레벨데이타(LEVEL) “5”를 대응하는 스캔어드레스(ADDR) 즉, 제5도의 빗금표시된 스캔어드레스(ADDR)가 지정하는 저장위치에 저장시킨다. 이러한 데이타저장부(24)는 저장위치들로부터 64개의 메모리셀들을 가지며, 매 블록에 관련하여 저장된 데이타를 포함하여 저장위치들에 들어있는 데이타를 런-레벨복호화된 데이타로 하여 뒷단의 역양자화부(미도시)로 출력한다.Meanwhile, whenever an initialization signal is applied, the
상술한 바와 같이, 본 발명에 따른 런-레벨심볼 복호화방법 및 장치는 블록단위의 런-레벨복호화 시작전에 미리 데이타저장부의 모든 저장내용을 “0”으로 리세트시켜 런길이만큼의 영(zero) 또는 영들을 저장할 필요없이 레벨데이타만을 해당하는 위치에 저장하므로 런-레벨복호화를 수행할 수 있는 효과를 갖는다.As described above, the run-level symbol decoding method and apparatus according to the present invention reset all the stored contents of the data storage unit to “0” before starting the run-level decoding in units of blocks to zero as much as the run length. Alternatively, it is possible to perform run-level decoding because only the level data is stored in the corresponding location without storing the zeros.
Claims (8)
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970012537A KR100233537B1 (en) | 1997-04-04 | 1997-04-04 | Run-level symbol decoding method and the apparatus |
JP9187798A JPH1146363A (en) | 1997-04-04 | 1998-04-03 | Symbol-decoding method and device thereof |
EP19980302648 EP0869680A3 (en) | 1997-04-04 | 1998-04-03 | Symbol decoding method and apparatus |
US09/054,402 US6100826A (en) | 1997-04-04 | 1998-04-03 | Symbol decoding method and apparatus |
CNB981087949A CN1160867C (en) | 1997-04-04 | 1998-04-04 | Symbol decoding method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970012537A KR100233537B1 (en) | 1997-04-04 | 1997-04-04 | Run-level symbol decoding method and the apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980076042A KR19980076042A (en) | 1998-11-16 |
KR100233537B1 true KR100233537B1 (en) | 1999-12-01 |
Family
ID=19502006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970012537A KR100233537B1 (en) | 1997-04-04 | 1997-04-04 | Run-level symbol decoding method and the apparatus |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100233537B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111384960B (en) * | 2018-12-28 | 2022-05-10 | 上海寒武纪信息科技有限公司 | Decoding method, processor, decoding device and storage medium |
-
1997
- 1997-04-04 KR KR1019970012537A patent/KR100233537B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19980076042A (en) | 1998-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6100826A (en) | Symbol decoding method and apparatus | |
US5136371A (en) | Digital image coding using random scanning | |
US5402123A (en) | Variable length coding/decoding method of image data and apparatus thereof | |
KR0155784B1 (en) | Adaptable variable coder/decoder method of image data | |
JP2511788B2 (en) | Variable length codeword decoder for digital communication system | |
JP3716931B2 (en) | Adaptive decoding device for continuous images | |
EP0482864B1 (en) | An image data processing apparatus | |
US5831559A (en) | Encoding/decoding video signals using multiple run-val mapping tables | |
JPH0686262A (en) | Apparatus for encoding of image | |
EP0925555B1 (en) | Dual-speed variable length decoder and decoding architecture for mpeg-2 video data | |
JPH08280021A (en) | Run-length coding method | |
JP2891773B2 (en) | Method and apparatus for processing digital image sequences | |
KR20010078393A (en) | Scalable coding | |
KR100233537B1 (en) | Run-level symbol decoding method and the apparatus | |
CA1303743C (en) | Data encoding | |
KR100249235B1 (en) | Hdtv video decoder | |
KR100233536B1 (en) | Run-level symbol decoder and the method | |
KR100233538B1 (en) | Run-level symbol decoding method and apparatus | |
KR0152015B1 (en) | Variable length encode/decode method and apparatus | |
JP3269186B2 (en) | Image coding device | |
KR950014019B1 (en) | Control Method of Variable Length Decoding Device in Digital Video Decoding System | |
JP2512195B2 (en) | Encoding device and decoding device | |
JP3769467B2 (en) | Transmission method | |
KR100245788B1 (en) | Video encoding device | |
KR0134358B1 (en) | Coding and Decoding System Using Variable Scan Method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 19970404 |
|
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 19970404 Comment text: Request for Examination of Application |
|
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 19990225 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 19990819 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 19990913 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 19990914 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20020830 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20030829 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20040830 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20050830 Start annual number: 7 End annual number: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20060830 Start annual number: 8 End annual number: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20070830 Start annual number: 9 End annual number: 9 |
|
PR1001 | Payment of annual fee |
Payment date: 20080829 Start annual number: 10 End annual number: 10 |
|
PR1001 | Payment of annual fee |
Payment date: 20090827 Start annual number: 11 End annual number: 11 |
|
PR1001 | Payment of annual fee |
Payment date: 20100830 Start annual number: 12 End annual number: 12 |
|
FPAY | Annual fee payment |
Payment date: 20110830 Year of fee payment: 13 |
|
PR1001 | Payment of annual fee |
Payment date: 20110830 Start annual number: 13 End annual number: 13 |
|
FPAY | Annual fee payment |
Payment date: 20120830 Year of fee payment: 14 |
|
PR1001 | Payment of annual fee |
Payment date: 20120830 Start annual number: 14 End annual number: 14 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20140809 |