KR101603866B1 - Method of data compressing, method of data recovering, and the apparatuses thereof - Google Patents

Method of data compressing, method of data recovering, and the apparatuses thereof Download PDF

Info

Publication number
KR101603866B1
KR101603866B1 KR1020150013710A KR20150013710A KR101603866B1 KR 101603866 B1 KR101603866 B1 KR 101603866B1 KR 1020150013710 A KR1020150013710 A KR 1020150013710A KR 20150013710 A KR20150013710 A KR 20150013710A KR 101603866 B1 KR101603866 B1 KR 101603866B1
Authority
KR
South Korea
Prior art keywords
clusters
binary
compression
data
bit
Prior art date
Application number
KR1020150013710A
Other languages
Korean (ko)
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 KR1020150013710A priority Critical patent/KR101603866B1/en
Application granted granted Critical
Publication of KR101603866B1 publication Critical patent/KR101603866B1/en

Links

Images

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
    • 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/3059Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
    • H03M7/3064Segmenting

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

The present invention relates to a method for compressing data, which comprises: a dividing step of dividing, by a compressing unit, binary data into a plurality of general clusters in an upper bit direction from a lowermost bit, wherein each of the general clusters has a bit length of (N multiples+1) and is a binary number of a minimum length having an own uppermost bit of 1, and N is a natural number; a compressing step of generating, by the compressing unit, a plurality of compression clusters by reducing a first binary number from each of the general clusters, wherein the first binary number is a binary number consisting of only 1 and having a bit length which is smaller as much as 1 bit than each of the corresponding general clusters; and a step of outputting, by an output unit, the compression clusters to a target device.

Description

데이터 압축 및 데이터 복원 방법과 장치{METHOD OF DATA COMPRESSING, METHOD OF DATA RECOVERING, AND THE APPARATUSES THEREOF}[0001] METHOD OF DATA COMPRESSING, METHOD OF DATA RECOVERING, AND THE APPARATUS [0002] BACKGROUND OF THE INVENTION [0003]

본 발명은 데이터 압축 및 데이터 복원 방법과 장치에 관한 것으로서, 보다 구체적으로는 간단한 연산과 하드웨어적 구성을 통해 데이터를 다양한 포맷의 변환 압축데이터로 효과적이고 효율적으로 압축할 수 있고, 변환 압축데이터로부터 데이터를 복원할 수 있도록 하는, 데이터 압축 및 데이터 복원 방법과 장치에 관한 것이다.
The present invention relates to a data compression and data restoration method and apparatus, and more particularly, to a data compression and data restoration method and apparatus capable of efficiently and efficiently compressing data into transformed compressed data of various formats through simple computation and hardware configuration, To a method and apparatus for data compression and data reconstruction.

일반적으로, 통상의 전송 채널에서 이용 가능한 주파수 대역폭은 제한되어 있으므로, 많은 양의 데이터를 전송하기 위해서 모뎀과 같은 다양한 전송 시스템은 전송 데이터의 양을 압축하거나 줄일 수 있는 효과적인 데이터 압축 기법을 이용해 왔다.In general, since the frequency bandwidth available in a normal transmission channel is limited, various transmission systems such as a modem have used an effective data compression technique to compress or reduce the amount of transmission data in order to transmit a large amount of data.

다양한 압축기법 중의 하나로서, 국제 전기 통신 동맹(ITU : International Telecommunication Union)에 의해 표준화된 부호화 알고리즘으로, 모뎀과 같은 데이터 전송 시스템에서 채용하고 있는 CCITT V.42 bis 가 있다. 이 부호화 표준안에 적용된 기초는 Ziv-Lempel code(ZLC)이며, 이 방식은 입력 데이터로부터 적응적으로 사전을 형성해 가면서 앞의 입력 데이터와 동일한 구문(phrase)이 저장되어 있는 사전의 주소값을 부호어로 전송하는 방법이다. 사전화(dictionary) 작업은 입력 데이터와 계속적인 스트링 매칭(string matching)을 수행하여 최대 길이의 매칭 스트링에 매칭안된 문자를 결합하여 사전에 추가하는 과정으로 사전을 업데이트한다.One of the various compression schemes is the CCITT V.42 bis employed in a data transmission system such as a modem with a coding algorithm standardized by the International Telecommunication Union (ITU). The basis applied to this coding standard is a Ziv-Lempel code (ZLC). In this method, an address value of a dictionary storing the same phrase as the previous input data is formed as a codeword while adaptively forming a dictionary from the input data. Lt; / RTI > The dictionary operation performs a continuous string matching with the input data to update the dictionary by adding the unmatched characters to the maximum matching string and adding them to the dictionary.

그러나, 이러한 종래의 압축 방식은 데이터의 압축 및 압축 해제에 대한 처리 연산이 복잡하고 비교적 고사양의 하드웨어적 장치를 필요로 하며, 처리 속도의 향상에 제한이 따르고 압축 결과값에 대한 신뢰성을 높이기 힘든 문제점이 있었다.However, such a conventional compression method is complicated and requires a relatively high-performance hardware device for processing and compressing data, and it is difficult to increase the processing speed and to increase the reliability of the compression result value .

한편, 바코드는 영숫자나 특수글자를 기계가 읽을 수 있는 형태로 표현하기 위해 굵기가 다른 수직 막대들의 조합으로 나타내어, 광학적으로 판독이 가능하도록 한 코드로서, 다양한 용도로 사용되는 인식 코드이다. 그런데, 이러한 종래의 바코드는 표현하거나 수록하기 위한 데이터를 데이터 원본 그대로 수록함으로써, 일정 크기의 바코드를 통해 수록할 수 있는 데이터의 양이 한정되어 있고, 표현하고자 하는 데이터의 크기가 커지는 경우에는 바코드의 크기도 함께 커져야 하는 등 바코드 활용 효율이 떨어지는 문제점이 있었다.
On the other hand, a bar code is an identification code used for various purposes as an optically readable code in which alphanumeric characters or special characters are represented by a combination of vertical bars having different thicknesses in order to be expressed in a machine-readable form. However, such conventional bar codes are limited in the amount of data that can be recorded through a bar code of a certain size by storing data for expressing or storing the data as it is, and when the size of data to be expressed is large, There is a problem in that the efficiency of utilizing the barcode is decreased.

본 발명의 배경기술은 대한민국 공개특허공보 제 2003-0022630호(2003. 3. 17 공개)에 개시되어 있다.
The background art of the present invention is disclosed in Korean Patent Laid-Open Publication No. 2003-0022630 (published on Mar. 17, 2003).

본 발명이 이루고자하는 기술적 과제는, 간단한 연산과 하드웨어적 구성을 통해 데이터를 다양한 포맷의 변환 압축데이터로 효과적이고 효율적으로 압축할 수 있고, 변환 압축데이터로부터 데이터를 복원할 수 있도록 하는, 데이터 압축 및 데이터 복원 방법과 장치를 제공하는 데에 있다.
SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and it is an object of the present invention to provide a data compressing method and a data compressing method capable of efficiently and efficiently compressing data into various types of compressed data through a simple operation and a hardware configuration, And to provide a method and apparatus for restoring data.

본 발명의 일 측면에 따르면, 본 발명은 압축부가 이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하는 분할단계로서, 상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수이고 상기 N은 자연수인, 분할단계; 상기 압축부가 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성하는 압축단계로서, 상기 제 1이진수는 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수인, 압축단계; 및 출력부가 상기 복수의 압축클러스터를 출력하는 단계를 포함하는 것을 특징으로 하는, 데이터 압축방법을 제공한다.According to one aspect of the present invention, there is provided a segmentation step of dividing binary data from a least significant bit to a most significant bit into a plurality of general clusters, wherein each of the general clusters has (N + 1) The most significant bit of which is a binary number having a minimum length of 1 and the N is a natural number; Wherein the first binary number is a binary number having a bit length smaller than that of each general cluster by one bit length and consisting of only one binary number, Compression step; And an outputting step of outputting the plurality of compressed clusters.

본 발명에서, 상기 제너럴클러스터의 각각은 1로만 이루어진 이진수가 아니면서 자신의 최상위비트가 1인 최소길이의 이진수인 것을 특징으로 한다.In the present invention, each of the general clusters is a binary number having a minimum length of 1, which is not a binary number consisting of only 1, and its most significant bit is 1.

본 발명에서, 상기 분할단계에 의해 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 압축단계를 수행하지 않고 원본 그대로 출력하는 것을 특징으로 한다.In the present invention, the binary number including the most significant bit of the binary data among the binary numbers divided by the dividing step is outputted as it is without performing the compression step.

상기 출력하는 단계에서, 상기 복수의 압축클러스터는 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력되는 것을 특징으로 한다.And in the outputting step, the plurality of compression clusters are sequentially output from the least significant bit or the most significant bit based on the binary data.

본 발명의 다른 측면에 따르면, 본 발명은 상기 데이터 압축방법에 의해 압축된 이진 데이터를 복원장치가 복원하는 방법으로서, 상기 복수의 압축클러스터를 입력받는 단계; 각각의 상기 압축클러스터와 동일한 비트길이를 갖는 1만으로 이루어진 제 2이진수를 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성하는 단계; 및 상기 복수의 복원클러스터를 결합하는 단계를 포함하는 것을 특징으로 하는, 데이터 복원방법을 제공한다.
According to another aspect of the present invention, there is provided a method of restoring binary data compressed by the data compression method, the method comprising: receiving the plurality of compression clusters; Generating a plurality of restoration clusters by adding a first binary number of 1s having the same bit length as that of each of the compression clusters to the compression cluster; And combining the plurality of restoration clusters.

본 발명의 또 다른 측면에 따르면, 본 발명은 이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하고, 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성하는 압축부; 및 상기 복수의 압축클러스터를 출력하는 출력부를 포함하되, 상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수이고, 상기 N은 자연수이며, 상기 제 1이진수는 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수인 것을 특징으로 하는, 데이터 압축장치을 제공한다.According to still another aspect of the present invention, there is provided a method of compressing binary data by dividing binary data into a plurality of general clusters in the direction from the least significant bit to an upper bit, subtracting a first binary number from each general cluster, part; And an output unit outputting the plurality of compressed clusters, wherein each of the general clusters is a (N + 1) bit length and has a minimum length of its most significant bit of 1, N is a natural number, Wherein the first binary number is a binary number having a bit length smaller by one bit than each general cluster and consisting of only one bit.

본 발명에서, 상기 제너럴클러스터의 각각은 1로만 이루어진 이진수가 아니면서 자신의 최상위비트가 1인 최소길이의 이진수인 것을 특징으로 한다.In the present invention, each of the general clusters is a binary number having a minimum length of 1, which is not a binary number consisting of only 1, and its most significant bit is 1.

본 발명에서, 상기 압축부는 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 제 1이진수를 감산하지 않고 상기 출력부를 통하여 원본 그대로 출력하는 것을 특징으로 한다.In the present invention, the compression unit outputs the binary data including the most significant bit of the binary data among the divided binary data through the output unit without subtracting the first binary number.

본 발명에서, 상기 복수의 압축클러스터의 출력시, 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력하는 것을 특징으로 한다.In the present invention, the output of the plurality of compression clusters is sequentially output from the least significant bit or the most significant bit based on the binary data.

본 발명의 또 다른 측면에 따르면, 상기 데이터 압축장치에 의해 압축된 이진 데이터를 복원하는 장치로서, 상기 복수의 압축클러스터를 입력받는 입력부; 및 각각의 상기 압축클러스터와 동일한 비트길이를 갖는 1만으로 이루어진 제 2이진수를 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성하고, 상기 복수의 복원클러스터를 결합하는 복원부를 포함하는 것을 특징으로 하는, 데이터 복원장치를 제공한다.
According to another aspect of the present invention, there is provided an apparatus for recovering binary data compressed by the data compression apparatus, comprising: an input unit receiving the plurality of compression clusters; And a decompression unit that adds a first binary number of 1s having the same bit length as that of each of the compressed clusters to the compressed cluster to generate a plurality of restoration clusters and combines the plurality of restoration clusters. And provides a data restoration device.

본 발명의 또 다른 측면에 따르면, 본 발명은 압축부가 이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하는 분할단계로서, 상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수이고 상기 N은 자연수인, 분할단계; 상기 압축부가 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성하는 압축단계로서, 상기 제 1이진수는 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트는 0인 이진수인, 압축단계; 및 출력부가 상기 복수의 압축클러스터를 출력하는 단계를 포함하는 것을 특징으로 하는, 데이터 압축방법을 제공한다.According to still another aspect of the present invention, there is provided a division step of dividing binary data in a compression part into a plurality of general clusters in a direction from a least significant bit to a most significant bit, wherein each of the general clusters has (N + 1) The most significant bit of which has a minimum length of 1 and the N is a natural number; Wherein the first binary number has the same bit length as each corresponding general cluster and the most significant bit is 1 and the remaining bits are 0, A compression step, which is a binary number; And an outputting step of outputting the plurality of compressed clusters.

본 발명에서, 상기 분할단계에 의해 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 압축단계를 수행하지 않고 원본 그대로 출력하는 것을 특징으로 한다.In the present invention, the binary number including the most significant bit of the binary data among the binary numbers divided by the dividing step is outputted as it is without performing the compression step.

상기 출력하는 단계에서, 상기 복수의 압축클러스터는 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력되는 것을 특징으로 한다.And in the outputting step, the plurality of compression clusters are sequentially output from the least significant bit or the most significant bit based on the binary data.

본 발명의 또 다른 측면에 따르면, 본 발명은 상기 데이터 압축방법에 의해 압축된 이진 데이터를 복원장치가 복원하는 방법으로서, 상기 복수의 압축클러스터를 입력받는 단계; 각각의 상기 압축클러스터보다 1 비트길이만큼 더 길고 최상위비트가 1이고 나머지 비트는 0인 제 2이진수를 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성하는 단계; 및 상기 복수의 복원클러스터를 결합하는 단계를 포함하는 것을 특징으로 하는, 데이터 복원방법을 제공한다.
According to another aspect of the present invention, there is provided a method of restoring binary data compressed by the data compression method, the method comprising: receiving the plurality of compression clusters; Generating a plurality of restoration clusters by adding a second binary number that is longer by one bit length than each of the compressed clusters and has a most significant bit of 1 and a remaining bit of 0 to the corresponding compressed cluster; And combining the plurality of restoration clusters.

본 발명의 또 다른 측면에 따르면, 본 발명은 이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하고, 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성하는 압축부; 및 상기 복수의 압축클러스터를 출력하는 출력부를 포함하되, 상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수이고, 상기 N은 자연수이며, 상기 제 1이진수는 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트가 0인 이진수인 것을 특징으로 하는, 데이터 압축장치를 제공한다.According to still another aspect of the present invention, there is provided a method of compressing binary data by dividing binary data into a plurality of general clusters in the direction from the least significant bit to an upper bit, subtracting a first binary number from each general cluster, part; And an output unit outputting the plurality of compressed clusters, wherein each of the general clusters is a (N + 1) bit length and has a minimum length of its most significant bit of 1, N is a natural number, Wherein the first binary number is a binary number whose bit length is the same as that of each general cluster and whose most significant bit is 1 and the other bits are 0.

본 발명에서, 상기 압축부는 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 제 1이진수를 감산하지 않고 상기 출력부를 통하여 원본 그대로 출력하는 것을 특징으로 한다.In the present invention, the compression unit outputs the binary data including the most significant bit of the binary data among the divided binary data through the output unit without subtracting the first binary number.

본 발명에서, 상기 복수의 압축클러스터의 출력시, 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력하는 것을 특징으로 한다.In the present invention, the output of the plurality of compression clusters is sequentially output from the least significant bit or the most significant bit based on the binary data.

본 발명의 또 다른 측면에 따르면, 본 발명은 상기 데이터 압축장치에 의해 압축된 이진 데이터를 복원하는 장치로서, 상기 복수의 압축클러스터를 입력받는 입력부; 및 각각의 상기 압축클러스터보다 1비트길이만큼 더 길고 최상위비트가 1이고 나머지 비트가 0인 제 2이진수를 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성하고, 상기 복수의 복원클러스터를 결합하는 복원부를 포함하는 것을 특징으로 하는, 데이터 복원장치를 제공한다.
According to another aspect of the present invention, there is provided an apparatus for recovering binary data compressed by the data compression apparatus, comprising: an input unit receiving the plurality of compression clusters; And a second binary number that is longer by one bit than the respective compressed clusters and has a most significant bit of 1 and a remaining bit of 0 to the corresponding compressed cluster to generate a plurality of restored clusters, And a data restoring unit for restoring the data.

본 발명에 따른 데이터 압축 및 데이터 복원 방법과 장치는, 간단한 연산과 하드웨어적 구성을 통해 데이터를 다양한 포맷의 변환 압축데이터로 효과적이고 효율적으로 압축하고 변환 압축데이터로부터 데이터를 복원할 수 있도록 함으로써, 다양한 포맷의 변환 압축데이터를 통해 전달하고자 하는 정보의 양을 증가시킬 수 있고 데이터 압축과 복원의 성능 및 활용도를 증가시킬 수 있다. 특히 이진데이터를 특정 N배수 단위로 분할압축하여 전송이 가능하여 패킷전송 등 특정한 배수단위로 데이터를 전송하는 시스템에서 효율적 전송이 가능하게 한다.
The data compression and data decompression method and apparatus according to the present invention can effectively and efficiently compress data into transformed compressed data in various formats through simple computation and hardware configuration and restore data from the transformed compressed data, Format conversion The amount of information to be transferred through compressed data can be increased and the performance and utilization of data compression and decompression can be increased. Particularly, it is possible to transmit binary data by dividing compressed data in units of N times, thereby enabling efficient transmission in a system for transmitting data in a specific multiple unit such as packet transmission.

도 1은 본 발명에 의한 일 실시예에 따른 데이터 압축장치 및 복원장치의 구성을 도시한 것이다.
도 2는 본 발명에 의한 일 실시예에 따른 데이터 압축방법을 설명하기 위한 흐름도이다.
도 3은 본 발명에 의한 일 실시예에 따른 데이터 복원방법을 설명하기 위한 흐름도이다.
1 is a block diagram of a data compression apparatus and a decompression apparatus according to an embodiment of the present invention.
2 is a flowchart illustrating a data compression method according to an embodiment of the present invention.
3 is a flowchart illustrating a data restoration method according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함" 한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.

도 1은 본 발명에 의한 일 실시예에 따른 데이터 압축장치 및 복원장치의 구성을 도시한 것이고, 도 2는 본 발명에 의한 일 실시예에 따른 데이터 압축방법을 설명하기 위한 흐름도이며, 도 3은 본 발명에 의한 일 실시예에 따른 데이터 복원방법을 설명하기 위한 흐름도로서, 이를 참조하여 본 발명에 따른 실시예를 설명하면 다음과 같다. 2 is a flowchart illustrating a data compression method according to an embodiment of the present invention. FIG. 3 is a flowchart illustrating a data compression method according to an embodiment of the present invention. FIG. 4 is a flowchart illustrating a data restoration method according to an embodiment of the present invention. Referring to FIG.

도 1에 도시된 바와 같이, 본 실시예에 따른 데이터 압축장치(100)는 압축부(110) 및 출력부(120)를 포함한다.As shown in FIG. 1, the data compression apparatus 100 according to the present embodiment includes a compression unit 110 and an output unit 120.

압축부(110)는 이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하고, 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성한다. 그리고, 출력부(120)는 상기 생성된 복수의 압축클러스터를 복원장치(200) 등의 목적장치로 출력한다.The compression unit 110 divides the binary data into a plurality of general clusters in the direction from the least significant bit to the most significant bit and subtracts the first binary number from each general cluster to generate a plurality of compressed clusters. The output unit 120 outputs the generated plurality of compressed clusters to a destination apparatus such as the restoration apparatus 200 or the like.

여기서, 상기 이진 데이터를 최하위비트로부터 상위비트방향으로 이동하면서 분할할 때, 상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지면서 자신의 최상위비트가 1인 최소길이의 이진수인 것을 특징으로 하고, 상기 N은 자연수이다. In this case, when dividing the binary data while shifting from the least significant bit to the most significant bit, each of the general clusters has a (N + 1) bit length and is a binary number having a minimum length of 1 , And N is a natural number.

상기 제 1이진수는 i) 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수인 제 1실시예와, ii) 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트는 0인 이진수인 제 2실시예로 나눌 수 있다.Wherein the first binary number is a binary number i) the bit length is a binary number that is smaller by one bit than the corresponding general cluster and is only one, and ii) the first embodiment has a bit length equal to each corresponding general cluster, Which is a binary number of 0, can be categorized into the second embodiment.

먼저, 제 1실시예(제 1 이진수 : 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수)에 대해 살펴 보면, 가령, N=3일 때 원본 이진 데이터가 "1010...11011001"인 경우라면, 최하위비트로부터 상위비트방향으로 4비트길이(N*1+1)의 "1001"(3*1+1 비트길이), "1101"(3*1+1 비트길이)...등의 제너럴클러스터가 차례로 분리된다. 여기서 최하위비트 부분의 7자리부분인 "1011001"도 그 비트길이가 (3*2+1)이어서 "(N배수 + 1) 비트길이 조건"을 만족하지만, 그 이전에 최하위비트 부분의 4자리인 "1001"이 이미 제너럴클러스터 조건을 만족하기 때문에 "(N배수 + 1) 비트길이를 가지면서 자신의 최상위비트가 1인 최소길이의 이진수"라는 조건 중 "최소길이의 이진수"라는 조건을 만족하지 않아서 "1011001"는 제너럴클러스터로서 얻어지지는 않는다. First, considering the first embodiment (first binary number: a binary number whose bit length is smaller by one bit than the corresponding general cluster and is only one), for example, when N = 3, the original binary data is "1010 ... 1101001 "(3 * 1 + 1 bit length) of" 1001 "(3 * 1 + 1 bit length) and 4 bits length (N * 1 + 1) in the direction from the least significant bit to the upper bit. The general clusters are separated in order. Here, the 7-digit portion "1011001" of the least significant bit portion also satisfies the condition of "(N multiples + 1) bit length" since its bit length is (3 * 2 + 1) Since "1001" already satisfies the general cluster condition, it satisfies the condition of "binary length of minimum length" among the conditions of "(N multiple number + 1) bit length and binary number of minimum length having its most significant bit of 1" "1011001" is not obtained as a general cluster.

제 1실시예의 경우, 상기 제너럴클러스터의 각각은 1로만 이루어진 이진수가 아닌 것을 특징으로 한다. 즉, (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수라 하더라도, "1111"과 같이 1만으로 이루어진 수는 상기 제너럴클러스터에서 제외된다. 이것은 실질적인 압축이 이루어지도록 하기 위한 것으로서 가령 11111...1과 같은 제너럴클러스터에서 이보다 1비트길이만큼 짧은 제 1이진수를 1111...1를 감산하면 10000...0과 같이 되어 압축의 효과가 발생하지 않기 때문이다. 이에 대해서는 이후에 좀 더 자세히 살펴 보도록 한다.In the case of the first embodiment, each of the general clusters is not a binary number consisting of only one. That is, even if the bit length is (N times + 1) bits and the MSB is the minimum length of 1, the number of 1's such as "1111" is excluded from the general cluster. This is to make a practical compression. For example, in a general cluster such as 11111 ... 1, if the first binary number shorter by one bit length is subtracted from 1111 ... 1, then 10000 ... 0 is obtained, It does not occur. We will look into this in more detail later.

다음으로, 제 2실시예(제 1 이진수 : 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트는 0인 이진수)에 대해 살펴 보면, 제 2 실시예의 경우에도 원본 이진 데이터가 복수의 제너럴 클러스터로 분리되는 것은 동일하다. 다만, 제 2실시예의 경우에는 상기 제너럴클러스터의 각각은 1로만 이루어진 이진수이어도 상관없다. 예를 들어 N=3일 때 제너럴 클러스터가 4비트(3*1+1)인 "1101"인 경우 제 1 이진수는 "1000"이 되고, 후술하는 압축시 제너럴 클러스터에서 제 1이진수를 감산하는 압축을 하면 "101"이라는 압축데이터가 얻어진다(1비트 감축).Next, regarding the second embodiment (the first binary number: a binary number whose bit length is the same as that of each general cluster and the most significant bit is 1 and the other bits are 0), in the case of the second embodiment, The separation into a general cluster is the same. However, in the case of the second embodiment, each of the general clusters may be a binary number consisting of only one. For example, when N = 3, the first binary number becomes "1000" when the general cluster is "1101" having 4 bits (3 * 1 + 1) Quot; 101 "is obtained (1-bit reduction).

압축부(110)는 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 제 1이진수를 감산하지 않고 출력부(120)를 통하여 원본 그대로 출력할 수 있다.The compression unit 110 may output the binary data including the most significant bit of the binary data among the divided binary data through the output unit 120 without subtracting the first binary number.

데이터 압축장치(100)는 상기 복수의 압축클러스터의 출력시, 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력할 수 있다. 물론 상술한 바와 같이 압축부(110)에 의한 분할 작업의 수행결과 나머지 남은 마지막 최상위비트 부분은 별도의 압축(감산)을 수행하지 않는바, 이러한 이진수 부분은 상기 압축클러스터와 함께 순차적으로 전송된다. 이렇게 전송함으로써, 이후 복원장치(200)에서는 순차적으로 입력된 복수의 클러스터(이진수) 중에서 클러스터 전송규칙에 따라 맨 처음 또는 맨 마지막에 전송된 클러스터(이진수)는 압축되지 않은 원본 이진데이터의 최상위비트 부분이라는 것을 알 수 있게 되고, 나머지 이진수들은 압축 클러스터라는 것을 알 수 있게 된다.The data compression apparatus 100 may sequentially output, from the least significant bit or the most significant bit, the binary data based on the output of the plurality of compression clusters. Of course, as described above, since the last most significant bit portion remaining as a result of the division operation performed by the compression unit 110 does not perform compression (subtraction) separately, the binary portion is sequentially transmitted together with the compression cluster. Thus, in the restoration apparatus 200, the clusters (binary numbers) transmitted first or last among the plurality of clusters (binary numbers) sequentially input in accordance with the cluster transmission rule are stored in the most significant bit portion of the uncompressed original binary data And the remaining binary numbers are known as compression clusters.

한편, 도 1에 도시된 바와 같이, 본 실시예에 따른 데이터 복원장치(200)는 입력부(210) 및 복원부(220)를 포함한다. 1, the data restoration apparatus 200 according to the present embodiment includes an input unit 210 and a restoration unit 220.

입력부(210)는 출력부(120) 등으로부터 전달된 복수의 압축클러스터를 입력받는다. The input unit 210 receives a plurality of compressed clusters transmitted from the output unit 120 and the like.

복원부(220)는 비트길이가 해당 각 압축클러스터와 같고 1로만 이루어진 이진수인 제 2이진수(제 1실시예의 경우), 또는 비트길이가 해당 각 압축클러스터보다 1만큼 더 크고 최상위비트가 1이고 나머지 비트는 0인 이진수인 제 2이진수(제 2실시예의 경우)를 해당 압축클러스터에 각각 가산하여 복수의 복원클러스터를 생성하고, 상기 복수의 복원클러스터를 결합하여 원본 이진데이터를 복원한다.
The restoring unit 220 may be configured so that a second binary number (in the first embodiment) having a bit length equal to that of the corresponding compression cluster and a binary number consisting of only one bit, or a bit length larger by one than each corresponding compression cluster, (In the second embodiment) to the corresponding compressed cluster to generate a plurality of restoration clusters, and restores the original binary data by combining the plurality of restoration clusters.

이와 같이 구성된 본 실시예의 동작 및 작용을 도 1 내지 도 3을 참조하여 구체적으로 설명한다.The operation and operation of the present embodiment thus configured will be described in detail with reference to Figs. 1 to 3. Fig.

도 2는 본 발명에 의한 일 실시예에 따른 데이터 압축방법을 설명하기 위한 흐름도로서, 이를 참조하여 본 실시예에 따른 데이터 압축방법을 설명한다.FIG. 2 is a flowchart for explaining a data compression method according to an embodiment of the present invention, and a data compression method according to this embodiment will be described with reference to FIG.

먼저, 압축부(110)는 원본 이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할한다(S201).First, the compression unit 110 divides the original binary data into a plurality of general clusters in the direction from the least significant bit to the most significant bit (S201).

제너럴클러스터는 (N배수 + 1) 비트길이를 가지면서 자신의 최상위비트가 1인 최소길이의 이진수를 의미한다. 이 때 N은 임의의 자연수로서 짝수, 홀수의 구분없이 3, 6, 9, 12, 24, 300, 18 등 다양한 수로 설정될 수 있으며, 시스템 설계자나 압축 조건 등에 따라 다양하게 설정될 수 있다. 예를 들어 N=3으로 설정되어 있다면, 압축부(110)는 4비트길이, 7비트길이, 10비트길이... 등의 (3k+1) 비트길이를 갖는 제너럴클러스터로 원본 이진데이터를 분할한다.A general cluster means a binary number having a length of (N times + 1) bits and having a length of its own most significant bit of 1. In this case, N can be set to various numbers such as 3, 6, 9, 12, 24, 300, and 18 without any even and odd numbers, and can be variously set according to the system designer and compression conditions. For example, if N = 3, the compression unit 110 divides the original binary data into a general cluster having a length of (3k + 1) bits such as a length of 4 bits, a length of 7 bits, a length of 10 bits, do.

또한, 제너럴클러스터는 상기와 같은 (N배수 + 1) 비트길이의 이진수이면서 동시에 자신의 최상위비트값이 "1"이어야 하고, 또한 최하위비트로부터 상위비트방향으로 분할해 나갈 때 이러한 조건을 만족하는 최소길이를 갖는 이진수이다. 이것은 후술하는 압축단계에서 제 1이진수를 감산하여 실질적인 압축효과가 발생하도록 하기 위한 것이다. 예를 들어 N=3일 때 "0111"와 같은 데이터는 (3k+1) 비트길이를 갖지만 최상위비트값이 0이기 때문에 제너럴클러스터라고 할 수 없다. 또한 "100 1101 "이라는 이진수의 경우 비트길이가 7로서 (3k+1) 비트길이를 갖고 최상위비트값도 1이지만, 이렇게 분할되기 전에 해당 이진수의 최하위 하위비트로부터 시작하여 "1101"이라는 제너럴클러스터로 먼저 분할될 수 있기 때문에 "100 1101 "는 상기와 같은 조건을 만족하는 최소길이의 이진수라고 할 수가 없어 제너럴클러스터라고 할 수 없다.In addition, the general cluster is a binary number having a length of (N times + 1) bits as described above, and at the same time, the most significant bit value of its own must be "1", and when dividing from the least significant bit to the upper bit direction, It is a binary number with length. This is for subtracting the first binary number in the compression step described later so that a substantial compression effect occurs. For example, when N = 3, data such as "0111 " has a length of (3k + 1) bits, but can not be called a general cluster because its most significant bit is zero. Further, in the case of a binary number "100 1101 ", the bit length is 7 (3k + 1) bits long and the most significant bit value is also 1, but before starting to divide by this bit, starting from the least significant bit of the binary number to "1101"Quot; 100 1101 "can not be regarded as a binary cluster having a minimum length satisfying the above condition, and thus can not be regarded as a general cluster.

N=3으로 설정되어 있을 때 이진수 "11 1010100011 1010 1001"를 예로 들어 분할단계(S201)를 좀 더 자세히 살펴 보면, 최하위비트로부터 시작하여 먼저 4번째 비트자리(3k+1, k=1)의 숫자가 1이기 때문에 "1001"이라는 제너럴클러스터가 얻어진다. 그리고, 그 다음 비트부터 다시 시작하면 4번째 비트자리(3k+1, k=1)의 숫자가 1이기 때문에 "1010"이라는 제너럴클러스터가 또 얻어진다. If N = 3 is set and the binary number "11 1010100011 1010 1001" is taken as an example, the division step S201 will be described in more detail. Since the number is 1, a general cluster of "1001" is obtained. Then, starting from the next bit again, a general cluster of "1010" is obtained because the number of the 4th bit position (3k + 1, k = 1) is 1.

이어서, 또 그 다음 비트부터 다시 시작하면 4번째 비트자리(3k+1, k=1)의 숫자는 0이기 때문에 "0011"은 제너럴클러스터가 되지 못하고, 또한 7번째 비트자리(3k+1, k=2)의 숫자도 0이기 때문에 "0100011"도 제너럴클러스터가 되지 못하며, 그래서 10번째 비트자리(3k+1, k=3)의 숫자를 살펴 보면 그 숫자는 "1"이기 때문에 상술한 제너럴클러스터의 조건을 만족하여 "1010100011"이라는 제너럴클러스터가 얻어진다. 그리고 나머지 남은 비트인 "11"은 제너럴클러스터는 아니지만 분할의 결과로 얻어진다.Then, starting from the next bit again, the number of the 4th bit position (3k + 1, k = 1) is 0, so that "0011" = 1), the number of the 10th bit position (3k + 1, k = 3) is "1" Quot; 1010100011 "is obtained. The remaining remaining bits "11" are not a general cluster but are obtained as a result of division.

한편, 이하의 압축단계에서 사용될 제 1이진수로 어떤 유형의 수를 사용할 것인지에 따라 상기 제너럴클러스터는 1로만 이루어진 이진수일 수도 있고 아닐 수도 있다. 즉, 상기 제 1이진수가 i) 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수인 제 1실시예와, ii) 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트는 0인 이진수인 제 2실시예로 나눌 수 있다. 물론, 제 1 이진수가 상기 제 1실시예와 제 2실시예 중 어느 것에 해당되는지에 대해서는 압축장치와 복원장치에 미리 설정되어 있고 이에 따라 압축 및 복원의 과정이 이루어지게 된다.On the other hand, the general cluster may or may not be a binary number consisting of only one, depending on which type of number is used as the first binary number to be used in the following compression step. That is, the first binary number i) is a binary number having a bit length smaller than that of each general cluster by one bit length and consisting of only 1, ii) the first embodiment has a bit length equal to each corresponding general cluster, And the bit is a binary number of zero. Of course, whether the first binary number corresponds to the first embodiment or the second embodiment is previously set in the compression apparatus and the decompression apparatus, and compression and decompression processes are performed accordingly.

먼저, 제 1실시예(제 1 이진수 : 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수)에 대해 살펴 보면, N=3일 때 "1111", "1111111",... 등과 같이 1로만 이루어진 이진수는 제너럴클러스터라고 할 수 없는데, 이렇게 정의하는 이유는 후술하는 압축단계에서 제 1이진수를 감산하여 실질적인 압축 효과가 발생하도록 하기 위한 것이다. 예를 들어, 제너럴클러스터가 "1111111"일 때 후술하는 제 1이진수는 "111111"가 되므로 압축단계에서의 감산결과 "1000000"이 생성되어 압축효과가 발생하지 않게 되는 것이다.First, if we look at the first embodiment (first binary number: a binary number whose bit length is smaller by one bit than each corresponding general cluster and is only one), "1111", "1111111", ... And so on can not be said to be a general cluster. The reason for this definition is to subtract the first binary number in the compression step described later so as to generate a substantial compression effect. For example, when the general cluster is "1111111 ", the first binary number described later becomes" 111111 ", so that the subtraction result "1000000 "

한편, 제 2실시예(제 1 이진수 : 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트는 0인 이진수)에 대해 살펴 보면, 제 2 실시예의 경우에도 원본 이진 데이터가 복수의 제너럴 클러스터로 분리되는 것은 동일하다. 다만, 제 2실시예의 경우에는 상기 제너럴클러스터의 각각은 1로만 이루어진 이진수이어도 상관없다. 예를 들어 N=3일 때 제너럴 클러스터가 4비트(3*1+1)인 "1101"인 경우 후술하는 바와 같이 제 1 이진수는 "1000"이 되고, 이후 압축시 제너럴 클러스터에서 제 1이진수를 감산하는 압축을 하면 "101"이라는 압축데이터가 얻어진다(1비트 감축). 물론, N=3일 때 제너럴 클러스터가 4비트(3*1+1)인 "1111"인 경우에도 제 1 이진수는 "1000"이 되고, 이후 압축시 제너럴클러스터에서 제 1이진수를 감산하는 압축을 하면 "111"이라는 압축데이터가 얻어진다(1비트 감축).On the other hand, in the second embodiment (first binary number: a binary number whose bit length is the same as that of each general cluster and whose most significant bit is 1 and the other bits are 0), in the case of the second embodiment, Clustering into clusters is the same. However, in the case of the second embodiment, each of the general clusters may be a binary number consisting of only one. For example, when the general cluster is "1101" having 4 bits (3 * 1 + 1) at N = 3, the first binary number becomes "1000" as described later, and the first binary number When compression is performed by subtraction, compressed data of "101" is obtained (1 bit reduction). Of course, even when the general cluster is "1111 " in which the general cluster is 4 bits (3 * 1 + 1) when N = 3, the first binary number becomes" 1000 ", and compression for subtracting the first binary number Quot; 111 "is obtained (1-bit reduction).

다음으로, 압축부(110)는 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성한다(S202). 여기서 제 1이진수는 상술한 바와 같이 제 1실시예(제 1 이진수 : 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수), 또는 제 2실시예(제 1 이진수 : 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트는 0인 이진수)로 정의될 수 있다.Next, the compression unit 110 generates a plurality of compressed clusters by subtracting the first binary number from each of the general clusters (S202). Here, the first binary number may be a binary number of a first embodiment (a first binary number: a binary number whose bit length is one bit shorter than the corresponding general cluster and is only one), or the second embodiment (first binary number: A binary number having the most significant bit equal to 1 and the remaining bit equal to 0).

먼저, 제 1실시예(제 1 이진수 : 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수)에 대해 살펴 보면, 예를 들어 어떤 제너럴클러스터가 7비트길이(3k+1, k=2)의 이진수라면 제 1이진수는 6비트길이(3k, k=2)의 1로만 이루어진 이진수인 "111111"가 된다. 이와 같이, 제너럴클러스터에서 제 1이진수(해당 제너럴클러스터보다 1비트길이만큼 짧고 1로만 이루어진 이진수)를 감산하면 그 결과값은 길이가 1비트길이만큼 줄어들어 압축클러스터가 얻어진다.For example, if a general cluster has a 7-bit length (3k + 1, k (k), 1k (k) = 2), the first binary number becomes "111111 ", which is a binary number consisting of only one of six bits (3k, k = 2). As described above, when the first binary number (a binary number shorter by one bit than the corresponding general cluster and a binary number consisting of only one) is subtracted from the general cluster, the resultant value is reduced by a length of one bit to obtain a compressed cluster.

상술한 이진 데이터 "11 1010100011 1010 1001"를 예로 들면, 상술한 바와 같이 최하위비트로부터 제너럴클러스터로 "1001", "1010", "1010100011"이 얻어지고 이에 대응하는 제 1이진수는 각각 "111", "111", "111111111"이 된다. 그리고, 각 제너럴클러스터에서 제 1이진수를 감산하면, "010", "011", "010100100"이라는 압축클러스터가 각각 얻어진다. 한편, 압축부(110)는 분할단계(S201)의 수행결과 나머지 남은 마지막 최상위비트 부분인 "11"은 별도의 압축을 수행하지 않는다.Taking the above-mentioned binary data "11 1010100011 1010 1001" as an example, "1001", "1010", and "1010100011" are obtained from the least significant bit to the general cluster and the corresponding first binary numbers are "111" Quot; 111 "and" 111111111 ". Then, by subtracting the first binary number from each general cluster, compression clusters "010 "," 011 ", and "010100100" On the other hand, the compression unit 110 does not perform compression on the last most significant bit part "11" remaining as a result of the division step S201.

한편, 제 2실시예(제 1 이진수 : 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트는 0인 이진수)에 대해 살펴 보면, 예를 들어 어떤 제너럴클러스터가 7비트길이(3k+1, k=2)의 이진수라면 제 1이진수는 7비트길이(3k+1, k=2)이고 최상위비트가 1, 나머지 비트가 0인 이진수인 "1000000"가 된다. 이와 같이, 제너럴클러스터에서 제 1이진수를 감산하면 그 결과값은 길이가 1비트길이만큼 줄어 들어 압축클러스터가 얻어진다.For example, if a general cluster has a 7-bit length (3k + 1) and a 2-bit length (3k + 1, k = 2), the first binary number is "1000000" which is a binary number of 7 bits in length (3k + 1, k = 2), with the most significant bit being 1 and the remaining bits being 0. As described above, when the first binary number is subtracted from the general cluster, the resultant value is reduced by a length of one bit to obtain a compressed cluster.

상술한 이진 데이터 "11 1010100011 1010 1001"를 예로 들면, 상술한 바와 같이 최하위비트로부터 제너럴클러스터로 "1001", "1010", "1010100011"이 얻어지고 이에 대응하는 제 1이진수는 각각 "1000", "1000", "1000000000"이 된다. 그리고, 각 제너럴클러스터에서 제 1이진수를 감산하면, "001", "010", "010100011"이라는 압축클러스터가 각각 얻어진다. 한편, 압축부(110)는 분할단계(S201)의 수행결과 나머지 남은 마지막 최상위비트 부분인 "11"은 별도의 압축을 수행하지 않는다.Taking the above-described binary data "11 1010100011 1010 1001" as an example, "1001", "1010", and "1010100011" are obtained from the least significant bit to the general cluster and the corresponding first binary numbers are "1000" Quot; 1000 "and" 1000000000 ". When the first binary number is subtracted from each general cluster, compression clusters of "001 "," 010 ", and "010100011" On the other hand, the compression unit 110 does not perform compression on the last most significant bit part "11" remaining as a result of the division step S201.

다음으로, 출력부(120)는 상기 복수의 압축클러스터를 데이터 복원장치(200) 등의 목적장치로 출력한다(S203). 이 때, 출력부(120)는 상기 생성된 복수의 압축클러스터를 상기 원본 이진데이터를 기준으로 봤을 때 미리 설정된 출력규칙(전송규칙)에 따라 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력한다. 즉 상술한 제 1실시예의 경우, 출력부(120)는 "010", "011", "010100100"의 순으로 최하위비트로부터 순차적으로 출력하거나, 이와는 반대로 최상위비트로부터 순차적으로 출력하도록 설정될 수 있다. 복수의 압축데이터를 이렇게 순차적으로 출력함으로써, 이후 복원장치(200)에서는 입력되는 복수의 압축클러스터를 약속된 순서로 순차적으로 복원함으로써 원본 이진데이터를 정상적으로 얻을 수 있게 된다. Next, the output unit 120 outputs the plurality of compressed clusters to a destination apparatus such as the data restoration apparatus 200 (S203). In this case, the output unit 120 sequentially outputs the generated plurality of compression clusters from the least significant bit or the most significant bit according to a preset output rule (transmission rule) when the original binary data is regarded as a reference. That is, in the case of the first embodiment described above, the output unit 120 may be set to sequentially output from the least significant bit in the order of "010", "011", "010100100" . By sequentially outputting a plurality of pieces of compressed data, the restoring device 200 sequentially restores a plurality of input compression clusters in a predetermined order so that the original binary data can be normally obtained.

물론 상술한 바와 같이 분할단계(S201)의 수행결과 나머지 남은 마지막 최상위비트 부분은 별도의 압축을 수행하지 않는바, 이러한 이진수 부분은 상기 압축클러스터와 함께 순차적으로 출력된다. 즉, 상술한 예에서 분할단계(S201)의 수행결과 마지막 남은 최상위비트 부분인 "11"은 별도의 압축없이 출력한다. 이렇게 출력함으로써, 이후 복원장치에서는 순차적으로 입력된 복수의 클러스터(이진수) 중에서 클러스터 입력규칙에 따라 맨 처음 또는 맨 마지막에 입력된 클러스터(이진수)는 압축되지 않은 원본 이진데이터의 최상위비트 부분이라는 것을 알 수 있게 되고, 나머지 이진수들은 압축 클러스터라는 것을 알 수 있게 된다.
Of course, as described above, since the last most significant bit portion remaining as a result of the division step S201 is not separately compressed, the binary portion is sequentially output together with the compression cluster. That is, in the above example, the most significant bit part "11" remaining as a result of the division step (S201) is output without any additional compression. By this output, it can be seen that the cluster (binary number) input first or last in the cluster according to the cluster input rule out of the plurality of clusters (binary numbers) sequentially input in the restoration device is the most significant bit part of the uncompressed original binary data And the remaining binary numbers are known as compression clusters.

상기와 같은 과정을 통해 이진 데이터가 압축되어 출력되면, 도 3에 도시된 바와 같이 데이터 복원장치(200)는 입력부(210)를 통해 상기 압축클러스터를 입력받아 복원부(220)에 전달한다(S301). 3, the data decompression apparatus 200 receives the compressed cluster through the input unit 210 and transmits the compressed cluster to the decompression unit 220 (S301 ).

그러면, 복원부(220)는 비트길이가 해당 각 압축클러스터와 동일하고 1로만 이루어진 이진수인 제 2이진수(제 1실시예의 경우), 또는 비트길이가 해당 각 압축클러스터보다 1만큼 더 크고 최상위비트가 1이고 나머지 비트는 0인 이진수인 제 2이진수(제 2실시예의 경우)를 각각의 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성한다(S302). 상술한 제 1실시예를 예로 들면, "010", "011", "010100100"의 순으로 압축클러스터가 입력되면, 복원부(220)는 동일한 비트길이의 제 2이진수로서 "111", "111", "111111111"을 각각 가산하여 "1001", "1010", "1010100011"이라는 복원클러스터를 생성한다. 제 2실시예를 예로 들면, "001", "010", "010100011"의 순으로 압축클러스터가 입력되면, 복원부(220)는 1 비트길이만큼 더 긴의 제 2이진수로서 "1000", "1000", "1000000000"을 각각 가산하여 "1001", "1010", "1010100011"이라는 복원클러스터를 생성한다.The restoring unit 220 may be configured so that the second binary number (in the first embodiment), which is a binary number whose bit length is the same as that of each compression cluster and is only one, or the bit length is one greater than each compression cluster, (In the case of the second embodiment) to the corresponding compressed clusters to generate a plurality of restoration clusters (S302). When the compressed clusters are input in the order of "010", "011", and "010100100" in the above-described first embodiment, the restoring unit 220 outputs "111" Quot ;, " 111111111 ", respectively, to create a restoration cluster of "1001 "," 1010 ", and "1010100011 ". For example, if the compressed cluster is input in the order of "001", "010", and "010100011" in the second embodiment, the restoring unit 220 obtains "1000" Quot ;, " 1000 ", and "1000000000 ", respectively, to create a restoration cluster of" 1001 ", "1010 ", and" 1010100011 ".

물론, 데이터 압축장치(100)에서 압축되지 않고 남은 나머지 최상위비트 부분인 "11"은 약속된 규칙에 따라 맨 마지막 또는 맨 처음에 입력될 것이기 때문에, 복원부(220)는 이 데이터는 별도의 복원작업없이 그대로 받아 들인다.Of course, since the remaining uppermost bit portion "11" remaining uncompressed in the data compression apparatus 100 will be inputted at the end or the beginning according to the promised rule, the restoring unit 220 restores this data to another restoration Accept it without work.

마지막으로, 복원부(220)는 상기 복수의 복원클러스터 및 상기 미압축클러스터를 결합하여 원본 이진데이터를 최종적으로 복원한다(S303).
Finally, the restoring unit 220 finally restores the original binary data by combining the plurality of restoration clusters and the uncompressed clusters (S303).

이상 살펴 본 바와 같이, 본 실시예에 따른 데이터 압축 및 데이터 복원 방법과 장치는, 간단한 연산과 하드웨어적 구성을 통해 데이터를 다양한 포맷의 변환 압축데이터로 효과적이고 효율적으로 압축하고 변환 압축데이터로부터 데이터를 복원할 수 있도록 함으로써, 다양한 포맷의 변환 압축데이터를 통해 전달하고자 하는 정보의 양을 증가시킬 수 있고 데이터 압축 및 복원의 활용도를 증가시킬 수 있다.As described above, the data compression and data restoration method and apparatus according to the present embodiment effectively and efficiently compresses data into transformed compressed data of various formats through a simple operation and a hardware configuration, It is possible to increase the amount of information to be transferred through the converted compressed data in various formats and to increase the utilization of data compression and restoration.

이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.

100 : 데이터 압축장치
110 : 압축부 120 : 출력부
200 : 데이터 복원장치
210 : 입력부 220 : 복원부
100: Data compression device
110: compression section 120: output section
200: data restoration device
210: input unit 220:

Claims (18)

압축부가 이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하는 분할단계로서, 상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수이고 상기 N은 자연수인, 분할단계;
상기 압축부가 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성하는 압축단계로서, 상기 제 1이진수는 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수인, 압축단계; 및
출력부가 상기 복수의 압축클러스터를 출력하는 단계를 포함하는 것을 특징으로 하는, 데이터 압축방법.
Wherein the compression unit divides the binary data into a plurality of general clusters in the direction from the least significant bit to the most significant bit, wherein each of the general clusters has a (N + 1) bit length and a binary length And N is a natural number;
Wherein the first binary number is a binary number having a bit length smaller than that of each general cluster by one bit length and consisting of only one binary number, Compression step; And
And outputting the plurality of compressed clusters by the output unit.
제 1항에 있어서,
상기 제너럴클러스터의 각각은 1로만 이루어진 이진수가 아니면서 자신의 최상위비트가 1인 최소길이의 이진수인 것을 특징으로 하는 데이터 압축방법.
The method according to claim 1,
Wherein each of the general clusters is a binary number having a minimum length of 1 and not having a binary number of only one.
제 1항에 있어서,
상기 분할단계에 의해 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 압축단계를 수행하지 않고 원본 그대로 출력하는 것을 특징으로 하는 데이터 압축방법.
The method according to claim 1,
Wherein a binary number including the most significant bit of the binary data among the binary numbers divided by the dividing step is output as it is without performing the compression step.
제 1항에 있어서,
상기 출력하는 단계에서, 상기 복수의 압축클러스터는 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력되는 것을 특징으로 하는 데이터 압축방법.
The method according to claim 1,
Wherein in the outputting step, the plurality of compression clusters are output sequentially from the least significant bit or the most significant bit based on the binary data.
제 1항 내지 제 4항 중 어느 한 항에 기재된 데이터 압축방법에 의해 압축된 이진 데이터를 복원장치가 복원하는 방법으로서,
상기 복수의 압축클러스터를 입력받는 단계;
각각의 상기 압축클러스터와 동일한 비트길이를 갖는 1만으로 이루어진 제 2이진수를 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성하는 단계; 및
상기 복수의 복원클러스터를 결합하는 단계를 포함하는 것을 특징으로 하는, 데이터 복원방법.
A method for restoring binary data compressed by a data compression method according to any one of claims 1 to 4,
Receiving the plurality of compressed clusters;
Generating a plurality of restoration clusters by adding a first binary number of 1s having the same bit length as that of each of the compression clusters to the compression cluster; And
And combining the plurality of restoration clusters.
이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하고, 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성하는 압축부; 및
상기 복수의 압축클러스터를 출력하는 출력부를 포함하되,
상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수이고, 상기 N은 자연수이며,
상기 제 1이진수는 비트길이가 해당 각 제너럴클러스터보다 1비트길이만큼 작고 1로만 이루어진 이진수인 것을 특징으로 하는, 데이터 압축장치.
A compression unit for dividing binary data into a plurality of general clusters in a direction from a least significant bit to an upper bit and subtracting a first binary number from each of the general clusters to generate a plurality of compressed clusters; And
And an output unit outputting the plurality of compressed clusters,
Each of the general clusters is a binary number having a length of (N times + 1) bits and having a most significant bit of its own at 1, the N being a natural number,
Wherein the first binary number is a binary number having a bit length smaller by one bit length than the corresponding general cluster and consisting of only one bit.
제 6항에 있어서,
상기 제너럴클러스터의 각각은 1로만 이루어진 이진수가 아니면서 자신의 최상위비트가 1인 최소길이의 이진수인 것을 특징으로 하는 데이터 압축장치.
The method according to claim 6,
Wherein each of the general clusters is a binary number having a minimum length of 1, the most significant bit of which is not a binary number consisting of only one.
제 6항에 있어서,
상기 압축부는 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 제 1이진수를 감산하지 않고 상기 출력부를 통하여 원본 그대로 출력하는 것을 특징으로 하는 데이터 압축장치.
The method according to claim 6,
Wherein the compression unit outputs the binary data including the most significant bit of the binary data among the divided binary data through the output unit without subtracting the first binary number.
제 6항에 있어서,
상기 복수의 압축클러스터의 출력시, 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력하는 것을 특징으로 하는 데이터 압축장치.
The method according to claim 6,
And outputs the binary data from the least significant bit or the most significant bit sequentially on the basis of the binary data when outputting the plurality of compressed clusters.
제 6항 내지 제 9항 중 어느 한 항에 기재된 데이터 압축장치에 의해 압축된 이진 데이터를 복원하는 장치로서,
상기 복수의 압축클러스터를 입력받는 입력부; 및
각각의 상기 압축클러스터와 동일한 비트길이를 갖는 1만으로 이루어진 제 2이진수를 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성하고, 상기 복수의 복원클러스터를 결합하는 복원부를 포함하는 것을 특징으로 하는, 데이터 복원장치.
An apparatus for restoring binary data compressed by the data compression apparatus according to any one of claims 6 to 9,
An input unit receiving the plurality of compressed clusters; And
And a decompression unit for adding a first binary number of 1s having the same bit length as that of each of the compression clusters to the compression cluster to generate a plurality of restoration clusters and combining the plurality of restoration clusters Restoration device.
압축부가 이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하는 분할단계로서, 상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수이고 상기 N은 자연수인, 분할단계;
상기 압축부가 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성하는 압축단계로서, 상기 제 1이진수는 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트는 0인 이진수인, 압축단계; 및
출력부가 상기 복수의 압축클러스터를 출력하는 단계를 포함하는 것을 특징으로 하는, 데이터 압축방법.
Wherein the compression unit divides the binary data into a plurality of general clusters in the direction from the least significant bit to the most significant bit, wherein each of the general clusters has a (N + 1) bit length and a binary length And N is a natural number;
Wherein the first binary number has the same bit length as each corresponding general cluster and the most significant bit is 1 and the remaining bits are 0, A compression step, which is a binary number; And
And outputting the plurality of compressed clusters by the output unit.
제 11항에 있어서,
상기 분할단계에 의해 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 압축단계를 수행하지 않고 원본 그대로 출력하는 것을 특징으로 하는 데이터 압축방법.
12. The method of claim 11,
Wherein a binary number including the most significant bit of the binary data among the binary numbers divided by the dividing step is output as it is without performing the compression step.
제 11항에 있어서,
상기 출력하는 단계에서, 상기 복수의 압축클러스터는 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력되는 것을 특징으로 하는 데이터 압축방법.
12. The method of claim 11,
Wherein in the outputting step, the plurality of compression clusters are output sequentially from the least significant bit or the most significant bit based on the binary data.
제 11항 내지 제 13항 중 어느 한 항에 기재된 데이터 압축방법에 의해 압축된 이진 데이터를 복원장치가 복원하는 방법으로서,
상기 복수의 압축클러스터를 입력받는 단계;
각각의 상기 압축클러스터보다 1 비트길이만큼 더 길고 최상위비트가 1이고 나머지 비트는 0인 제 2이진수를 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성하는 단계; 및
상기 복수의 복원클러스터를 결합하는 단계를 포함하는 것을 특징으로 하는, 데이터 복원방법.
A method for restoring binary data compressed by the data compression method according to any one of claims 11 to 13,
Receiving the plurality of compressed clusters;
Generating a plurality of restoration clusters by adding a second binary number that is longer by one bit length than each of the compressed clusters and has a most significant bit of 1 and a remaining bit of 0 to the corresponding compressed cluster; And
And combining the plurality of restoration clusters.
이진 데이터를 최하위비트로부터 상위비트방향으로 복수의 제너럴클러스터로 분할하고, 각각의 상기 제너럴클러스터에서 제 1이진수를 감산하여 복수의 압축클러스터를 생성하는 압축부; 및
상기 복수의 압축클러스터를 출력하는 출력부를 포함하되,
상기 제너럴클러스터의 각각은 (N배수 + 1) 비트길이를 가지고 자신의 최상위비트가 1인 최소길이의 이진수이고, 상기 N은 자연수이며,
상기 제 1이진수는 비트길이가 해당 각 제너럴클러스터와 같고 최상위비트가 1이고 나머지 비트가 0인 이진수인 것을 특징으로 하는, 데이터 압축장치.
A compression unit for dividing binary data into a plurality of general clusters in a direction from a least significant bit to an upper bit and subtracting a first binary number from each of the general clusters to generate a plurality of compressed clusters; And
And an output unit outputting the plurality of compressed clusters,
Each of the general clusters is a binary number having a length of (N times + 1) bits and having a most significant bit of its own at 1, the N being a natural number,
Wherein the first binary number is a binary number whose bit length is the same as that of the corresponding general cluster and whose most significant bit is 1 and the other bits are 0.
제 15항에 있어서,
상기 압축부는 분할된 이진수들 중 상기 이진 데이터의 최상위비트를 포함하는 이진수에 대해서는 상기 제 1이진수를 감산하지 않고 상기 출력부를 통하여 원본 그대로 출력하는 것을 특징으로 하는 데이터 압축장치.
16. The method of claim 15,
Wherein the compression unit outputs the binary data including the most significant bit of the binary data among the divided binary data through the output unit without subtracting the first binary number.
제 15항에 있어서,
상기 복수의 압축클러스터의 출력시, 상기 이진데이터를 기준으로 최하위비트로부터 또는 최상위비트로부터 순차적으로 출력하는 것을 특징으로 하는 데이터 압축장치.
16. The method of claim 15,
And outputs the binary data from the least significant bit or the most significant bit sequentially on the basis of the binary data when outputting the plurality of compressed clusters.
제 15항 내지 제 17항 중 어느 한 항에 기재된 데이터 압축장치에 의해 압축된 이진 데이터를 복원하는 장치로서,
상기 복수의 압축클러스터를 입력받는 입력부; 및
각각의 상기 압축클러스터보다 1비트길이만큼 더 길고 최상위비트가 1이고 나머지 비트가 0인 제 2이진수를 해당 압축클러스터에 가산하여 복수의 복원클러스터를 생성하고, 상기 복수의 복원클러스터를 결합하는 복원부를 포함하는 것을 특징으로 하는, 데이터 복원장치.

An apparatus for restoring binary data compressed by the data compression apparatus according to any one of claims 15 to 17,
An input unit receiving the plurality of compressed clusters; And
A restoration unit that adds a second binary number that is longer by one bit length than each of the compression clusters and has a most significant bit of 1 and the remaining bits of 0 to the compressed cluster to generate a plurality of restoration clusters, The data restoration apparatus comprising:

KR1020150013710A 2015-01-28 2015-01-28 Method of data compressing, method of data recovering, and the apparatuses thereof KR101603866B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150013710A KR101603866B1 (en) 2015-01-28 2015-01-28 Method of data compressing, method of data recovering, and the apparatuses thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150013710A KR101603866B1 (en) 2015-01-28 2015-01-28 Method of data compressing, method of data recovering, and the apparatuses thereof

Publications (1)

Publication Number Publication Date
KR101603866B1 true KR101603866B1 (en) 2016-03-17

Family

ID=55651661

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150013710A KR101603866B1 (en) 2015-01-28 2015-01-28 Method of data compressing, method of data recovering, and the apparatuses thereof

Country Status (1)

Country Link
KR (1) KR101603866B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101468307B1 (en) 2013-05-27 2014-12-02 김정훈 Binary data compression and decompression apparatus and method
KR101471833B1 (en) 2013-06-13 2014-12-11 김정훈 Binary data compression and decompression method and apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101468307B1 (en) 2013-05-27 2014-12-02 김정훈 Binary data compression and decompression apparatus and method
KR101471833B1 (en) 2013-06-13 2014-12-11 김정훈 Binary data compression and decompression method and apparatus

Similar Documents

Publication Publication Date Title
KR101737294B1 (en) Methods and devices for source-coding and decoding of data involving symbol compression
KR100894002B1 (en) Device and data method for selective compression and decompression and data format for compressed data
US8872677B2 (en) Method and apparatus for compressing data-carrying signals
KR101610609B1 (en) Data encoder, data decoder and method
US20110150351A1 (en) Parallelization of variable length decoding
JP2016512004A5 (en)
KR102393743B1 (en) Encoder, decoder and method using mode symbols
CN105409129B (en) Encoder device, decoder apparatus and method
EP3163876A1 (en) Method and apparatus for performing arithmetic coding by limited carry operation
KR101587944B1 (en) Binary data compression and restoration method and apparatus
KR101575939B1 (en) Binary data compression and restoration method and apparatus
KR101603866B1 (en) Method of data compressing, method of data recovering, and the apparatuses thereof
KR101471833B1 (en) Binary data compression and decompression method and apparatus
KR101549740B1 (en) Binary data compression and decompression method and apparatus
JP2014143655A (en) Image encoder, image decoder and program
KR101652735B1 (en) Binary data compression and restoration method and apparatus
KR101676421B1 (en) Data compression and restoration method and apparatus
KR101573983B1 (en) Method of data compressing, method of data recovering, and the apparatuses thereof
KR20150103992A (en) Binary data compression and restoration method and apparatus
KR102361730B1 (en) Data compressing method and apparatus
KR101760070B1 (en) Data encoding and decoding method and apparatus
KR101676420B1 (en) Data compression and restoration method and apparatus
KR101587946B1 (en) Binary data compression and restoration method and apparatus
KR100686354B1 (en) Huffman decoding method and device for using variable length tree
KR20230022289A (en) Data compressing method and apparatus

Legal Events

Date Code Title Description
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190508

Year of fee payment: 4