KR20170057807A - Data compression apparatus and method, data restoration apparatus and method - Google Patents
Data compression apparatus and method, data restoration apparatus and method Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3066—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction by means of a mask or a bit-map
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion 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/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3059—Digital 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
Description
본 발명의 실시예들은 데이터의 그룹핑 및 그룹핑과 연관된 공통 지수를 이용하여, 고속 압축 및 복원을 지원하는 기술에 관한 것이다.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
데이터 압축 장치(101)는 데이터에 대한 그룹 사이즈를 결정하고, 상기 결정된 그룹 사이즈를 고려하여, 데이터 중 적어도 일부의 입력 데이터를 그룹핑할 수 있다. 여기서, 입력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 데이터 압축 장치(101)에 입력되는 단위 수의 비트를 포함하는 데이터일 수 있다.The
데이터 압축 장치(101)는 그룹핑된 입력 데이터로부터, 그룹핑된 입력 데이터에 관한 공통 지수(또는, 그룹 지수)를 획득하고, 상기 공통 지수를 이용하여, 입력 데이터 각각을 압축한 후, 데이터 복원 장치(103)에 전송할 수 있다. 이때, 데이터 압축 장치(101)는 압축된 입력 데이터에, 상기 공통 지수를 포함시켜, 출력 데이터로서 데이터 복원 장치(103)에 전송할 수 있다.The
데이터 복원 장치(103)는 데이터 압축 장치(101)로부터 데이터를 수신하고, 수신된 데이터 중 적어도 일부의 출력 데이터를, 설정된 그룹 사이즈에 따라 그룹핑할 수 있다. 여기서, 출력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 데이터 압축 장치(101)에서 출력되는 단위 수의 비트를 포함하는 데이터일 수 있다.The
데이터 복원 장치(103)는 그룹핑된 출력 데이터로부터, 그룹핑된 출력 데이터에 관한 공통 지수를 추출하고, 상기 공통 지수를 이용하여, 출력 데이터 각각을 복원 함으로써, 데이터 압축 장치(101)에서 전송하고자 하는 데이터를 획득할 수 있다.The
도 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
결정부(201)는 데이터에 대한 그룹 사이즈를 결정할 수 있다. 구체적으로, 결정부(201)는 상기 데이터 중 입력 데이터의 비트 수 및 설정된 출력 데이터의 비트 수(즉, 출력 비트 수)를 고려하여, 스케일링 지수를 결정하고, 상기 결정된 스케일링 지수에 기초하여, 상기 그룹 사이즈를 결정할 수 있다. 여기서, 입력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 입력되는 단위 수의 비트를 포함하는 데이터일 수 있으며, 예컨대, 18(0∼17) 비트일 수 있다. 또한, 입력 데이터는 부호 비트를 적어도 포함하는 다수의 비트를 나열하여 구성될 수 있다.The
구체적으로, 결정부(201)는 [수학식 1]에 의하여, 스케일링 지수를 결정할 수 있다.More specifically, the
여기서, S는 스케일링 지수이고, T는 입력 데이터의 비트 수(입력 데이터가 가지는 비트 해상도)이며, Q( )는 압축에 의해 출력되는 출력 데이터의 비트 수이다.Here, S is a scaling exponent, T is the number of bits of input data (bit resolution of input data), and Q ( ) 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
이후, 결정부(201)는 스케일링 지수가 설정되면, 결정된 스케일링 지수에 기초하여, [수학식 2]에 따라, 그룹 사이즈를 결정할 수 있다.Thereafter, when the scaling index is set, the determining
여기서, 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
또한, 결정부(201)는 상기 스케일링 지수와 상기 그룹 사이즈에 기초하여, 스케일링 범위를 최종적으로 결정하고, 상기 결정된 최종의 스케일링 범위(0∼M-1)를 선택부(207)에 제공 함으로써, 이후 선택부(207)에 의한 공통 지수 선택시, 기준 데이터로서 활용할 수 있게 한다.The determining
구체적으로, 결정부(201)는 그룹 사이즈(G)와 스케일링 지수(S)가 결정되면, [수학식 3]에 의하여, 최종의 스케일링 지수(M)를 결정하고, 최종의 스케일링 범위(0∼M-1)를 결정할 수 있다.Specifically, when the group size G and the scaling index S are determined, the
예컨대, 결정부(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
또한, 결정부(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
획득부(203)는 상기 결정된 그룹 사이즈를 고려하여, 상기 데이터 중 적어도 일부의 입력 데이터를 그룹핑하고, 상기 입력 데이터로부터, 공통 지수(GE: Group Exponent)를 획득할 수 있다. 예컨대, 획득부(203)는 그룹 사이즈가 3으로 결정될 경우, 3개의 입력 데이터를 그룹핑하여 그룹을 생성할 수 있다.The acquiring
구체적으로, 획득부(203)는 카운트부(205) 및 선택부(207)를 포함할 수 있다.Specifically, the obtaining
카운트부(205)는 그룹핑된 입력 데이터 각각에서, 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트(count)하여, NCB(Number of Continuous Bits)로서 확인할 수 있다. 이때, 카운트부(205)는 상기 입력 데이터 내 다수의 비트 중, 최상위 비트(MSB: Most Significant Bit)를 상기 부호 비트로서, 확인하고, 상기 부호 비트가 '1'일 경우, 상기 부호 비트를 기준으로, '1'이 연속적으로 나열되는 비트의 개수를 카운트할 수 있다. 또한, 카운트부(205)는 상기 부호 비트가 '0'일 경우, 상기 부호 비트를 기준으로, '0'이 연속적으로 나열되는 비트의 개수를 카운트할 수 있다.The counting
선택부(207)는 그룹핑된 입력 데이터 각각에서 확인되는 NCB 중 최소값을, LSI(Least Scaling Index)로서 지정하고, 상기 지정된 LSI를 상기 공통 지수로서 선택할 수 있다. 선택부(207)는 예컨대, 제1 그룹으로 그룹핑된 제1,2,3 입력 데이터 각각에서 확인된 제1,2,3 NCB가, '4', '3', '3'일 경우, 최소값인 '3'을 LSI로서 지정하고, 지정된 '3'을 공통 지수로서 선택할 수 있다.The selecting
다른 일례로서, 선택부(207)는 LSI를 최대값으로 지정한 후, 카운트부(205)에 의해 확인되는 NCB와 상기 LSI를 비교하고, NCB가 LSI 보다 작은 경우, NCB를 LSI로서 지정할 수 있다. 선택부(207)는 그룹핑된 입력 데이터 각각에서 확인되는 NCB 마다, LSI와의 비교를 반복하여, 최소값의 NCB를 LSI로서 지정할 수 있다.As another example, the
이때, 선택부(207)는 상기 LSI가 스케일링 범위에 포함되지 않는 경우, 상기 지정된 LSI 대신에, 상기 스케일링 범위에서의 최대값을 상기 공통 지수로서 변경하여 선택할 수 있다.At this time, if the LSI is not included in the scaling range, the selecting
그룹 버퍼(209)는 그룹핑된 입력 데이터를 보관할 수 있다. 이때, 그룹 버퍼(209)는 결정부(201)에 의해, 결정된 그룹 사이즈 만큼의 입력 데이터를 버퍼링할 수 있으며, 그룹 사이즈가 크지 않으므로, 비교적 큰 사이즈의 블록 메모리를 사용하지 않고, 구현이 간단한 시프트 레지스터로 구현할 수 있다.The
압축 처리부(211)는 그룹핑된 입력 데이터 각각에 대해, 공통 지수 만큼 임의의 방향으로 시프트(shift)하여, 상향 스케일링을 수행하고, 상기 상향 스케일링이 수행된 입력 데이터에, 상기 공통 지수를 포함시켜 송신부(213)를 통해, 데이터 복원 장치에 전송할 수 있다. 구체적으로, 압축 처리부(211)는 그룹핑된 입력 데이터 각각에 대해, 상기 입력 데이터 내 최상위 비트(예컨대, 부호 비트)를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 방향으로, 상기 공통 지수 만큼 시프트하여, 상향 스케일링을 수행할 수 있다. 압축 처리부(211)는 상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시켜 전송할 수 있다.The
예컨대, 압축 처리부(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
압축 처리부(211)는 상기 공통 지수가 포함된 입력 데이터를, 상기 출력 비트 수에 따라, 양자화하여, 출력 데이터로서 상기 데이터 복원 장치에 전송할 수 있다.The
송신부(213)는 압축 처리부(211)에 의해, 입력 데이터가 압축된 출력 데이터를, 데이터 복원 장치에 전송할 수 있다.The
데이터 압축 장치(200)는 입력 데이터의 비트 수와 출력 데이터의 비트 수에 따라, 그룹 사이즈를 결정하고, 그룹 사이즈를 고려하여 그룹핑된 입력 데이터 별로 압축 함에 따라, 구현시 비교적 큰 사이즈의 블록 메모리를 사용할 필요가 없으며, 대신 그룹 사이즈 개수 만큼의 시프트 레지스터로 간단하게 구현이 가능하기 때문에, 복잡도가 작고 처리지연이 거의 발생하지 않는다. 또한, 데이터 압축 장치(200)는 그룹핑되는 입력 데이터의 개수가 비교적 적은 경우, 인접한 입력 데이터 간의 크기 차이가 급격히 변하지 않는 입력신호의 특성으로 인해, 블록 스케일링 구조 보다 효율적인 스케일링을 가능하게 하여, 압축으로 인한 EVM(Error Vector Magnitude)의 성능열화를 줄일 수 있다.The
도 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
수신부(301)는 데이터 압축 장치로부터 데이터를 수신할 수 있다.The receiving
추출부(303)는 상기 데이터 중 적어도 일부의 출력 데이터를, 상기 결정부에 의해, 결정된 그룹 사이즈 또는 설정된 그룹 사이즈에 따라 그룹핑하고, 그룹핑된 출력 데이터로부터, 공통 지수를 추출할 수 있다.The extracting
여기서, 출력 데이터는, 설정된 수의 비트를 포함하는 데이터이거나, 또는 데이터 압축 장치에서 출력되는 단위 수의 비트를 포함하는 데이터로서, 예컨대, 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
이때, 추출부(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
상기 결정부는 상기 출력 데이터의 비트 수를 고려하여, 데이터에 대한 그룹 사이즈가 결정될 경우, 그룹 버퍼(305)에 제공할 수 있다.The determination unit may provide the
그룹 버퍼(305)는 그룹핑된 출력 데이터를 보관할 수 있다. 이때, 그룹 버퍼(305)는 상기 결정부에 의해, 결정된 그룹 사이즈 또는 설정된 그룹 사이즈 만큼의 출력 데이터를 버퍼링할 수 있다.The
한편, 다른 일례로서, 추출부(303) 및 그룹 버퍼(305)는 하나로 통합되어, 버퍼 기능과 공통 지수 추출 기능을 동시에 처리할 수 있다.On the other hand, as another example, the extracting
복원 처리부(307)는 그룹핑된 출력 데이터 각각에 대해, 상기 추출된 공통 지수 만큼 임의의 방향으로 시프트하여, 하향 스케일을 수행할 수 있다. 이때, 복원 처리부(307)는 상기 출력 데이터 각각에 대해, 상기 출력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 반대 방향으로, 상기 공통 지수 만큼 시프트하여 하향 스케일을 수행하고, 상기 하향 스케일링이 수행된 출력 데이터에 상기 최상위 비트를 삽입 함으로써, 데이터를 복원할 수 있다.The
예컨대, 복원 처리부(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
또한, 복원 처리부(307)는 제2 출력 데이터 및 제3 출력 데이터에 대해서도, '3' 만큼 상기 최상위 비트가 위치하는 반대 방향으로 시프트하여, 하향 스케일을 수행하고, 부호 비트('1') 및 부호 비트('0')를 각각 삽입할 수 있다.Also, the
도 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, (
또한, 데이터 압축 장치는 제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
구체적으로, 데이터 압축 장치는 상기 데이터 중 입력 데이터의 비트 수 및 설정된 출력 비트 수를 고려하여, 스케일링 지수를 결정하고, 상기 결정된 스케일링 지수에 기초하여, 상기 그룹 사이즈를 결정할 수 있다. 이때, 데이터 압축 장치는 상기 스케일링 지수와 상기 그룹 사이즈에 기초하여, 스케일링 범위를 결정 함으로써, 공통 지수 선택시, 기준 데이터로서 활용할 수 있게 한다.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
구체적으로, 데이터 압축 장치는 그룹핑된 상기 입력 데이터 각각에서, 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트하여, 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
데이터 압축 장치는 그룹핑된 입력 데이터 각각에서 확인되는 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
구체적으로, 데이터 압축 장치는 그룹핑된 입력 데이터 각각에 대해, 상기 입력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 공통 지수 만큼 최상위 비트가 위치하는 방향으로 시프트하여, 상향 스케일링을 수행하고, 상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시킬 수 있다. 이후, 데이터 압축 장치는 상기 공통 지수가 포함된 입력 데이터를, 상기 출력 비트 수에 따라, 양자화하여, 출력 데이터로서 상기 데이터 복원 장치에 전송할 수 있다.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
단계(803)에서, 데이터 복원 장치는 그룹핑된 출력 데이터에 관한 공통 지수를 이용하여, 그룹핑된 출력 데이터 각각에 대해, 하향 스케일링을 수행할 수 있다. 이때, 데이터 복원 장치는 상기 출력 데이터 내 최상위 비트를 부호 비트로서, 확인하고, 상기 최상위 비트를 제외한 다수의 비트를, 최상의 비트가 위치하는 반대 방향으로 상기 공통 지수 만큼 시프트하여, 하향 스케일을 수행하고, 상기 하향 스케일링이 수행된 출력 데이터에 상기 확인된 부호 비트를 삽입하여, 하향 스케일을 수행할 수 있다.In
본 발명의 실시예는 입력 데이터의 비트 수와 출력 데이터의 비트 수에 따라, 유연하게 결정된 그룹 사이즈에 기초하여, 입력 데이터를 그룹핑하고, 그룹핑된 입력 데이터 별로, 공통 지수를 이용하여 상향 스케일링을 수행 함으로써, 고속의 블록메모리 없이도, 데이터를 압축할 수 있게 한다.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
.
상기 입력 데이터는 부호 비트를 적어도 포함하는 다수의 비트를 나열하여 구성되고,
상기 획득부는,
상기 입력 데이터 각각에서, 상기 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트(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;
.
상기 카운트부는,
상기 다수의 비트 중, 최상위 비트를 상기 부호 비트로서, 확인하고,
상기 부호 비트가 '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.
상기 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.
상기 결정부는,
상기 입력 데이터의 비트 수 및 설정된 출력 비트 수를 고려하여, 스케일링 지수를 결정하고,
상기 결정된 스케일링 지수와 상기 그룹 사이즈에 기초하여, 상기 스케일링 범위를 결정하는
데이터 압축 장치.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.
상기 결정부는,
상기 입력 데이터의 비트 수 및 설정된 출력 비트 수를 고려하여, 스케일링 지수를 결정하고,
상기 결정된 스케일링 지수에 기초하여, 상기 그룹 사이즈를 결정하는
데이터 압축 장치.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.
상기 압축 처리부는,
상기 상향 스케일링이 수행된 입력 데이터에, 상기 공통 지수를 포함시켜 상기 데이터 복원 장치에 전송하되, 상기 공통 지수가 포함된 입력 데이터를, 설정된 출력 비트 수에 따라, 양자화하여, 출력 데이터로서 상기 데이터 복원 장치에 전송하는
데이터 압축 장치.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.
상기 압축 처리부는,
상기 입력 데이터 각각에 대해, 상기 입력 데이터 내 최상위 비트를 제외한 상기 다수의 비트를, 상기 최상위 비트가 위치하는 방향으로, 상기 공통 지수 만큼 시프트하여 상기 상향 스케일링을 수행하는
데이터 압축 장치.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.
상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시키는
데이터 압축 장치.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,
.
상기 추출부는,
상기 출력 데이터 각각으로부터 설정된 위치의 특정의 비트를 검출하고, 상기 검출된 비트를, 상기 출력 데이터의 위치순서에 따라 나열하여, 상기 공통 지수를 추출하는
데이터 복원 장치.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.
상기 복원 처리부는,
상기 출력 데이터 각각에 대해, 상기 출력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 반대 방향으로, 상기 공통 지수 만큼 시프트하여 하향 스케일을 수행하고, 상기 하향 스케일링이 수행된 출력 데이터에 상기 최상위 비트를 삽입하는
데이터 복원 장치.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 >
상기 입력 데이터는 부호 비트를 적어도 포함하는 다수의 비트를 나열하여 구성되고,
상기 공통 지수를 획득하는 단계는,
상기 입력 데이터 각각에서, 상기 부호 비트를 기준으로, 상기 부호 비트와 동일하면서 연속적으로 나열되는 비트의 개수를 카운트하여, 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 >
상기 전송하는 단계는,
상기 공통 지수를 이진화하여 표현한 비트들 중에서, 상기 입력 데이터의 위치순서에 대응하는 비트를 선정하여, 상기 상향 스케일링이 수행된 입력 데이터에 포함시키는 단계
를 포함하는 데이터 압축 방법.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 >
상기 공통 지수를 추출하는 단계는,
상기 출력 데이터 각각으로부터 설정된 위치의 특정의 비트를 검출하고, 상기 검출된 비트를, 상기 출력 데이터의 위치순서에 따라 나열하여, 상기 공통 지수를 추출하는 단계
를 포함하는 데이터 복원 방법.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 >
상기 하향 스케일을 수행하는 단계는,
상기 출력 데이터 각각에 대해, 상기 출력 데이터 내 최상위 비트를 제외한 다수의 비트를, 상기 최상위 비트가 위치하는 반대 방향으로, 상기 공통 지수 만큼 시프트하여 하향 스케일을 수행하는 단계; 및
상기 하향 스케일링이 수행된 출력 데이터에 상기 최상위 비트를 삽입하는 단계
를 포함하는 데이터 복원 방법.
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 >
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)
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)
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 |
-
2016
- 2016-03-28 KR KR1020160036944A patent/KR102503878B1/en active IP Right Grant
Patent Citations (2)
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)
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 |