[go: up one dir, main page]

KR100233537B1 - Run-level symbol decoding method and the apparatus - Google Patents

Run-level symbol decoding method and the apparatus Download PDF

Info

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
Application number
KR1019970012537A
Other languages
Korean (ko)
Other versions
KR19980076042A (en
Inventor
전병우
홍권표
노재남
이종원
Original Assignee
윤종용
삼성전자주식회사
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 윤종용, 삼성전자주식회사 filed Critical 윤종용
Priority to KR1019970012537A priority Critical patent/KR100233537B1/en
Priority to JP9187798A priority patent/JPH1146363A/en
Priority to EP19980302648 priority patent/EP0869680A3/en
Priority to US09/054,402 priority patent/US6100826A/en
Priority to CNB981087949A priority patent/CN1160867C/en
Publication of KR19980076042A publication Critical patent/KR19980076042A/en
Application granted granted Critical
Publication of KR100233537B1 publication Critical patent/KR100233537B1/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10009Improvement or modification of read or write signals
    • G11B20/10481Improvement or modification of read or write signals optimisation methods
    • G11B20/10509Improvement or modification of read or write signals optimisation methods iterative methods, e.g. trial-and-error, interval search, gradient descent or feedback loops
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10009Improvement or modification of read or write signals
    • G11B20/10018Improvement 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

런-레벨심볼 복호화방법 및 장치Run-level symbol decoding method and apparatus

본 발명은 가변장부호화된 데이타를 복호화하는 복호화시스템에 관한 것으로, 보다 상세하게는, 다양한 스캔패턴들중 선택된 하나의 스캔패턴을 이용하여 가변장부호화된 런-레벨심볼을 복호화하기 위한 방법 및 장치에 관한 것이다.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 variable length decoder 11 and a scan pattern selector 12. Enter each). The variable length decoding unit 11 converts the input variable length encoded data D VLC into [run, level] symbols according to the variable length decoding table. The scan pattern selector 12 stores scan addresses corresponding to various scan patterns 1 to N corresponding to each of the scan patterns, and scan addresses ADDRs corresponding to the input scan pattern data D SCAN . Select) to print. The run-level decoding unit 13 stores the [run, level] symbols input from the variable length decoding unit 11 according to the scan addresses ADDRs input from the scan pattern selection unit 12. to quantization coefficients expressed in domain). Then, the quantization coefficients are fed to the back quantization unit (not shown).

따라서, 본 발명의 목적은 위와 같이 각 블록데이타의 부호화 처리에서 사용한 것과 동일한 스캔패턴에 따라 블록데이타를 복호화하는 복호화시스템에서 [런,레벨]심볼을 복호화하기 위한 방법을 제공함에 있다.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 symbol separator 21 and an initialization signal applied before the start of run-level decoding of the symbols of every block, all the contents of the reset are reset to "0", and then, the symbol separator ( And a data storage unit 24 for storing the level data LEVEL separated by 21). The apparatus of FIG. 2 also stores scan addresses corresponding to the scan order of each of the plurality of scan patterns in a table form, and includes a run data and a clock separated from the initialization signal and the scan pattern index Scan_pattern. And an address output unit 22 that receives (CLOCK) and generates a scan address ADDR of a corresponding scan pattern. The separated run data and the clock are also input to the enable unit 23 to output an enable signal as shown in FIG. 5 for controlling the storage operation of the data storage unit 24. It is configured to.

이러한 구성을 갖는 본 발명의 런-레벨심볼 복호화장치에 대한 동작을 제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 address output section 22 and the data storage section 24 before run-level decoding is started for each block. Each time an initialization signal is input, the address output section 22 initializes the current address pointer and the data storage section 24 resets all the stored contents to " 0 ". Here, the data storage unit 24 resets all memory cells constituting the data storage unit 24 to “0” at a time or resets the memory cells in a row unit. Since the list technique of memory cells for initialization is common to those skilled in the memory art, the description thereof is omitted.

어드레스포인터 및 데이타저장부(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 data storage unit 24 are initialized, the symbol separation unit 21 applies the [run, level ] Separate symbols into RUN and level data. As shown in FIG. 5, the symbol separator 21 separates the run data “3” and the level data “LEVEL” “5” when the [run, level] symbol is [3,5]. (RUN) "3" is output to the address output section 22 and the enable section 23, and the level data LEVEL "5" is output to the data storage section 24. Preferably, the symbol separator 21 outputs the level data with respect to the received individual symbols when the period of time corresponding to the run length of the run data has elapsed. The enable unit 23 receives the run data " 3 " and the clock CLOCK shown in FIG. 5 to control the data storage operation of the data storage unit 24, as shown in FIG. An enable signal, which is likely to be generated, is supplied to the data storage unit 24. More specifically, the enable unit 23 outputs an enable signal having a “L” level during the clock pulse period corresponding to the run length of the run data RUN, and then During one clock pulse period, an enable signal of high level is enabled. Therefore, the enable signal of the "high" level is enabled by the data from the enable unit 23 at the time when the data storage unit 24 stores the level data LEVEL supplied from the symbol separator 21. It is supplied to the storage unit 24. The address output unit 22 receiving the same clock CLOCK as the clock CLOCK input to the enable unit 23 includes two scan patterns shown in FIGS. 3A and 3B. Scan addresses corresponding to the scanning order of each of the plurality of scan patterns are stored in a table form as shown in FIG.

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 address output unit 22 selects one of the plurality of scan patterns according to the scan pattern index Scan_pattern corresponding to the scan pattern used for the run-level encoding in the encoding apparatus. Selects and initializes the address pointer to point to the first scan address among the scan addresses associated with the selected scan pattern. In this state, the address output unit 22 stores each of the scan addresses ADDR associated with the scan pattern corresponding to the scan pattern data Scan_pattern input from the outside in synchronization with each pulse of the input clock CLOCK. Output to (24). The address output unit 22 that receives the run data RUN determines the location of the address pointer of the corresponding level data LEVEL based on the selected scan pattern and the received run data RUN, and has a determined scan address having the determined position. ADDR) is output to the data storage unit 24 in accordance with the clock (CLOCK) of FIG. The data storage unit 24 that receives the level data LEVEL output from the symbol separation unit 21 has an address while the enable signal applied from the enable unit 23 is at the "L" level. Even when the scan address ADDR is applied from the output unit 22, the storage operation for the data supplied from the symbol separation unit 21 is not performed. The data storage unit 24 outputs the level data LEVEL supplied from the symbol separation unit 21 while the enable signal applied from the enable unit 23 is at the “high” level. The data stored in the storage address corresponding to the scan address ADDR output from 22 is stored. Therefore, in the case where the run data RUN is "3" and the level data LEVEL "5", the data storage unit 24 shows the scan address corresponding to the level data LEVEL "5" as shown in FIG. ADDR), i.e., stored in a storage location designated by the hatched scan address ADDR of FIG. The data storage section 24 has 64 memory cells from the storage locations, and the inverse quantization section at the rear end of the data stored in the storage locations including the data stored in association with each block is run-level decoded data. Output to (not shown).

상술한 바와 같이, 본 발명에 따른 런-레벨심볼 복호화방법 및 장치는 블록단위의 런-레벨복호화 시작전에 미리 데이타저장부의 모든 저장내용을 “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)

데이타의 부호화 처리에서 사용한 것과 동일한 스캔패턴에 따라 블록데이타를 복호화하는 방법에 있어서, (1) 초기화신호가 인가될 때마다 복호화되어 저장된 모든 내용을 0으로 리세트시키는 단계; (2) 가변장복호화된 [런,레벨]심볼 및 부호화 처리에서 사용한 스캔패턴에 해당하는 스캔패턴인덱스를 공급받는 단계; (3) 상기 공급된 [런,레벨]심볼을 런 및 레벨의 데이타로 분리하여 각각 출력하는 단계; (4) 상기 분리된 런데이타와 클럭을 입력받아 런데이타에 해당하는 만큼의 클럭기간동안 제 1레벨의 인에이블신호를 출력하고, 그 이외의 클럭기간동안에는 제 2레벨의 인에이블신호를 출력하는 단계; (5) 상기 공급된 스캔패턴인덱스에 대응하는 기설정된 스캔어드레스들을 상기 분리된 런데이타와 상기 클럭에 따라 출력하는 단계; 및 (6) 상기 제 2레벨의 인에이블신호가 인가되는 동안에 상기 출력되는 스캔어드레스에 해당하는 위치에 상기 분리된 레벨데이타를 저장하여 런-레벨복호화된 데이타로 출력하는 단계를 포함하는 런-레벨심볼 복호화방법.CLAIMS 1. A method for decoding block data according to the same scan pattern as used in the encoding process of data, the method comprising: (1) resetting all decoded and stored contents to zero each time an initialization signal is applied; (2) receiving a scan pattern index corresponding to the scan pattern used in the variable length-decoded [run, level] symbol and the encoding process; (3) separating the supplied [run, level] symbols into run and level data and outputting the data; (4) receiving the separated run data and the clock and outputting the enable signal of the first level for a clock period corresponding to the run data, and outputting the enable signal of the second level for other clock periods. step; (5) outputting preset scan addresses corresponding to the supplied scan pattern index 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, and outputting the separated level data as run-level decoded data. Symbol decoding method. 제1항에 있어서, 상기 제 (5) 단계는 (5a) 상기 초기화신호가 인가될 때마다 어드레스포인터를 초기화시키는 단계; (5b) 상기 스캔패턴인덱스에 응답하여 복수개의 스캔패턴중 하나를 선택하는 단계; 및 (5c) 상기 런데이타가 입력되면 상기 선택한 스캔패턴의 스캔어드레스들중 현재 어드레스포인터가 지시하는 위치에 저장된 스캔어드레스들을 상기 클럭에 맞추어 순서대로 출력하는 단계를 구비함을 특징으로 하는 런-레벨심볼 복호화방법.The method of claim 1, wherein the step (5) comprises: (5a) initializing an address pointer each time the initialization signal is applied; (5b) selecting one of a plurality of scan patterns in response to the scan pattern index; And (5c) when the run data is input, outputting scan addresses stored at positions indicated by a current address pointer among scan addresses of the selected scan pattern in order according to the clock. Symbol decoding method. 제2항에 있어서, 상기 초기화신호는 블록단위 데이타의 복호화 처리 시작전에 인가됨을 특징으로 하는 런-레벨심볼 복호화방법.The run-level symbol decoding method according to claim 2, wherein the initialization signal is applied before the decoding processing of block unit data starts. 제1항에 있어서, 상기 제 (5) 단계는 상기 제 1레벨의 인에이블신호가 인가되는 동안에는 저장동작을 수행하지 않는 것을 특징으로 하는 런-레벨심볼 복호화방법.The run-level symbol decoding method of claim 1, wherein the step (5) does not perform a storage operation while the enable signal of the first level is applied. 데이타의 부호화 처리에서 사용한 것과 동일한 스캔패턴에 따라 블록데이타를 복호화하는 장치에 있어서, 가변장복호화된 [런,레벨]심볼들을 입력받아 런데이타 및 레벨데이타데이타로 분리하여 각각 출력하는 심볼분리부; 복수개 스캔패턴들 각각의 스캔순서에 따른 스캔어드레스들을 저장하고, 상기 사용한 스캔패턴에 해당하는 스캔패턴인덱스를 입력받아 그에 대응하는 스캔패턴의 저장된 스캔어드레스들을 상기 분리된 런데이타와 클럭에 따라 출력하는 어드레스출력부; 인가되는 초기화신호에 따라 모든 저장내용을 “0”으로 리세트시키며, 상기 심볼분리부로부터 출력되는 레벨데이타를 상기 어드레스출력부로부터의 스캔어드레스에 의해 지정되는 저장위치에 저장하는 데이타저장부; 및 상기 클럭 및 상기 어드레스출력부로 입력되는 상기 런데이타를 수신하며, 상기 클럭의 펄스갯수가 수신된 런데이타에 해당하는 갯수만큼 경과한 시점에 상기 데이타저장부의 저장동작을 활성화시키기 위한 인에이블신호를 발생하는 인에이블부를 포함하는 런-레벨심볼 복호화장치.An apparatus for decoding block data according to the same scan pattern as used in the encoding process of data, comprising: a symbol separator for receiving variable length-decoded [run, level] symbols and separating them into run data and level data, respectively; Storing scan addresses according to the scanning order of each of the plurality of scan patterns, receiving a scan pattern index corresponding to the used scan pattern, and outputting the stored scan addresses of the corresponding scan pattern according to the separated run data and clock An address output unit; A data storage unit for resetting all stored contents to “0” according to an applied initialization signal and storing the level data output from the symbol separation unit in a storage location designated by a scan address from the address output unit; And receiving the run data input to the clock and the address output unit, and activating an enable signal for activating a storage operation of the data storage unit at a time point when the number of pulses of the clock corresponds to the received run data. A run-level symbol decoding apparatus including an enable portion that is generated. 제5항에 있어서, 상기 어드레스출력부는 각 스캔패턴들의 스캔순서에 대응하는 스캔어드레스들을 각 스캔패턴에 대응하는 스캔순서에 따라 테이블형태로 저장함을 특징으로 하는 런-레벨심볼 복호화장치.The run-level symbol decoding apparatus of claim 5, wherein the address output unit stores the scan addresses corresponding to the scan order of each scan pattern in a table form according to the scan order corresponding to each scan pattern. 제6항에 있어서, 상기 어드레스출력부는 상기 런데이타가 입력되면 상기 스캔패턴인덱스에 대응하는 스캔패턴의 스캔어드레스들중 현재 어드레스포인터가 지시하는 위치에 저장된 스캔어드레스들을 상기 클럭에 맞추어 순서대로 출력하고, 상기 초기화신호가 인가될 때마다 최초의 스캔순서를 갖는 스캔어드레스를 가리키도록 초기화시키는 것을 특징으로 하는 런-레벨심볼 복호화장치.The apparatus of claim 6, wherein the address output unit sequentially outputs the scan addresses stored at positions indicated by the current address pointer among scan addresses of the scan pattern corresponding to the scan pattern index, in order according to the clock, when the run data is input. And initializes to point to a scan address having a first scan order whenever the initialization signal is applied. 제7항에 있어서, 상기 초기화신호는 매 블록데이타의 런-레벨복호화 시작전에 인가됨을 특징으로 하는 런-레벨심볼 복호화장치.8. The run-level symbol decoding apparatus of claim 7, wherein the initialization signal is applied before start of run-level decoding of every block data.
KR1019970012537A 1997-04-04 1997-04-04 Run-level symbol decoding method and the apparatus KR100233537B1 (en)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111384960B (en) * 2018-12-28 2022-05-10 上海寒武纪信息科技有限公司 Decoding method, processor, decoding device and storage medium

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