KR20170057807A - Data compression apparatus and method, data restoration apparatus and method - Google Patents

Data compression apparatus and method, data restoration apparatus and method Download PDF

Info

Publication number
KR20170057807A
KR20170057807A KR1020160036944A KR20160036944A KR20170057807A KR 20170057807 A KR20170057807 A KR 20170057807A KR 1020160036944 A KR1020160036944 A KR 1020160036944A KR 20160036944 A KR20160036944 A KR 20160036944A KR 20170057807 A KR20170057807 A KR 20170057807A
Authority
KR
South Korea
Prior art keywords
data
bits
input data
scaling
common
Prior art date
Application number
KR1020160036944A
Other languages
Korean (ko)
Other versions
KR102503878B1 (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 한국전자통신연구원
Publication of KR20170057807A publication Critical patent/KR20170057807A/en
Application granted granted Critical
Publication of KR102503878B1 publication Critical patent/KR102503878B1/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
    • H03M7/3066Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction by means of a mask or a bit-map
    • 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

Landscapes

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

Abstract

Disclosed are data compression apparatus and method, and data restoration apparatus and method. The data compression apparatus comprises: a determination unit for determining a group size for data; an obtaining unit for grouping input data of at least part of the data in consideration of the determined group size, and obtaining a group exponent (GE) from the input data; and a compression processing unit for performing upward scaling on each of the input data by shifting the same by the group exponent in an arbitrary direction and transmitting the input data, which has been performed with the upward scaling, to the data decompression apparatus. The present invention can compress the data without a block memory at a high speed by performing upward scaling by using the group exponent.

Description

데이터 압축 장치 및 방법, 데이터 복원 장치 및 방법{DATA COMPRESSION APPARATUS AND METHOD, DATA RESTORATION APPARATUS AND METHOD}TECHNICAL FIELD [0001] The present invention relates to a data compression apparatus and method, and a data restoration apparatus and method.

본 발명의 실시예들은 데이터의 그룹핑 및 그룹핑과 연관된 공통 지수를 이용하여, 고속 압축 및 복원을 지원하는 기술에 관한 것이다.Embodiments of the present invention are directed to techniques that support fast compression and decompression using common exponents associated with grouping and grouping of data.

종래의 데이터 압축방식에서는 예컨대, 업다운 샘플링과 블록스케일링 방식으로 스케일링을 한다. 블록 스케일링 방식은 데이터를 일정 전송 블록으로 묶고, 블록 내의 데이터 중 가장 큰 값을 기준으로 데이터의 스케일링을 수행한 후, 양자화하는 방식이다.In the conventional data compression method, for example, scaling is performed by the up-down sampling and the block scaling method. The block scaling method is a method of grouping data into a constant transmission block, scaling data based on the largest value of the data in the block, and quantizing the data.

따라서, 블록 스케일링 방식은 블록단위의 중간 데이터를 저장하기 위한 고속의 블록메모리가 필요하게 되고, 블록 사이즈가 클수록 처리지연이 크게 발생하는 단점이 있다. 또한, 블록 스케일링 방식은 블록마다 별도의 지수부가 발생하게 되므로, 지수부 전송을 위한 별도의 채널을 사용하거나, 데이터 블록 마다 지수부 처리 과정이 필요하기 때문에, CPRI(Common Public Radio Interface)와 같이 데이터를 일정 크기로 컨테이너에 담아 전송하는 방법에 적용하기는 상당히 불편한 점이 있다.Therefore, in the block scaling method, a high-speed block memory for storing intermediate data in units of blocks is required, and the larger the block size, the larger the processing delay occurs. Since the block scaling method generates a separate exponent for each block, a separate channel for exponent transmission or an exponent process for each data block is required. Therefore, data such as CPRI (Common Public Radio Interface) It is quite inconvenient to apply it to a method of transmitting a container of a certain size in a container.

본 발명은 입력 데이터의 비트 수와 출력 데이터의 비트 수에 따라, 유연하게 결정된 그룹 사이즈에 기초하여, 입력 데이터를 그룹핑하고, 그룹핑된 입력 데이터 별로, 공통 지수를 이용하여 상향 스케일링을 수행 함으로써, 고속의 블록메모리 없이도, 데이터를 압축할 수 있게 하는 것을 목적으로 한다.According to the present invention, input data is grouped on the basis of a flexible group size determined according to the number of bits of input data and the number of bits of output data, and up scaling is performed using a common index for each grouped input data, Without the block memory of the < / RTI >

또한, 본 발명은 상향 스케일링된 입력 데이터에, 상향 스케일링에 이용된 공통 지수를 포함시켜, 데이터 복원 장치에 전송 함으로써, 압축에 사용된 지수에 대한 별도의 처리 과정 또는 별도의 전송 채널이 필요로 하지 않음에 따라, 압축 및 복원에 대한 복잡도를 감소시키고, 압축 및 복원을 용이하게 하는 것을 목적으로 한다.In addition, the present invention includes a common index used for up scaling and transmits the upward scaled input data to a data decompression apparatus, thereby requiring a separate process for indexes used for compression or a separate transmission channel The aim is to reduce the complexity for compression and decompression, and to facilitate compression and decompression.

상기의 목적을 이루기 위한 데이터 압축 장치는 데이터에 대한 그룹 사이즈를 결정하는 결정부와, 상기 결정된 그룹 사이즈를 고려하여, 상기 데이터 중 적어도 일부의 입력 데이터를 그룹핑하고, 상기 입력 데이터로부터, 공통 지수(GE: Group Exponent)를 획득하는 획득부와, 상기 입력 데이터 각각에 대해, 상기 공통 지수 만큼 임의의 방향으로 시프트하여, 상향 스케일링을 수행하고, 상기 상향 스케일링이 수행된 입력 데이터를 데이터 복원 장치에 전송하는 압축 처리부를 포함할 수 있다.The data compression device for achieving the above object includes a determination unit for determining a group size for data, a grouping unit for grouping input data of at least a part of the data in consideration of the determined group size, And an input unit for performing an upward scaling on each of the input data by shifting in an arbitrary direction by the common exponent and transmitting the input data on which the upward scaling has been performed to the data restoration device And a compression processing unit.

상기의 목적을 이루기 위한 데이터 복원 장치는 설정된 그룹 사이즈에 따라, 데이터 압축 장치로부터 수신된 데이터 중 적어도 일부의 출력 데이터를 그룹핑하고, 상기 출력 데이터로부터, 공통 지수를 추출하는 추출부와, 상기 출력 데이터 각각에 대해, 상기 추출된 공통 지수 만큼 임의의 방향으로 시프트하여, 하향 스케일을 수행하는 복원 처리부를 포함할 수 있다.The data restoration device for achieving the above object includes an extraction unit for grouping output data of at least a part of the data received from the data compression device according to the set group size and extracting a common index from the output data, And a restoration processor for performing a downward scale by shifting in any direction by the extracted common index.

상기의 목적을 이루기 위한 데이터 압축 방법은 데이터에 대한 그룹 사이즈를 결정하는 단계와, 상기 결정된 그룹 사이즈를 고려하여, 상기 데이터 중 적어도 일부의 입력 데이터를 그룹핑하고, 상기 입력 데이터로부터, 공통 지수를 획득하는 단계와, 상기 입력 데이터 각각에 대해, 상기 공통 지수 만큼 임의의 방향으로 시프트하여, 상향 스케일링을 수행하고, 상기 상향 스케일링이 수행된 입력 데이터를 데이터 복원 장치에 전송하는 단계를 포함할 수 있다.According to another aspect of the present invention, there is provided a data compression method including: determining a group size of data; grouping input data of at least a part of the data in consideration of the decided group size; Shifting the input data by arbitrary direction by the common exponent for each of the input data, performing up scaling, and transmitting the up-scaled input data to the data decompression device.

상기의 목적을 이루기 위한 데이터 복원 방법은 설정된 그룹 사이즈에 따라, 데이터 압축 장치로부터 수신된 데이터 중 적어도 일부의 출력 데이터를 그룹핑하고, 상기 출력 데이터로부터, 공통 지수를 추출하는 단계와, 상기 출력 데이터 각각에 대해, 상기 추출된 공통 지수 만큼 임의의 방향으로 시프트하여, 하향 스케일을 수행하는 단계를 포함할 수 있다.According to another aspect of the present invention, there is provided a data restoration method for grouping output data of at least a part of data received from a data compression apparatus according to a set group size and extracting a common index from the output data, Shifting in an arbitrary direction by the extracted common exponent, and performing a downward scale.

본 발명의 실시예에 따르면, 입력 데이터의 비트 수와 출력 데이터의 비트 수에 따라, 유연하게 결정된 그룹 사이즈에 기초하여, 입력 데이터를 그룹핑하고, 그룹핑된 입력 데이터 별로, 공통 지수를 이용하여 상향 스케일링을 수행 함으로써, 고속의 블록메모리 없이도, 데이터를 압축할 수 있게 한다.According to the embodiment of the present invention, input data is grouped on the basis of the number of bits of the input data and the number of bits of the output data on the basis of the group size determined flexibly, So that data can be compressed even without a high-speed block memory.

본 발명의 실시예에 따르면, 상향 스케일링된 입력 데이터에, 상향 스케일링에 이용된 공통 지수를 포함시켜, 데이터 복원 장치에 전송 함으로써, 압축에 사용된 지수에 대한 별도의 처리 과정 또는 별도의 전송 채널이 필요로 하지 않음에 따라, 압축 및 복원에 대한 복잡도를 감소시키고, 압축 및 복원을 용이하게 한다.According to the embodiment of the present invention, the common scaling index used for the up scaling is included in the upward scaled input data and is transmitted to the data decompression device, so that a separate process for the index used for compression or a separate transmission channel As it is not needed, it reduces the complexity for compression and decompression, and facilitates compression and decompression.

도 1은 본 발명의 일실시예에 따른 데이터 압축 장치 및 데이터 복원 장치를 포함하는 네트워크의 일례를 도시하는 도면이다.
도 2는 본 발명의 일실시예에 따른 데이터 압축 장치의 구성을 나타내는 도면이다.
도 3은 본 발명의 실시예에 따른 데이터 복원 장치의 구성을 나타내는 도면이다.
도 4는 본 발명의 일실시예에 따른 데이터 압축 장치에서의 데이터 압축에 대한 일례를 설명하기 위한 도면이다.
도 5는 본 발명의 일실시예에 따른 데이터 복원 장치에서의 데이터 복원에 대한 일례를 설명하기 위한 도면이다.
도 6은 본 발명의 실시예에 따른 데이터 압축 장치에 의한 데이터 압축시, EVM 성능에 대한 일례를 도시한 도면이다.
도 7은 본 발명의 일실시예에 따른 데이터 압축 방법을 나타내는 흐름도이다.
도 8은 본 발명의 일실시예에 따른 데이터 복원 방법을 나타내는 흐름도이다.
1 is a diagram illustrating an example of a network including a data compression apparatus and a data decompression apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram of a data compression apparatus according to an embodiment of the present invention. Referring to FIG.
3 is a diagram illustrating a configuration of a data restoration apparatus according to an embodiment of the present invention.
4 is a view for explaining an example of data compression in the data compression apparatus according to an embodiment of the present invention.
5 is a diagram for explaining an example of data restoration in a data restoration apparatus according to an embodiment of the present invention.
FIG. 6 is a diagram illustrating an example of EVM performance at the time of data compression by the data compression apparatus according to the embodiment of the present invention.
7 is a flowchart illustrating a data compression method according to an embodiment of the present invention.
8 is a flowchart illustrating a data restoration method according to an embodiment of the present invention.

이하, 첨부된 도면들을 참조하여 본 발명의 일실시예에 따른 데이터 압축 장치 및 방법, 데이터 복원 장치 및 방법에 대해 상세히 설명한다. 여기서, 데이터 압축(복원) 장치는 그룹 부동 소수점 스케일링 압축(복원) 방식에 기초하여, 데이터를 압축(복원)할 수 있다. 또한, 데이터 압축(복원) 장치는 CPRI 뿐만 아니라 OBSAI(Open Baseband Remote Radiohead Interface) 또는 ORI(Open Radio Interface) 규격을 따르는 시스템에 적용될 수 있다.Hereinafter, a data compression apparatus and method, a data decompression apparatus, and a data decompression method according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings. Here, the data compression (decompression) apparatus can compress (decompress) the data based on the group floating-point scaling compression (decompression) scheme. In addition, the data compression (decompression) apparatus can be applied not only to the CPRI but also to a system conforming to an Open Baseband Remote Radiohead Interface (OBSAI) or an Open Radio Interface (ORI) standard.

도 1은 본 발명의 일실시예에 따른 데이터 압축 장치 및 데이터 복원 장치를 포함하는 네트워크의 일례를 도시하는 도면이다.1 is a diagram illustrating an example of a network including a data compression apparatus and a data decompression apparatus according to an embodiment of the present invention.

도 1을 참조하면, 네트워크(100)는 데이터 압축 장치(101) 및 데이터 복원 장치(103)를 포함할 수 있다.Referring to FIG. 1, the network 100 may include a data compression apparatus 101 and a data decompression apparatus 103.

데이터 압축 장치(101)는 데이터에 대한 그룹 사이즈를 결정하고, 상기 결정된 그룹 사이즈를 고려하여, 데이터 중 적어도 일부의 입력 데이터를 그룹핑할 수 있다. 여기서, 입력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 데이터 압축 장치(101)에 입력되는 단위 수의 비트를 포함하는 데이터일 수 있다.The data compression apparatus 101 may determine a group size for data and group input data of at least some of the data in consideration of the determined group size. Here, the input data may be data including a predetermined number of bits, or data including a unit number of bits input to the data compression apparatus 101. [

데이터 압축 장치(101)는 그룹핑된 입력 데이터로부터, 그룹핑된 입력 데이터에 관한 공통 지수(또는, 그룹 지수)를 획득하고, 상기 공통 지수를 이용하여, 입력 데이터 각각을 압축한 후, 데이터 복원 장치(103)에 전송할 수 있다. 이때, 데이터 압축 장치(101)는 압축된 입력 데이터에, 상기 공통 지수를 포함시켜, 출력 데이터로서 데이터 복원 장치(103)에 전송할 수 있다.The data compression apparatus 101 obtains a common index (or a group index) related to the grouped input data from the grouped input data, compresses each of the input data using the common index, 103). At this time, the data compression apparatus 101 can transmit the compressed data to the data decompression apparatus 103 as output data including the common index.

데이터 복원 장치(103)는 데이터 압축 장치(101)로부터 데이터를 수신하고, 수신된 데이터 중 적어도 일부의 출력 데이터를, 설정된 그룹 사이즈에 따라 그룹핑할 수 있다. 여기서, 출력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 데이터 압축 장치(101)에서 출력되는 단위 수의 비트를 포함하는 데이터일 수 있다.The data decompression apparatus 103 can receive data from the data compression apparatus 101 and can group output data of at least some of the received data according to the set group size. Here, the output data may be data including a predetermined number of bits, or data including a unit number of bits output from the data compression apparatus 101. [

데이터 복원 장치(103)는 그룹핑된 출력 데이터로부터, 그룹핑된 출력 데이터에 관한 공통 지수를 추출하고, 상기 공통 지수를 이용하여, 출력 데이터 각각을 복원 함으로써, 데이터 압축 장치(101)에서 전송하고자 하는 데이터를 획득할 수 있다.The data decompression apparatus 103 extracts a common index related to the grouped output data from the grouped output data and restores each of the output data by using the common index so that data to be transmitted from the data compression apparatus 101 Can be obtained.

도 2는 본 발명의 일실시예에 따른 데이터 압축 장치의 구성을 나타내는 도면이다.FIG. 2 is a block diagram of a data compression apparatus according to an embodiment of the present invention. Referring to FIG.

도 2를 참조하면, 본 발명의 일실시예에 따른 데이터 압축 장치(200)는 결정부(201), 획득부(203), 그룹 버퍼(209), 압축 처리부(211) 및 송신부(213)를 포함할 수 있다.2, a data compression apparatus 200 according to an embodiment of the present invention includes a determination unit 201, an acquisition unit 203, a group buffer 209, a compression processing unit 211, and a transmission unit 213 .

결정부(201)는 데이터에 대한 그룹 사이즈를 결정할 수 있다. 구체적으로, 결정부(201)는 상기 데이터 중 입력 데이터의 비트 수 및 설정된 출력 데이터의 비트 수(즉, 출력 비트 수)를 고려하여, 스케일링 지수를 결정하고, 상기 결정된 스케일링 지수에 기초하여, 상기 그룹 사이즈를 결정할 수 있다. 여기서, 입력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 입력되는 단위 수의 비트를 포함하는 데이터일 수 있으며, 예컨대, 18(0∼17) 비트일 수 있다. 또한, 입력 데이터는 부호 비트를 적어도 포함하는 다수의 비트를 나열하여 구성될 수 있다.The determination unit 201 can determine the group size for the data. Specifically, the determination unit 201 determines a scaling index in consideration of the number of bits of the input data and the number of bits (i.e., the number of output bits) of the set output data among the data, and, based on the determined scaling index, The group size can be determined. Here, the input data may be data including a predetermined number of bits or data including bits of an input unit number, for example, 18 (0-17) bits. Further, the input data may be configured by arranging a plurality of bits including at least a sign bit.

구체적으로, 결정부(201)는 [수학식 1]에 의하여, 스케일링 지수를 결정할 수 있다.More specifically, the determination unit 201 can determine the scaling exponent according to Equation (1).

Figure pat00001
Figure pat00001

여기서, S는 스케일링 지수이고, T는 입력 데이터의 비트 수(입력 데이터가 가지는 비트 해상도)이며, Q(

Figure pat00002
Figure pat00003
)는 압축에 의해 출력되는 출력 데이터의 비트 수이다.Here, S is a scaling exponent, T is the number of bits of input data (bit resolution of input data), and Q (
Figure pat00002
Figure pat00003
) Is the number of bits of output data output by compression.

여기서, 스케일링 범위는 0∼S-1일 수 있다.Here, the scaling range may be 0 to S-1.

결정부(201)는 예컨대, 입력 데이터의 비트 수(T)가 18비트이고, 압축 후 출력 데이터의 비트 수(Q)가 10비트일 경우, [수학식 1]에 따라, 10의 스케일링 지수(S)를 결정할 수 있다.The determination unit 201 determines a scaling index of 10 (for example, 10 bits) according to the following equation (1) when the number of bits T of the input data is 18 bits and the number of bits of the output data after compression is 10 bits S) can be determined.

이후, 결정부(201)는 스케일링 지수가 설정되면, 결정된 스케일링 지수에 기초하여, [수학식 2]에 따라, 그룹 사이즈를 결정할 수 있다.Thereafter, when the scaling index is set, the determining unit 201 can determine the group size based on the determined scaling exponent according to the following equation (2).

Figure pat00004
Figure pat00004

여기서, G는 그룹 사이즈이고, S는 스케일링 지수이다.Where G is the group size and S is the scaling exponent.

예컨대, 결정부(201)는 스케일링 지수(S)가 10일 경우, 그룹 사이즈(G)를 3 또는 4로 결정할 수 있다.For example, when the scaling factor S is 10, the determination unit 201 may determine the group size G to be 3 or 4.

또한, 결정부(201)는 상기 스케일링 지수와 상기 그룹 사이즈에 기초하여, 스케일링 범위를 최종적으로 결정하고, 상기 결정된 최종의 스케일링 범위(0∼M-1)를 선택부(207)에 제공 함으로써, 이후 선택부(207)에 의한 공통 지수 선택시, 기준 데이터로서 활용할 수 있게 한다.The determining unit 201 finally determines the scaling range based on the scaling index and the group size and provides the selected final scaling range (0 to M-1) to the selecting unit 207, Then, when the common index is selected by the selection unit 207, it can be utilized as reference data.

구체적으로, 결정부(201)는 그룹 사이즈(G)와 스케일링 지수(S)가 결정되면, [수학식 3]에 의하여, 최종의 스케일링 지수(M)를 결정하고, 최종의 스케일링 범위(0∼M-1)를 결정할 수 있다.Specifically, when the group size G and the scaling index S are determined, the determination unit 201 determines the final scaling exponent M according to Equation (3), and determines the final scaling range (0 - M-1).

Figure pat00005
Figure pat00005

예컨대, 결정부(201)는 입력 데이터의 비트 수(T)가 18비트이고, 압축 후 출력 데이터의 비트 수(Q)가 10비트일 때, 그룹 사이즈(G)를 4로 결정할 경우, 스케일링 범위가 0∼15까지 표현이 가능하지만, 최종의 스케일링 범위를, 최종의 스케일링 지수(M) 10을 초과하지 않는 범위인 0∼9로 결정할 수 있다. 또한, 결정부(201)는 그룹 사이즈(G)를 3으로 결정할 경우에는, 최종의 스케일링 범위를, 0∼7로 결정할 수 있다.For example, when the number of bits T of the input data is 18 bits and the number of bits of the output data after compression is 10 bits and the group size G is determined to be 4, the determination unit 201 determines the scaling range Can be expressed from 0 to 15, but the final scaling range can be determined as 0 to 9, which is a range that does not exceed the final scaling index (M) 10. In addition, when the group size G is determined to be 3, the determination unit 201 can determine the final scaling range from 0 to 7.

또한, 결정부(201)는 입력 데이터의 비트 수(T)가 24비트이고, 압축 후 출력 데이터의 비트 수(Q)가 10비트일 때에는, 스케일링 지수(S)가 16으로 결정 됨에 따라, 그룹 사이즈(G)를 4로 결정할 수 있으며, 스케일링 범위를 0∼15로 결정할 수 있다.When the bit number T of the input data is 24 bits and the number of bits of the output data after compression is 10 bits, the determination unit 201 determines that the scaling index S is 16, The size (G) can be determined as 4, and the scaling range can be determined as 0 to 15.

획득부(203)는 상기 결정된 그룹 사이즈를 고려하여, 상기 데이터 중 적어도 일부의 입력 데이터를 그룹핑하고, 상기 입력 데이터로부터, 공통 지수(GE: Group Exponent)를 획득할 수 있다. 예컨대, 획득부(203)는 그룹 사이즈가 3으로 결정될 경우, 3개의 입력 데이터를 그룹핑하여 그룹을 생성할 수 있다.The acquiring unit 203 may group input data of at least a part of the data in consideration of the determined group size, and obtain a common exponent (GE) from the input data. For example, when the group size is determined to be 3, the obtaining unit 203 may group the three pieces of input data to generate a group.

구체적으로, 획득부(203)는 카운트부(205) 및 선택부(207)를 포함할 수 있다.Specifically, the obtaining unit 203 may include a counting unit 205 and a selecting unit 207. [

카운트부(205)는 그룹핑된 입력 데이터 각각에서, 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트(count)하여, NCB(Number of Continuous Bits)로서 확인할 수 있다. 이때, 카운트부(205)는 상기 입력 데이터 내 다수의 비트 중, 최상위 비트(MSB: Most Significant Bit)를 상기 부호 비트로서, 확인하고, 상기 부호 비트가 '1'일 경우, 상기 부호 비트를 기준으로, '1'이 연속적으로 나열되는 비트의 개수를 카운트할 수 있다. 또한, 카운트부(205)는 상기 부호 비트가 '0'일 경우, 상기 부호 비트를 기준으로, '0'이 연속적으로 나열되는 비트의 개수를 카운트할 수 있다.The counting unit 205 counts the number of consecutive bits that are the same as the sign bit, and counts the number of consecutive bits, based on the sign bit, in each of the grouped input data, and confirms the number as a Number of Continuous Bits (NCB) . At this time, the count unit 205 checks the most significant bit (MSB) among the plurality of bits in the input data as the sign bit, and when the sign bit is '1' , It is possible to count the number of bits in which '1' is continuously arranged. Also, when the sign bit is '0', the count unit 205 may count the number of consecutive bits of '0' based on the sign bit.

선택부(207)는 그룹핑된 입력 데이터 각각에서 확인되는 NCB 중 최소값을, LSI(Least Scaling Index)로서 지정하고, 상기 지정된 LSI를 상기 공통 지수로서 선택할 수 있다. 선택부(207)는 예컨대, 제1 그룹으로 그룹핑된 제1,2,3 입력 데이터 각각에서 확인된 제1,2,3 NCB가, '4', '3', '3'일 경우, 최소값인 '3'을 LSI로서 지정하고, 지정된 '3'을 공통 지수로서 선택할 수 있다.The selecting unit 207 can designate the minimum value of the NCBs identified in each of the grouped input data as the LSI (Least Scaling Index) and select the designated LSI as the common index. For example, when the first, second, and third NCBs identified in the first, second, and third input data grouped as the first group are '4', '3', and '3' Quot; 3 " can be designated as the LSI, and the designated '3' can be selected as the common index.

다른 일례로서, 선택부(207)는 LSI를 최대값으로 지정한 후, 카운트부(205)에 의해 확인되는 NCB와 상기 LSI를 비교하고, NCB가 LSI 보다 작은 경우, NCB를 LSI로서 지정할 수 있다. 선택부(207)는 그룹핑된 입력 데이터 각각에서 확인되는 NCB 마다, LSI와의 비교를 반복하여, 최소값의 NCB를 LSI로서 지정할 수 있다.As another example, the selector 207 designates the LSI as the maximum value and then compares the LSI with the NCB confirmed by the counting unit 205. If the NCB is smaller than the LSI, the NCB can be designated as the LSI. The selection unit 207 can repeat the comparison with the LSI for each NCB identified in each of the grouped input data, and designate the NCB of the minimum value as the LSI.

이때, 선택부(207)는 상기 LSI가 스케일링 범위에 포함되지 않는 경우, 상기 지정된 LSI 대신에, 상기 스케일링 범위에서의 최대값을 상기 공통 지수로서 변경하여 선택할 수 있다.At this time, if the LSI is not included in the scaling range, the selecting unit 207 may select and change the maximum value in the scaling range as the common index instead of the designated LSI.

그룹 버퍼(209)는 그룹핑된 입력 데이터를 보관할 수 있다. 이때, 그룹 버퍼(209)는 결정부(201)에 의해, 결정된 그룹 사이즈 만큼의 입력 데이터를 버퍼링할 수 있으며, 그룹 사이즈가 크지 않으므로, 비교적 큰 사이즈의 블록 메모리를 사용하지 않고, 구현이 간단한 시프트 레지스터로 구현할 수 있다.The group buffer 209 may store the grouped input data. At this time, the group buffer 209 can buffer the input data corresponding to the determined group size by the determination unit 201. Since the group size is not large, the implementation does not use the block memory of a relatively large size, Registers.

압축 처리부(211)는 그룹핑된 입력 데이터 각각에 대해, 공통 지수 만큼 임의의 방향으로 시프트(shift)하여, 상향 스케일링을 수행하고, 상기 상향 스케일링이 수행된 입력 데이터에, 상기 공통 지수를 포함시켜 송신부(213)를 통해, 데이터 복원 장치에 전송할 수 있다. 구체적으로, 압축 처리부(211)는 그룹핑된 입력 데이터 각각에 대해, 상기 입력 데이터 내 최상위 비트(예컨대, 부호 비트)를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 방향으로, 상기 공통 지수 만큼 시프트하여, 상향 스케일링을 수행할 수 있다. 압축 처리부(211)는 상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시켜 전송할 수 있다.The compression processing unit 211 shifts the grouped input data in an arbitrary direction by a common exponent to perform upward scaling and includes the common index to the input data on which the upward scaling has been performed, (213) to the data restoration device. Specifically, for each of the grouped input data, the compression processing unit 211 shifts a plurality of bits except the most significant bit (e.g., sign bit) in the input data by the common index in the direction in which the most significant bit is located So that upscaling can be performed. The compression processing unit 211 may select bits corresponding to the order of the input data among the bits represented by binarizing the common exponent, and transmit the bits by including them in the input data in which the upward scaling is performed.

예컨대, 압축 처리부(211)는 제1 그룹으로 그룹핑된 제1,2,3 입력 데이터에 관한 제1 공통 지수가 '3'일 경우, 제1 입력 데이터에 대해, 최상위 비트(0비트)를 제외한 다수의 비트(1∼17비트)를, '3' 만큼 최상위 비트가 위치하는 방향으로 시프트하여, 상향 스케일링을 수행할 수 있다. 또한, 압축 처리부(211)는 제1 그룹 내 제2, 3 입력 데이터 각각에 대해서도, 최상위 비트(0비트)를 제외한 다수의 비트(1∼17비트)를, '3' 만큼 최상위 비트가 위치하는 방향으로 시프트하여, 상향 스케일링을 수행할 수 있다. 이때, 압축 처리부(211)는 제1 공통 지수가 '3'임에 따라, 상기 공통 지수를 이진화하여 표현한 비트들, '011' 중 제1 입력 데이터의 위치순서(즉, 첫번째)에 대응하는 비트, '0'을 선정하여, 제1 입력 데이터에 포함시킬 수 있다. 또한, 압축 처리부(211)는 상기 공통 지수를 이진화하여 표현한 비트들, '011' 중 제2 입력 데이터의 위치순서(즉, 두번째)에 대응하는 비트, '1'을 선정하여, 제2 입력 데이터에 포함시키고, 상기 상기 공통 지수를 이진화하여 표현한 비트, '011' 중 제3 입력 데이터의 위치순서(즉, 세번째)에 대응하는 비트, '1'을 선정하여, 제3 입력 데이터에 포함시킬 수 있다.For example, when the first common index of the first, second and third input data grouped into the first group is '3', the compression processing unit 211 extracts the first input data excluding the most significant bit (0 bit) It is possible to perform upward scaling by shifting a number of bits (1 to 17 bits) in the direction in which the most significant bit is located by '3'. The compression processing unit 211 also outputs a plurality of bits (1 to 17 bits) excluding the most significant bit (0 bit) for each of the second and third input data in the first group, Direction, thereby performing up scaling. At this time, as the first common exponent is '3', the compression processing unit 211 outputs the bits corresponding to the order of the first input data (i.e., first) among the bits represented by binarizing the common exponent, ' 0 11' Bit, ' 0 ' can be selected and included in the first input data. In addition, the compression processing unit 211 selects the bit ' 1 ' corresponding to the positional order (i.e., the second position) of the second input data among the bits represented by binary representation of the common exponent, '0 1 1' including the input data and, selection of the "bits, which corresponds to the third position in order of the input data (i.e., third) of" 1 "the index to the common binarizing an image bit, 01 1, the input data in the 3 Can be included.

압축 처리부(211)는 상기 공통 지수가 포함된 입력 데이터를, 상기 출력 비트 수에 따라, 양자화하여, 출력 데이터로서 상기 데이터 복원 장치에 전송할 수 있다.The compression processing unit 211 can quantize the input data including the common index according to the number of output bits and transmit the quantized data as output data to the data recovery apparatus.

송신부(213)는 압축 처리부(211)에 의해, 입력 데이터가 압축된 출력 데이터를, 데이터 복원 장치에 전송할 수 있다.The transmission section 213 can transmit the output data in which the input data is compressed to the data decompression device by the compression processing section 211. [

데이터 압축 장치(200)는 입력 데이터의 비트 수와 출력 데이터의 비트 수에 따라, 그룹 사이즈를 결정하고, 그룹 사이즈를 고려하여 그룹핑된 입력 데이터 별로 압축 함에 따라, 구현시 비교적 큰 사이즈의 블록 메모리를 사용할 필요가 없으며, 대신 그룹 사이즈 개수 만큼의 시프트 레지스터로 간단하게 구현이 가능하기 때문에, 복잡도가 작고 처리지연이 거의 발생하지 않는다. 또한, 데이터 압축 장치(200)는 그룹핑되는 입력 데이터의 개수가 비교적 적은 경우, 인접한 입력 데이터 간의 크기 차이가 급격히 변하지 않는 입력신호의 특성으로 인해, 블록 스케일링 구조 보다 효율적인 스케일링을 가능하게 하여, 압축으로 인한 EVM(Error Vector Magnitude)의 성능열화를 줄일 수 있다.The data compression apparatus 200 determines the group size according to the number of bits of the input data and the number of bits of the output data and compresses the grouped input data according to the group size in consideration of the group size, It is not necessary to use a shift register, and instead, it can be simply implemented as a shift register as many as the group size, so that the complexity is small and the processing delay hardly occurs. In addition, when the number of input data to be grouped is relatively small, the data compression apparatus 200 can perform efficient scaling more than the block scaling structure due to characteristics of the input signal in which the size difference between adjacent input data does not change rapidly, The performance degradation of the EVM (Error Vector Magnitude) caused by the error can be reduced.

도 3은 본 발명의 실시예에 따른 데이터 복원 장치의 구성을 나타내는 도면이다.3 is a diagram illustrating a configuration of a data restoration apparatus according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 실시예에 따른 데이터 복원 장치(300)는 수신부(301), 추출부(303), 그룹 버퍼(305) 및 복원 처리부(307)를 포함할 수 있다. 데이터 복원 장치(300)는 결정부(도시하지 않음)를 더 포함할 수 있다.3, the data restoration apparatus 300 according to the embodiment of the present invention may include a receiving unit 301, an extracting unit 303, a group buffer 305, and a restoration processing unit 307. The data restoration apparatus 300 may further include a determination unit (not shown).

수신부(301)는 데이터 압축 장치로부터 데이터를 수신할 수 있다.The receiving section 301 can receive data from the data compression apparatus.

추출부(303)는 상기 데이터 중 적어도 일부의 출력 데이터를, 상기 결정부에 의해, 결정된 그룹 사이즈 또는 설정된 그룹 사이즈에 따라 그룹핑하고, 그룹핑된 출력 데이터로부터, 공통 지수를 추출할 수 있다.The extracting unit 303 may group the output data of at least a part of the data according to the determined group size or the set group size by the determining unit and extract a common index from the grouped output data.

여기서, 출력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 데이터 압축 장치에서 출력되는 단위 수의 비트를 포함하는 데이터로서, 예컨대, 10(0∼9) 비트일 수 있다. 또한, 출력 데이터는 부호 비트를 적어도 포함하는 다수의 비트를 나열하여 구성될 수 있다.Here, the output data may be data including a set number of bits, or data including a unit number of bits output from the data compression apparatus, for example, 10 (0 to 9) bits. Further, the output data may be configured by arranging a plurality of bits including at least a sign bit.

상기 그룹 사이즈는 상기 결정부에 의해, 상기 출력 데이터의 비트 수를 고려하여 결정되거나, 또는 데이터 압축 장치에서 결정된 그룹 사이즈와 동일하게 설정될 수 있다.The group size may be determined by the determination unit in consideration of the number of bits of the output data or may be set to be equal to the group size determined in the data compression apparatus.

추출부(303)는 예컨대, 설정된 그룹 사이즈가 3일 경우, 3개의 출력 데이터를 그룹핑하여 그룹을 생성할 수 있다.For example, when the set group size is 3, the extraction unit 303 may group the three output data to generate a group.

이때, 추출부(303)는 그룹으로 그룹핑된 출력 데이터 각각으로부터 설정된 위치의 특정의 비트를 검출하고, 상기 검출된 비트를, 상기 출력 데이터의 위치순서에 따라 나열하여, 공통 지수를 생성 함으로써, 상기 공통 지수를 추출할 수 있다. 예컨대, 추출부(303)는 제1 그룹으로 그룹핑된 제1,2,3 출력 데이터 각각으로부터 특정의 비트로서, 두번째 위치의 비트 '0', '1', '1'이 검출되면, 해당 출력 데이터의 위치순서에 따라, 검출된 '0', '1', '1'를 나열하여, '011'의 공통 지수(GE)를 추출할 수 있다. 즉, 데이터 복원 장치는 제1 그룹으로 그룹핑된 제1,2,3 출력 데이터에 관한 제1 공통 지수로서, '3'('011'의 십진화)을 추출할 수 있다.At this time, the extracting unit 303 detects a specific bit of the set position from each of the output data grouped into groups, arranges the detected bits according to the order of the position of the output data, and generates a common index, The common index can be extracted. For example, when the bits '0', '1', and '1' of the second position are detected as specific bits from the first, second, and third output data grouped into the first group, The common index (GE) of '011' can be extracted by arranging the detected '0', '1', and '1' according to the order of data positions. That is, the data decompression apparatus can extract '3' (decimation of '011') as the first common index related to the first, second, and third output data grouped into the first group.

상기 결정부는 상기 출력 데이터의 비트 수를 고려하여, 데이터에 대한 그룹 사이즈가 결정될 경우, 그룹 버퍼(305)에 제공할 수 있다.The determination unit may provide the group buffer 305 with the group size when the group size of the data is determined in consideration of the number of bits of the output data.

그룹 버퍼(305)는 그룹핑된 출력 데이터를 보관할 수 있다. 이때, 그룹 버퍼(305)는 상기 결정부에 의해, 결정된 그룹 사이즈 또는 설정된 그룹 사이즈 만큼의 출력 데이터를 버퍼링할 수 있다.The group buffer 305 may store the grouped output data. At this time, the group buffer 305 can buffer output data corresponding to the determined group size or the set group size by the determination unit.

한편, 다른 일례로서, 추출부(303) 및 그룹 버퍼(305)는 하나로 통합되어, 버퍼 기능과 공통 지수 추출 기능을 동시에 처리할 수 있다.On the other hand, as another example, the extracting unit 303 and the group buffer 305 may be integrated into a single unit to simultaneously process the buffer function and the common index extracting function.

복원 처리부(307)는 그룹핑된 출력 데이터 각각에 대해, 상기 추출된 공통 지수 만큼 임의의 방향으로 시프트하여, 하향 스케일을 수행할 수 있다. 이때, 복원 처리부(307)는 상기 출력 데이터 각각에 대해, 상기 출력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 반대 방향으로, 상기 공통 지수 만큼 시프트하여 하향 스케일을 수행하고, 상기 하향 스케일링이 수행된 출력 데이터에 상기 최상위 비트를 삽입 함으로써, 데이터를 복원할 수 있다.The restoration processing unit 307 may perform a downward scale on each of the grouped output data by shifting in an arbitrary direction by the extracted common index. At this time, the restoration processor 307 performs a downward scale on each of the output data by shifting a plurality of bits except the most significant bit in the output data by the common index in a direction opposite to the position of the most significant bit, By inserting the most significant bit into the output data on which downscaling has been performed, the data can be restored.

예컨대, 복원 처리부(307)는 제1 그룹으로 그룹핑된 제1,2,3 출력 데이터에 관한 제1 공통 지수가 '3'일 경우, 제1 출력 데이터 내 최상위 비트(0비트)를 부호 비트('0')로서, 확인하고, 상기 최상위 비트를 제외한 다수의 비트(1∼9비트)를, '3' 만큼 상기 최상위 비트가 위치하는 반대 방향으로 시프트하여, 하향 스케일을 수행할 수 있다. 이때, 복원 처리부(307)는 상기 확인된 부호 비트('0')를 상기 하향 스케일링이 수행된 출력 데이터에 삽입(즉, 3개의 '0' 삽입)할 수 있다.For example, when the first common exponent for the first, second, and third output data grouped as the first group is '3', the restoration processing unit 307 sets the most significant bit (0 bit) in the first output data as a sign bit '0'), and can perform a downward scale by shifting a number of bits (1 to 9 bits) excluding the most significant bit to a direction opposite to the position of the most significant bit by '3'. At this time, the reconstruction processing unit 307 inserts the identified sign bit ('0') into the downscaled output data (i.e., inserts three '0' s).

또한, 복원 처리부(307)는 제2 출력 데이터 및 제3 출력 데이터에 대해서도, '3' 만큼 상기 최상위 비트가 위치하는 반대 방향으로 시프트하여, 하향 스케일을 수행하고, 부호 비트('1') 및 부호 비트('0')를 각각 삽입할 수 있다.Also, the restoration processor 307 shifts the second output data and the third output data in the direction opposite to the position of the most significant bit by '3' to perform downward scaling, and outputs the sign bits '1' And a sign bit ('0'), respectively.

도 4는 본 발명의 일실시예에 따른 데이터 압축 장치에서의 데이터 압축에 대한 일례를 설명하기 위한 도면이다.4 is a view for explaining an example of data compression in the data compression apparatus according to an embodiment of the present invention.

도 4를 참조하면, 데이터 압축 장치는 데이터 중 적어도 일부의 입력 데이터를 그룹핑하고, 그룹핑된 입력 데이터에 관한 공통 지수를 획득한 후, 공통 지수를 이용하여, 입력 데이터를 압축할 수 있다.Referring to FIG. 4, the data compression apparatus may group input data of at least some of the data, obtain a common index related to the grouped input data, and compress the input data using a common index.

ⅰ) 공통 지수 획득I) Acquisition of common index

먼저, 데이터 압축 장치는 그룹 사이즈를 고려하여, 데이터 중 적어도 일부의 입력 데이터를 그룹핑할 수 있다. 여기서, 입력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 입력되는 단위 수의 비트를 포함하는 데이터일 수 있으며, 예컨대, 18(0∼17) 비트일 수 있다.First, the data compression apparatus can group input data of at least a part of data in consideration of the group size. Here, the input data may be data including a predetermined number of bits or data including bits of an input unit number, for example, 18 (0-17) bits.

데이터 압축 장치는 예컨대, 그룹 사이즈가 3으로 결정될 경우, 3개의 입력 데이터를 그룹핑하여 그룹을 생성할 수 있다. 즉, 데이터 압축 장치는 제1,2,3 입력 데이터를 그룹핑하여, 제1 그룹(401)을 생성하고, 제4,5,6 입력 데이터를 그룹핑하여, 제2 그룹(403)을 생성할 수 있다.For example, when the group size is determined to be 3, the data compression apparatus can group three input data to generate a group. That is, the data compression apparatus may group the first, second, and third input data to generate the first group 401, and group the fourth, fifth, and sixth input data to generate the second group 403 have.

이후, 데이터 압축 장치는 그룹핑된 입력 데이터로부터, 그룹핑된 입력 데이터에 관한 공통 지수를 획득할 수 있다. 이때, 데이터 압축 장치는 상기 입력 데이터 각각에서, 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트하여, NCB로서 확인할 수 있다. 데이터 압축 장치는 상기 각각의 NCB 중 최소값을, LSI로서 지정하고, 상기 지정된 LSI를 공통 지수로서 선택할 수 있다.Thereafter, the data compression apparatus can obtain, from the grouped input data, a common index related to the grouped input data. At this time, in each of the input data, the data compression device counts the number of consecutive bits that are the same as the sign bit, based on the sign bit, and can confirm the count as an NCB. The data compression apparatus can designate the minimum value among the respective NCBs as an LSI and select the designated LSI as a common index.

예컨대, 데이터 압축 장치는 제1 그룹(401)으로 그룹핑된 제1,2,3 입력 데이터 각각으로부터 NCB를 확인할 수 있다. 구체적으로, 데이터 압축 장치는 제1 입력 데이터 내 다수의 비트 중, 최상위 비트인 '0'(405)을, 상기 부호 비트로서 확인하고, 상기 부호 비트를 기준으로, '0'이 연속적으로 나열되는 비트의 개수 '4'를 카운트하여, 제1 NCB로서 확인할 수 있다. 또한, 데이터 압축 장치는 제2 입력 데이터 내 다수의 비트 중, 최상위 비트인 '1'(407)을, 상기 부호 비트로서 확인하고, 상기 부호 비트를 기준으로, '1'이 연속적으로 나열되는 비트의 개수 '3'을 카운트하여, 제2 NCB로서 확인할 수 있다. 또한, 데이터 압축 장치는 제3 입력 데이터 내 다수의 비트 중, 최상위 비트인 '0'(409)을, 상기 부호 비트로서 확인하고, 상기 부호 비트를 기준으로, '0'이 연속적으로 나열되는 비트의 개수 '3'을 카운트하여, 제3 NCB로서 확인할 수 있다.For example, the data compression device can identify the NCB from each of the first, second, and third input data grouped into the first group 401. Specifically, the data compression device checks the most significant bit '0' (405) among the plurality of bits in the first input data as the sign bit, and '0' is consecutively listed on the basis of the sign bit The number of bits '4' can be counted and confirmed as the first NCB. In addition, the data compression apparatus identifies the most significant bit '1' (407) among the plurality of bits in the second input data as the sign bit, and based on the sign bit, Quot; 3 " of the first NCB to be counted as the second NCB. In addition, the data compression apparatus confirms the most significant bit '0' (409) out of a plurality of bits in the third input data as the sign bit, and based on the sign bit, Quot; 3 " of the first NCB to be counted as the third NCB.

데이터 압축 장치는 제1,2,3 NCB('4', '3', '3') 중 최소값인 '3'을, LSI로서 지정하고, 상기 지정된 LSI를, 제1 그룹(401)으로 그룹핑된 제1,2,3 입력 데이터에 관한 제1 공통 지수('3')로서 선택할 수 있다.The data compression apparatus designates the minimum value of '3' among the first, second and third NCBs ('4', '3' and '3') as an LSI and groups the designated LSI into the first group 401 (&Apos; 3 ') for the first, second, and third input data.

또한, 데이터 압축 장치는 상기 제1 공통 지수를 획득하는 방법과 마찬가지로, 제2 그룹(403)으로 그룹핑된 제4,5,6 입력 데이터에 관한 제2 공통 지수를 획득할 수 있다. 이때, 데이터 압축 장치는 제4,5,6 입력 데이터로부터 각각 제4,5,6 NCB로서, '4', '5', '4'를 확인할 수 있으며, 제4,5,6 NCB 중 최소값인 '4'를, LSI로서 지정하고, 상기 지정된 LSI를, 제2 그룹(403)으로 그룹핑된 제4,5,6 입력 데이터에 관한 제2 공통 지수('4')로서 선택할 수 있다.Also, the data compression device may obtain a second common index for the fourth, fifth, and sixth input data grouped into the second group 403, as well as the method for obtaining the first common index. At this time, the data compression apparatus can identify '4', '5', and '4' as the fourth, fifth and sixth NCBs from the fourth, fifth and sixth input data, 4 'as the LSI, and the designated LSI can be selected as the second common index (' 4 ') relating to the fourth, fifth, and sixth input data grouped into the second group 403.

ⅱ) 상향 스케일링 수행Ii) Perform upscaling

데이터 압축 장치는 그룹핑된 입력 데이터 각각에 대해, 상기 입력 데이터 내 최상위 비트(MSB)를 제외한 다수의 비트를, 그룹핑된 입력 데이터에 관한 공통 지수(GE) 만큼 최상위 비트가 위치하는 방향으로 시프트하여, 상향 스케일링을 수행할 수 있다. 이때, 데이터 압축 장치는 상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시킬 수 있다.The data compression apparatus shifts a plurality of bits of the input data except for the most significant bit (MSB) in a direction in which the most significant bit is located by the common index (GE) for the grouped input data, Upscaling can be performed. At this time, the data compression apparatus may select bits corresponding to the order of the input data among the bits expressed by binarizing the common exponent, and may include the bits in the input data in which the upward scaling is performed.

예컨대, 데이터 압축 장치는 제1 그룹(401)으로 그룹핑된 제1,2,3 입력 데이터에 관한 제1 공통 지수가 '3'일 경우, 제1 입력 데이터 내 다수의 비트 중, 최상위 비트(0비트)(405)를 제외한 다수의 비트(1∼17비트)를, '3' 만큼 최상위 비트가 위치하는 방향으로 시프트하여, 상향 스케일링을 수행할 수 있다. 이때, 데이터 압축 장치는 제1 공통 지수 '3'임에 따라, 상기 공통 지수를 이진화하여 표현한 비트들, '011' 중 제1 입력 데이터의 위치순서(즉, 첫번째)에 대응하는 비트, '0'을 선정하여, 제1 입력 데이터에 포함시킬 수 있다. 이때, 데이터 압축 장치는 제1 입력 데이터의 최상위 비트 다음 위치에, 상기 선정된 '0'(411)을 포함시킬 수 있으나, 이에 한정되지 않고, 다른 위치에 포함시킬 수도 있다.For example, when the first common index of the first, second, and third input data grouped by the first group 401 is '3', the data compression apparatus extracts the most significant bit (0) of the plurality of bits in the first input data, (Bits 1 to 17) except for the bit (s) 405 in the direction in which the most significant bit is located by '3' to perform up scaling. At this time, the data compressing apparatus converts the bits represented by binarizing the common exponent according to the first common exponent '3', a bit corresponding to the position order (i.e., first) of the first input data among ' 0 11' 0 'can be selected and included in the first input data. At this time, the data compression apparatus may include the selected ' 0 ' 411 at the position next to the most significant bit of the first input data, but it may be included at another position.

또한, 데이터 압축 장치는 제1 그룹(401) 내 제2, 3 입력 데이터 각각에 대해서도, 다수의 비트 중 최상위 비트(0비트)(407, 409)를 제외한 다수의 비트(1∼17비트)를, '3' 만큼 최상위 비트가 위치하는 방향으로 시프트하여, 상향 스케일링을 수행할 수 있다. 이때, 데이터 압축 장치는 상기 공통 지수를 이진화하여 표현한 비트들, '011' 중 제2 입력 데이터의 위치순서(즉, 두번째)에 대응하는 비트, '1'을 선정하고, 제2 입력 데이터 내 최상위 비트 다음에 나열되도록, 상기 선정된 '1'(413)를 포함시킬 수 있다. 또한, 데이터 압축 장치는 상기 공통 지수를 이진화하여 표현한 비트들, '011' 중 제3 입력 데이터의 위치순서(즉, 세번째)에 대응하는 비트, '1'을 선정하고, 제3 입력 데이터 내 최상위 비트 다음에 나열되도록, 상기 선정된 '1'(415)를 포함시킬 수 있다.The data compression apparatus also stores a plurality of bits (1 to 17 bits) excluding the most significant bits (0 bits) 407 and 409 among the plurality of bits for each of the second and third input data in the first group 401 , &Quot; 3 ", and perform up scaling. At this time, the data compression apparatus selects the bit ' 1 ' corresponding to the position order (that is, the second position) of the second input data among the bits represented by the binary exponent of the common exponent, '0 1 1' 1 " 413 so as to be listed after the most significant bit of " 1 " Further, the data compression apparatus selects a bit, ' 1 ' corresponding to the position order (i.e., the third position) of the third input data among bits represented by binarizing the common exponent, '01 1 ' The selected ' 1 ' 415 may be included to be listed after the most significant bit.

데이터 압축 장치는 공통 지수를 이용하여, 각 입력 데이터(예컨대, 18비트)에 상향 스케일링을 수행하고, 공통 지수를 포함시켜, 최종적으로 압축한 입력 데이터를 출력 데이터(예컨대, 10비트)로서, 데이터 복원 장치에 전송할 수 있다.The data compression apparatus performs upward scaling on each input data (e.g., 18 bits) using the common exponent, and includes the common exponent and outputs the finally compressed input data as output data (for example, 10 bits) To the restoration device.

도 5는 본 발명의 일실시예에 따른 데이터 복원 장치에서의 데이터 복원에 대한 일례를 설명하기 위한 도면이다.5 is a diagram for explaining an example of data restoration in a data restoration apparatus according to an embodiment of the present invention.

도 5를 참조하면, 데이터 복원 장치는 데이터 중 적어도 일부의 출력 데이터를 그룹핑하고, 그룹핑된 출력 데이터에 관한 공통 지수를 추출한 후, 공통 지수를 이용하여, 출력 데이터 복원할 수 있다.Referring to FIG. 5, the data decompression apparatus may group output data of at least a part of data, extract a common index related to the grouped output data, and restore output data using the common index.

ⅰ) 공통 지수 추출I) Extraction of common exponent

먼저, 데이터 복원 장치는 데이터 압축 장치로부터 데이터가 수신되면, 수신된 데이터 중 적어도 일부의 출력 데이터를, 설정된 그룹 사이즈에 따라 그룹핑할 수 있다. 여기서, 출력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 데이터 압축 장치에서 출력되는 단위 수의 비트를 포함하는 데이터로서, 예컨대, 10(0∼9) 비트일 수 있다.First, when data is received from the data compression apparatus, the data decompression apparatus can group output data of at least a part of the received data according to the set group size. Here, the output data may be data including a set number of bits, or data including a unit number of bits output from the data compression apparatus, for example, 10 (0 to 9) bits.

데이터 복원 장치는 설정된 그룹 사이즈가 3일 경우, 3개의 출력 데이터를 그룹핑하여 그룹을 생성할 수 있다. 즉, 데이터 복원 장치는 제1,2,3 출력 데이터를 그룹핑하여, 제1 그룹(501)을 생성하고, 제4,5,6 출력 데이터를 그룹핑하여, 제2 그룹(503)을 생성할 수 있다.If the set group size is 3, the data restoration device can group the three output data to create a group. That is, the data decompression apparatus may group the first, second, and third output data to generate the first group 501, and group the fourth, fifth, and sixth output data to generate the second group 503 have.

이후, 데이터 복원 장치는 그룹핑된 출력 데이터로부터, 그룹핑된 입력 데이터에 관한 공통 지수를 추출할 수 있다. 이때, 데이터 복원 장치는 상기 출력 데이터 각각으로부터 설정된 위치의 특정의 비트를 검출하고, 상기 검출된 비트를, 상기 출력 데이터의 위치순서에 따라 나열하여, 공통 지수를 생성 함으로써, 상기 공통 지수를 추출할 수 있다.Thereafter, the data decompression apparatus can extract, from the grouped output data, a common index related to the grouped input data. At this time, the data decompression apparatus extracts the common index by detecting a specific bit of the set position from each of the output data, arranging the detected bits in the order of the position of the output data, and generating a common index .

예컨대, 데이터 복원 장치는 제1 그룹(501)으로 그룹핑된 제1,2,3 출력 데이터 각각으로부터 두번째 위치의 비트인 '0'(505), '1'(507), '1'(509)를 검출하고, 해당 출력 데이터의 위치순서에 따라, 검출된 '0'(505), '1'(507), '1'(509)를 나열하여, '011'의 공통 지수(GE)를 추출할 수 있다. 즉, 데이터 복원 장치는 제1 그룹(501)으로 그룹핑된 제1,2,3 출력 데이터에 관한 제1 공통 지수로서, '3'('011'의 십진화)을 추출할 수 있다.For example, the data decompression apparatus may extract '0' (505), '1' (507), '1' (509) which are bits of the second position from the first, second and third output data grouped in the first group (501) (505), '1' (507), and '1' (509) are listed in accordance with the positional order of the output data to extract the common index (GE) of '011' can do. That is, the data decompression apparatus can extract '3' (decimation of '011') as the first common index related to the first, second, and third output data grouped into the first group 501.

ⅱ) 하향 스케일링 수행Ii) Perform downward scaling

데이터 복원 장치는 그룹핑된 출력 데이터 각각에 대해, 상기 출력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 반대 방향으로, 상기 공통 지수 만큼 시프트하여 하향 스케일을 수행하고, 상기 하향 스케일링이 수행된 출력 데이터에 상기 최상위 비트를 삽입할 수 있다.The data decompression device performs, for each of the grouped output data, a plurality of bits excluding the most significant bit in the output data by shifting the common bits in the opposite direction in which the most significant bit is located, to perform a downward scale, The most significant bit can be inserted into the output data.

예컨대, 데이터 복원 장치는 제1 그룹(501)으로 그룹핑된 제1,2,3 출력 데이터에 관한 제1 공통 지수가 '3'일 경우, 제1 출력 데이터 내 최상위 비트(0비트)(511)를 부호 비트('0')로서, 확인하고, 제1 출력 데이터 내 최상위 비트를 제외한 다수의 비트(1∼9비트)를, '3' 만큼 상기 최상위 비트가 위치하는 반대 방향으로 시프트하여, 하향 스케일을 수행하고, 상기 확인된 부호 비트('0')를 상기 하향 스케일링이 수행된 제1 출력 데이터에 삽입(즉, 3개의 '0' 삽입)할 수 있다.For example, when the first common exponent for the first, second, and third output data grouped by the first group 501 is '3', the data decompression apparatus stores the most significant bit (0 bit) 511 in the first output data, As a sign bit ('0'), shifts a number of bits (1 to 9 bits) excluding the most significant bit in the first output data to the opposite direction in which the most significant bit is located by '3' Scale, and inserts the identified sign bit ('0') into the first output data subjected to the down-scaling (that is, inserts three '0' s).

데이터 복원 장치는 제1 그룹(501) 내 제2 출력 데이터 내 최상위 비트(0비트)(513)를 부호 비트('1')로서, 확인하고, 제2 출력 데이터 내 최상위 비트를 제외한 다수의 비트(1∼9비트)를, '3' 만큼 상기 최상위 비트가 위치하는 반대 방향으로 시프트하여, 하향 스케일을 수행하고, 상기 확인된 부호 비트('1')를 상기 하향 스케일링이 수행된 제2 출력 데이터에 삽입(즉, 3개의 '1' 삽입)할 수 있다.The data restoration apparatus confirms the most significant bit (0 bit) 513 in the second output data in the first group 501 as a sign bit ('1'), and detects a plurality of bits excluding the most significant bit in the second output data (1 to 9 bits) is shifted in the opposite direction in which the most significant bit is located by '3' to perform a downward scale, and outputs the identified sign bit ('1') to the second output (I.e., inserts three '1' s) into the data.

또한, 데이터 복원 장치는 제1 그룹(501) 내 제3 출력 데이터에 대해서도, 제3 출력 데이터 내 최상위 비트(0비트)(515)를 부호 비트('0')로서, 확인하고, 상기 최상위 비트를 제외한 다수의 비트(1∼9비트)를, '3' 만큼 상기 최상위 비트가 위치하는 반대 방향으로 시프트하여, 하향 스케일을 수행하고, 상기 확인된 부호 비트('0')를 상기 하향 스케일링이 수행된 제3 출력 데이터에 삽입(즉, 3개의 '0' 삽입)할 수 있다.Also, the data restoration apparatus confirms the third output data in the first group 501 with the most significant bit (0 bit) 515 in the third output data as a sign bit ('0'), (1 to 9 bits) in the opposite direction in which the most significant bit is located by '3' to perform a downward scale and to output the identified sign bit ('0') as the downward scaling (I.e., inserts three '0' s) into the third output data.

데이터 복원 장치는 공통 지수를 이용하여, 각 출력 데이터(예컨대, 10비트)에 하향 스케일을 수행 함으로써, 데이터를 복원하여, 데이터 압축 장치에서 제공하고자 하는 데이터를 획득할 수 있다.The data decompression apparatus can perform a downward scale on each output data (for example, 10 bits) using the common exponent, thereby recovering the data and obtaining data to be provided by the data compression apparatus.

도 6은 본 발명의 실시예에 따른 데이터 압축 장치에 의한 데이터 압축시, EVM 성능에 대한 일례를 도시한 도면이다.FIG. 6 is a diagram illustrating an example of EVM performance at the time of data compression by the data compression apparatus according to the embodiment of the present invention.

도 6을 참조하면, 데이터 압축 장치에 적용되는 그룹부동소수점방식은 고정소수점에 의한 절사(Truncation) 방식 및 블록스케일링(BFP: Block Floating Point)에 의한 방식 보다 EVM 성능열화(Error Vector Magnitude degradation)가 낮은 특성이 있다. 예컨대, 10비트로 양자화할 경우, 입력신호의 EVM이 1%일 때, 그룹부동소수점방식은 고정소수점방식에 비교하여, 7dB 이상 낮고, 블록스케일링방식에 비교하여, 2dB 이상 낮은 성능열화 특성을 가진다.Referring to FIG. 6, the group floating-point method applied to the data compression apparatus has an EVM performance degradation (Error Vector Magnitude degradation) rather than a fixed-point truncation scheme and a BFP (Block Floating Point) scheme There are low characteristics. For example, when the EVM of the input signal is 1%, the group floating-point method has a performance degradation of 7 dB or more lower than that of the fixed-point method and a performance degradation of 2 dB or less as compared with the block scaling method.

도 7은 본 발명의 일실시예에 따른 데이터 압축 방법을 나타내는 흐름도이다.7 is a flowchart illustrating a data compression method according to an embodiment of the present invention.

도 7을 참조하면, 단계(701)에서, 데이터 압축 장치는 데이터에 대한 그룹 사이즈를 결정할 수 있다.Referring to FIG. 7, in step 701, the data compression device may determine the group size for the data.

구체적으로, 데이터 압축 장치는 상기 데이터 중 입력 데이터의 비트 수 및 설정된 출력 비트 수를 고려하여, 스케일링 지수를 결정하고, 상기 결정된 스케일링 지수에 기초하여, 상기 그룹 사이즈를 결정할 수 있다. 이때, 데이터 압축 장치는 상기 스케일링 지수와 상기 그룹 사이즈에 기초하여, 스케일링 범위를 결정 함으로써, 공통 지수 선택시, 기준 데이터로서 활용할 수 있게 한다.Specifically, the data compression apparatus may determine the scaling index in consideration of the number of bits of the input data and the set number of output bits of the data, and determine the group size based on the determined scaling index. At this time, the data compression apparatus determines the scaling range based on the scaling index and the group size, thereby making it possible to utilize it as reference data when selecting the common index.

단계(703)에서, 데이터 압축 장치는 상기 결정된 그룹 사이즈를 고려하여, 데이터 중 입력 데이터를 그룹핑하고, 입력 데이터로부터 NCB 확인할 수 있다.In step 703, the data compression device may group the input data in the data, taking into account the determined group size, and NCB from the input data.

구체적으로, 데이터 압축 장치는 그룹핑된 상기 입력 데이터 각각에서, 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트하여, NCB로서 확인할 수 있다. 이때, 데이터 압축 장치는 상기 입력 데이터 내 최상위 비트를 상기 부호 비트로서, 확인하고, 상기 부호 비트가 '1'일 경우, 상기 부호 비트를 기준으로, '1'이 연속적으로 나열되는 비트의 개수를 카운트할 수 있다. 또한, 데이터 압축 장치는 상기 부호 비트가 '0'일 경우, 상기 부호 비트를 기준으로, '0'이 연속적으로 나열되는 비트의 개수를 카운트할 수 있다.Specifically, the data compression apparatus counts the number of consecutive bits, which are the same as the sign bit, on the basis of the sign bit in each of the grouped input data, and can confirm the count as an NCB. At this time, the data compression device checks the most significant bit in the input data as the sign bit, and when the sign bit is '1', the number of bits in which '1' You can count. In addition, when the sign bit is '0', the data compression apparatus can count the number of consecutive bits of '0' based on the sign bit.

단계(705)에서, 데이터 압축 장치는 NCB로부터 공통 지수 획득할 수 있다.In step 705, the data compression device may obtain a common exponent from the NCB.

데이터 압축 장치는 그룹핑된 입력 데이터 각각에서 확인되는 NCB 중 최소값을, LSI로서 지정하고, 상기 지정된 LSI를 상기 공통 지수로서 선택할 수 있다. 이때, 데이터 압축 장치는 상기 LSI가 스케일링 범위에 포함되지 않는 경우, 상기 스케일링 범위에서의 최대값으로 변경할 수 있다.The data compression apparatus can designate the minimum value among the NCBs identified in each of the grouped input data as an LSI and select the designated LSI as the common index. At this time, if the LSI is not included in the scaling range, the data compression apparatus can change the maximum value in the scaling range.

단계(707)에서, 데이터 압축 장치는 그룹핑된 입력 데이터에 관한 공통 지수를 이용하여, 상기 그룹핑된 입력 데이터 각각에 대해, 상향 스케일링을 수행할 수 있다. 이때, 데이터 압축 장치는 그룹핑된 입력 데이터 각각에 대해, 공통 지수 만큼 임의의 방향으로 시프트하여, 상향 스케일링을 수행하고, 상기 상향 스케일링이 수행된 입력 데이터에, 상기 공통 지수를 포함시켜, 데이터 복원 장치에 전송할 수 있다.In step 707, the data compression device may perform up scaling on each of the grouped input data using a common exponent for the grouped input data. At this time, the data compression apparatus performs upward scaling on each of the grouped input data by shifting in an arbitrary direction by a common exponent, and includes the common exponent in the input data on which the upward scaling has been performed, Lt; / RTI >

구체적으로, 데이터 압축 장치는 그룹핑된 입력 데이터 각각에 대해, 상기 입력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 공통 지수 만큼 최상위 비트가 위치하는 방향으로 시프트하여, 상향 스케일링을 수행하고, 상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시킬 수 있다. 이후, 데이터 압축 장치는 상기 공통 지수가 포함된 입력 데이터를, 상기 출력 비트 수에 따라, 양자화하여, 출력 데이터로서 상기 데이터 복원 장치에 전송할 수 있다.Specifically, for each of the grouped input data, the data compression apparatus performs upward scaling by shifting a plurality of bits excluding the most significant bit in the input data in a direction in which the most significant bit is located by the common exponent, The bit corresponding to the positional order of the input data may be selected from the bits expressed by binarizing the exponent and included in the input data in which the upward scaling is performed. Thereafter, the data compression apparatus may quantize the input data including the common index according to the number of output bits, and transmit the quantized data as output data to the data decompression apparatus.

도 8은 본 발명의 일실시예에 따른 데이터 복원 방법을 나타내는 흐름도이다.8 is a flowchart illustrating a data restoration method according to an embodiment of the present invention.

도 8을 참조하면, 단계(801)에서, 데이터 복원 장치는 데이터 압축 장치로부터 수신된 데이터 중 적어도 일부의 출력 데이터를, 설정된 그룹 사이즈에 따라 그룹핑하고, 그룹핑된 출력 데이터로부터, 공통 지수를 추출할 수 있다. 이때, 데이터 복원 장치는 그룹핑된 출력 데이터 각각으로부터 설정된 위치의 특정의 비트를 검출하고, 상기 검출된 비트를, 상기 출력 데이터의 위치순서에 따라 나열하여, 상기 공통 지수를 추출할 수 있다.Referring to FIG. 8, in step 801, the data decompression apparatus groups at least a part of the output data of the data received from the data compression apparatus according to the set group size, and extracts a common index from the grouped output data . At this time, the data decompression apparatus may detect a specific bit of the set position from each of the grouped output data, and extract the common index by arranging the detected bits in the order of the position of the output data.

단계(803)에서, 데이터 복원 장치는 그룹핑된 출력 데이터에 관한 공통 지수를 이용하여, 그룹핑된 출력 데이터 각각에 대해, 하향 스케일링을 수행할 수 있다. 이때, 데이터 복원 장치는 상기 출력 데이터 내 최상위 비트를 부호 비트로서, 확인하고, 상기 최상위 비트를 제외한 다수의 비트를, 최상의 비트가 위치하는 반대 방향으로 상기 공통 지수 만큼 시프트하여, 하향 스케일을 수행하고, 상기 하향 스케일링이 수행된 출력 데이터에 상기 확인된 부호 비트를 삽입하여, 하향 스케일을 수행할 수 있다.In step 803, the data decompression device may perform downward scaling for each of the grouped output data, using a common exponent for the grouped output data. At this time, the data restoration apparatus confirms the most significant bit in the output data as a sign bit, shifts a plurality of bits except for the most significant bit by the common index in a direction opposite to that in which the most significant bit is located, performs a downward scale , And downward scaling can be performed by inserting the identified sign bit into the output data on which downscaling has been performed.

본 발명의 실시예는 입력 데이터의 비트 수와 출력 데이터의 비트 수에 따라, 유연하게 결정된 그룹 사이즈에 기초하여, 입력 데이터를 그룹핑하고, 그룹핑된 입력 데이터 별로, 공통 지수를 이용하여 상향 스케일링을 수행 함으로써, 고속의 블록메모리 없이도, 데이터를 압축할 수 있게 한다.In the embodiment of the present invention, input data is grouped based on a flexible group size determined according to the number of bits of input data and the number of bits of output data, and upward scaling is performed using a common index for each grouped input data Thereby making it possible to compress data without using a high-speed block memory.

본 발명의 실시예는 상향 스케일링된 입력 데이터에, 상향 스케일링에 이용된 공통 지수를 포함시켜, 데이터 복원 장치에 전송 함으로써, 압축에 사용된 지수에 대한 별도의 처리 과정 또는 별도의 전송 채널이 필요로 하지 않음에 따라, 압축 및 복원에 대한 복잡도를 감소시키고, 압축 및 복원을 용이하게 한다.The embodiment of the present invention includes a common index used for up scaling and transmits the upward scaled input data to the data decompression apparatus so that a separate process for the index used for compression or a separate transmission channel is required Thus reducing complexity for compression and reconstruction and facilitating compression and reconstruction.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA) A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 저장 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored in one or more computer readable storage media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 저장될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 저장되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 저장 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광저장 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program instruction that may be executed through various computer means and stored in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions stored on the medium may be those specially designed and constructed for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable storage media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magneto-optical media such as floppy disks; Includes hardware devices specifically configured to store and execute program instructions such as magneto-optical media and ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.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. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

100: 데이터 압축 장치
101: 데이터 압축 장치 103: 데이터 복원 장치
100: Data compression device
101: Data compression device 103: Data recovery device

Claims (18)

데이터에 대한 그룹 사이즈를 결정하는 결정부;
상기 결정된 그룹 사이즈를 고려하여, 상기 데이터 중 적어도 일부의 입력 데이터를 그룹핑하고, 상기 입력 데이터로부터, 공통 지수(GE: Group Exponent)를 획득하는 획득부; 및
상기 입력 데이터 각각에 대해, 상기 공통 지수 만큼 임의의 방향으로 시프트하여, 상향 스케일링을 수행하고, 상기 상향 스케일링이 수행된 입력 데이터를 데이터 복원 장치에 전송하는 압축 처리부
를 포함하는 데이터 압축 장치.
A determination unit for determining a group size for data;
An acquiring unit for grouping input data of at least a part of the data in consideration of the determined group size and acquiring a common exponent (GE) from the input data; And
For each of the input data, shifting in any direction by the common exponent, performing up scaling, and transmitting the input data on which the upward scaling has been performed to the data decompression apparatus
.
제1항에 있어서,
상기 입력 데이터는 부호 비트를 적어도 포함하는 다수의 비트를 나열하여 구성되고,
상기 획득부는,
상기 입력 데이터 각각에서, 상기 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트(count)하여, NCB(Number of Continuous Bits)로서 확인하는 카운트부; 및
상기 각각의 NCB 중 최소값을, LSI(Least Scaling Index)로서 지정하고, 상기 지정된 LSI를 상기 공통 지수로서 선택하는 선택부
를 포함하는 데이터 압축 장치.
The method according to claim 1,
Wherein the input data is constructed by arranging a plurality of bits including at least a sign bit,
Wherein the obtaining unit comprises:
A counting unit counting the number of consecutive bits that are the same as the sign bit and based on the sign bit in each of the input data, as a number of continuous bits (NCB); And
Designating a minimum value among the respective NCBs as an LSI (Least Scaling Index), and selecting the designated LSI as the common index;
.
제2항에 있어서,
상기 카운트부는,
상기 다수의 비트 중, 최상위 비트를 상기 부호 비트로서, 확인하고,
상기 부호 비트가 '1'일 경우, 상기 부호 비트를 기준으로, '1'이 연속적으로 나열되는 비트의 개수를 카운트하고,
상기 부호 비트가 '0'일 경우, 상기 부호 비트를 기준으로, '0'이 연속적으로 나열되는 비트의 개수를 카운트하는
데이터 압축 장치.
3. The method of claim 2,
The counting unit counts,
The most significant bit among the plurality of bits is identified as the sign bit,
Wherein when the sign bit is '1', the number of bits in which '1' is consecutively arranged is counted based on the sign bit,
When the sign bit is '0', the number of bits in which '0' is consecutively arranged is counted based on the sign bit
Data compression device.
제2항에 있어서,
상기 LSI가 스케일링 범위에 포함되지 않는 경우,
상기 선택부는,
상기 지정된 LSI 대신에, 상기 스케일링 범위에서의 최대값을 상기 공통 지수로서 변경하여 선택하는
데이터 압축 장치.
3. The method of claim 2,
If the LSI is not included in the scaling range,
Wherein the selection unit comprises:
Instead of the designated LSI, the maximum value in the scaling range is changed and selected as the common index
Data compression device.
제4항에 있어서,
상기 결정부는,
상기 입력 데이터의 비트 수 및 설정된 출력 비트 수를 고려하여, 스케일링 지수를 결정하고,
상기 결정된 스케일링 지수와 상기 그룹 사이즈에 기초하여, 상기 스케일링 범위를 결정하는
데이터 압축 장치.
5. The method of claim 4,
Wherein,
Determining a scaling index in consideration of the number of bits of the input data and the set number of output bits,
Determining the scaling range based on the determined scaling exponent and the group size
Data compression device.
제1항에 있어서,
상기 결정부는,
상기 입력 데이터의 비트 수 및 설정된 출력 비트 수를 고려하여, 스케일링 지수를 결정하고,
상기 결정된 스케일링 지수에 기초하여, 상기 그룹 사이즈를 결정하는
데이터 압축 장치.
The method according to claim 1,
Wherein,
Determining a scaling index in consideration of the number of bits of the input data and the set number of output bits,
Based on the determined scaling exponent, the group size is determined
Data compression device.
제1항에 있어서,
상기 압축 처리부는,
상기 상향 스케일링이 수행된 입력 데이터에, 상기 공통 지수를 포함시켜 상기 데이터 복원 장치에 전송하되, 상기 공통 지수가 포함된 입력 데이터를, 설정된 출력 비트 수에 따라, 양자화하여, 출력 데이터로서 상기 데이터 복원 장치에 전송하는
데이터 압축 장치.
The method according to claim 1,
The compression processing unit
The input data including the common exponent is transmitted to the data decompression device, and the input data including the common exponent is quantized according to the set number of output bits, and the data is restored as output data To send to the device
Data compression device.
제1항에 있어서,
상기 압축 처리부는,
상기 입력 데이터 각각에 대해, 상기 입력 데이터 내 최상위 비트를 제외한 상기 다수의 비트를, 상기 최상위 비트가 위치하는 방향으로, 상기 공통 지수 만큼 시프트하여 상기 상향 스케일링을 수행하는
데이터 압축 장치.
The method according to claim 1,
The compression processing unit
For each of the input data, performing the upward scaling by shifting the plurality of bits except the most significant bit in the input data by the common index in a direction in which the most significant bit is located
Data compression device.
제1항에 있어서,
상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시키는
데이터 압축 장치.
The method according to claim 1,
A bit corresponding to the positional order of the input data is selected from the bits expressed by binarizing the common exponent and included in the input data in which the upward scaling is performed
Data compression device.
설정된 그룹 사이즈에 따라, 데이터 압축 장치로부터 수신된 데이터 중 적어도 일부의 출력 데이터를 그룹핑하고, 상기 출력 데이터로부터, 공통 지수를 추출하는 추출부; 및
상기 출력 데이터 각각에 대해, 상기 추출된 공통 지수 만큼 임의의 방향으로 시프트하여, 하향 스케일을 수행하는 복원 처리부
를 포함하는 데이터 복원 장치.
An extraction unit for grouping output data of at least a part of the data received from the data compression apparatus according to the set group size and extracting a common index from the output data; And
For each of the output data, shifts in an arbitrary direction by the extracted common exponent and performs a downward scale,
.
제10항에 있어서,
상기 추출부는,
상기 출력 데이터 각각으로부터 설정된 위치의 특정의 비트를 검출하고, 상기 검출된 비트를, 상기 출력 데이터의 위치순서에 따라 나열하여, 상기 공통 지수를 추출하는
데이터 복원 장치.
11. The method of claim 10,
The extracting unit extracts,
A specific bit at a predetermined position is detected from each of the output data, and the detected bits are arranged in the order of the position of the output data to extract the common index
Data restoration device.
제10항에 있어서,
상기 복원 처리부는,
상기 출력 데이터 각각에 대해, 상기 출력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 반대 방향으로, 상기 공통 지수 만큼 시프트하여 하향 스케일을 수행하고, 상기 하향 스케일링이 수행된 출력 데이터에 상기 최상위 비트를 삽입하는
데이터 복원 장치.
11. The method of claim 10,
The restoration processing unit,
For each of the output data, performing a downscale by shifting a plurality of bits except for the most significant bit in the output data by the common index in a direction opposite to the position of the most significant bit, and outputting the downscaled output data Lt; RTI ID = 0.0 >
Data restoration device.
데이터에 대한 그룹 사이즈를 결정하는 단계;
상기 결정된 그룹 사이즈를 고려하여, 상기 데이터 중 적어도 일부의 입력 데이터를 그룹핑하고, 상기 입력 데이터로부터, 공통 지수를 획득하는 단계; 및
상기 입력 데이터 각각에 대해, 상기 공통 지수 만큼 임의의 방향으로 시프트하여, 상향 스케일링을 수행하고, 상기 상향 스케일링이 수행된 입력 데이터를 데이터 복원 장치에 전송하는 단계
를 포함하는 데이터 압축 방법.
Determining a group size for the data;
Grouping input data of at least some of the data in consideration of the determined group size, and obtaining a common index from the input data; And
Performing upward scaling on each of the input data by shifting in an arbitrary direction by the common exponent and transmitting the input data on which the upward scaling has been performed to the data decompression device
/ RTI >
제13항에 있어서,
상기 입력 데이터는 부호 비트를 적어도 포함하는 다수의 비트를 나열하여 구성되고,
상기 공통 지수를 획득하는 단계는,
상기 입력 데이터 각각에서, 상기 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트하여, NCB로서 확인하는 단계; 및
상기 각각의 NCB 중 최소값을, LSI로서 지정하고, 상기 지정된 LSI를 상기 공통 지수로서 선택하는 단계
를 포함하는 데이터 압축 방법.
14. The method of claim 13,
Wherein the input data is constructed by arranging a plurality of bits including at least a sign bit,
Wherein obtaining the common index comprises:
Counting, in each of the input data, the number of consecutive bits that are the same as the sign bit, based on the sign bit, and confirming the number as an NCB; And
Designating a minimum value among the respective NCBs as an LSI and selecting the designated LSI as the common index
/ RTI >
제13항에 있어서,
상기 전송하는 단계는,
상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시키는 단계
를 포함하는 데이터 압축 방법.
14. The method of claim 13,
Wherein the transmitting comprises:
Selecting a bit corresponding to the positional order of the input data among the bits represented by binarizing the common index and including the selected bit in the input data subjected to the upward scaling;
/ RTI >
설정된 그룹 사이즈에 따라, 데이터 압축 장치로부터 수신된 데이터 중 적어도 일부의 출력 데이터를 그룹핑하고, 상기 출력 데이터로부터, 공통 지수를 추출하는 단계; 및
상기 출력 데이터 각각에 대해, 상기 추출된 공통 지수 만큼 임의의 방향으로 시프트하여, 하향 스케일을 수행하는 단계
를 포함하는 데이터 복원 방법.
Grouping output data of at least a part of the data received from the data compression apparatus according to the set group size and extracting a common index from the output data; And
Performing, for each of the output data, shifting in an arbitrary direction by the extracted common exponent to perform a downward scale
/ RTI >
제16항에 있어서,
상기 공통 지수를 추출하는 단계는,
상기 출력 데이터 각각으로부터 설정된 위치의 특정의 비트를 검출하고, 상기 검출된 비트를, 상기 출력 데이터의 위치순서에 따라 나열하여, 상기 공통 지수를 추출하는 단계
를 포함하는 데이터 복원 방법.
17. The method of claim 16,
The step of extracting the common index comprises:
Extracting the common index by detecting a specific bit at a set position from each of the output data and arranging the detected bits in the order of the position of the output data;
/ RTI >
제16항에 있어서,
상기 하향 스케일을 수행하는 단계는,
상기 출력 데이터 각각에 대해, 상기 출력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 반대 방향으로, 상기 공통 지수 만큼 시프트하여 하향 스케일을 수행하는 단계; 및
상기 하향 스케일링이 수행된 출력 데이터에 상기 최상위 비트를 삽입하는 단계
를 포함하는 데이터 복원 방법.
17. The method of claim 16,
Wherein performing the downscale comprises:
Performing, for each of the output data, a plurality of bits excluding the most significant bit in the output data by shifting the common bits in a direction opposite to the position of the most significant bit, thereby performing a downward scale; And
Inserting the most significant bit into the output data on which downscaling has been performed
/ RTI >
KR1020160036944A 2015-11-17 2016-03-28 Data compression apparatus and method, data restoration apparatus and method KR102503878B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150161408 2015-11-17
KR20150161408 2015-11-17

Publications (2)

Publication Number Publication Date
KR20170057807A true KR20170057807A (en) 2017-05-25
KR102503878B1 KR102503878B1 (en) 2023-02-27

Family

ID=59050825

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160036944A KR102503878B1 (en) 2015-11-17 2016-03-28 Data compression apparatus and method, data restoration apparatus and method

Country Status (1)

Country Link
KR (1) KR102503878B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200047003A (en) * 2018-10-26 2020-05-07 삼성에스디에스 주식회사 Method for compressing and transfering data and apparatus thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120098651A (en) * 2009-10-23 2012-09-05 샘플리파이 시스템즈 인코포레이티드 Block floating point compression of signal data
KR20140078308A (en) * 2012-12-17 2014-06-25 한국전자통신연구원 High Speed Serial Digital Data Interface Apparatus and Method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120098651A (en) * 2009-10-23 2012-09-05 샘플리파이 시스템즈 인코포레이티드 Block floating point compression of signal data
KR20140078308A (en) * 2012-12-17 2014-06-25 한국전자통신연구원 High Speed Serial Digital Data Interface Apparatus and Method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200047003A (en) * 2018-10-26 2020-05-07 삼성에스디에스 주식회사 Method for compressing and transfering data and apparatus thereof

Also Published As

Publication number Publication date
KR102503878B1 (en) 2023-02-27

Similar Documents

Publication Publication Date Title
US9104473B2 (en) Conversion and compression of floating-point and integer data
JP6242074B2 (en) Method and apparatus for signal data compression and decompression (signal data compression and decompression)
EP4012928B1 (en) Methods, devices and systems for semantic-value data compression and decompression
CN106549673B (en) Data compression method and device
US9660667B2 (en) Method and apparatus for compressing/decompressing data using floating point
WO2013003479A2 (en) Compression of floating-point data
WO2017048753A1 (en) Lossless data compression
US9100042B2 (en) High throughput decoding of variable length data symbols
CN114615507B (en) Image coding method, decoding method and related device
JP6003059B2 (en) Image processing apparatus, image processing method, and image forming apparatus
KR20170057807A (en) Data compression apparatus and method, data restoration apparatus and method
US8817875B2 (en) Methods and systems to encode and decode sequences of images
US10275246B2 (en) Programmable linear feedback shift register
CN109799483B (en) Data processing method and device
US9762285B1 (en) Compression using mu-law approximation
US20130124588A1 (en) Encoding densely packed decimals
CN112449191A (en) Method for compressing a plurality of images, method and apparatus for decompressing an image
KR20150096217A (en) Digital data compressing method and device thereof
US7646923B2 (en) Method and apparatus for compressing a stream of video data
US8711013B2 (en) Coding circuitry for difference-based data transformation
KR101890365B1 (en) Method and apparatus for error detection in compressed data
KR20170048408A (en) Extension of the mpeg/sc3dmc standard to polygon meshes
US20140136582A1 (en) Method and apparatus for digital automatic gain control
CN113595557B (en) Data processing method and device
CN115630402A (en) Information hiding method, device and equipment based on floating point number and storage medium

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant