KR101722215B1 - Apparatus and method for discrete cosine transform - Google Patents

Apparatus and method for discrete cosine transform Download PDF

Info

Publication number
KR101722215B1
KR101722215B1 KR1020160056997A KR20160056997A KR101722215B1 KR 101722215 B1 KR101722215 B1 KR 101722215B1 KR 1020160056997 A KR1020160056997 A KR 1020160056997A KR 20160056997 A KR20160056997 A KR 20160056997A KR 101722215 B1 KR101722215 B1 KR 101722215B1
Authority
KR
South Korea
Prior art keywords
adder
triangulation
adders
input data
calculation unit
Prior art date
Application number
KR1020160056997A
Other languages
Korean (ko)
Inventor
오형철
정석진
용루오 쉔
Original Assignee
고려대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 고려대학교 산학협력단 filed Critical 고려대학교 산학협력단
Priority to KR1020160056997A priority Critical patent/KR101722215B1/en
Application granted granted Critical
Publication of KR101722215B1 publication Critical patent/KR101722215B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Complex Calculations (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

The present invention comprises: a decimation calculation unit including two adders; and a triangulation multiplying unit including two multi-operand adders and two adders, wherein the decimation calculation unit performs a butterfly operation on input data sequentially input, and the triangulation multiplying unit calculates discrete cosine transform coefficients sequentially with respect to the input data on which the butterfly operation is performed. At the time of calculation, the decimation calculation unit and the triangulation multiplying unit process the input data in parallel by a pipelining method.

Description

이산 여현 변환 장치 및 방법{APPARATUS AND METHOD FOR DISCRETE COSINE TRANSFORM}[0001] APPARATUS AND METHOD FOR DISCRETE COSINE TRANSFORM [0002]

본 발명은 이산 여현 변환 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for DCT.

이산 여현 변환(discrete cosine transform; DCT)은 JPEG, MPEG, 및 H.26x 등의 다양한 음성, 화상, 및 영상 압축 표준에 포함되어 있는, 신호를 시간 도메인에서 주파수 도메인으로 변환하는 직교 변환 부호화 기술이다.Discrete cosine transform (DCT) is an orthogonal transform coding technique that transforms a signal from the time domain to the frequency domain, which is included in various voice, image, and image compression standards such as JPEG, MPEG, and H.26x .

일반적으로 음성, 화상, 영상 등의 멀티미디어 신호는 에너지가 저주파 대에 집중되어 있다. 그러므로 멀티미디어 신호는 이산 여현 변환과 양자화를 차례로 수행하여 에너지가 큰 주파수 영역과 에너지가 작은 주파수 영역에 할당되는 비트 수를 서로 다르게 하면 효과적으로 데이터를 압축할 수 있다. 이에 따라 이산 여현 변환은 에너지 압축 능력이 최적이지만 연산 부하가 매우 높은 카루넨 루베 변환(Karhunen Loeve transform; KLT)에 가까운 압축 결과를 산출할 수 있다.Generally, multimedia signals such as voice, image, and video are concentrated in a low frequency band. Therefore, the multimedia signal can be effectively compressed by performing discrete cosine transform and quantization in order to make the number of bits allocated to a frequency region having a large energy and the frequency having a small energy different from each other. Thus, the DCT transform can produce a compression result close to that of Karhunen Loeve transform (KLT), which has the best energy compression capacity but has a high computational load.

앞에서 설명한 바와 같이, 이산 여현 변환은 이렇게 상대적으로 낮은 연산 부하를 가지고도 높은 압축률을 제공하므로 여러 가지 표준에 포함되어 널리 사용되는 이유 중 하나이다.As described above, DCT is one of the widely used and widely used standards because it provides a high compression ratio with relatively low computational load.

그러나 이산 여현 변환은 연산 복잡도가 여전히 높기 때문에, 효율적으로 수행하기 위한 다양한 기술이 필요하다. 이산 여현 변환은 시스템 사양이 낮은 휴대용 기기에서 여전히 큰 부담이 된다. 따라서 휴대용 기기에서 사용할 수 있는 이산 여현 변환 장치 및 방법을 제공하는 것이 필요하다.However, because the computational complexity of the discrete cosine transform is still high, various techniques are required to perform efficiently. Discrete cosine transform is still a heavy burden on handheld devices with low system requirements. Therefore, there is a need to provide a DC / DC converter and method that can be used in portable devices.

이와 관련되어, 한국공개특허 10-2012-0098499호("영상의 변환 방법 및 장치, 및 영상의 역변환 방법 및 장치")에는 뢰플러 알고리즘에서 사용되는 삼각 함수에 기초한 값들을 분모가 2의 거듭 제곱 형태인 유리수 값들로 치환한 행렬을 사용하는 구성이 개시되어 있다.In this connection, Korean Patent Laid-Open Publication No. 10-2012-0098499 ("image conversion method and apparatus and image inversion method and apparatus") discloses that values based on the trigonometric function used in the Leupner algorithm are multiplied by a power of 2 Quot; is replaced by a rational number value.

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 파이프라이닝에 기초하여 입력 데이터에 대한 이산 여현 변환을 수행하는 이산 여현 변환 장치 및 방법을 제공한다.Disclosure of Invention Technical Problem [8] The present invention provides a DC / DC converter and a DC / DC converter for performing DCT on input data based on pipelining.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.It should be understood, however, that the technical scope of the present invention is not limited to the above-described technical problems, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 이산 여현 변환 장치는 2개의 덧셈기를 포함하는 데시메이션 산출부 및 2개의 다중-피연산자 덧셈기 및 2개의 덧셈기를 포함하는 삼각 측량 곱셈부를 포함하고, 데시메이션 산출부는 순차적으로 입력받은 입력 데이터에 대한 버터플라이 연산을 수행하는 것이며, 삼각 측량 곱셈부는 버터플라이 연산이 수행된 입력데이터에 대하여, 순차적으로 이산 여현 변환 계수를 산출한다. 이때, 데시메이션 산출부 및 삼각 측량 곱셈부는 파이프라이닝(pipelining) 방식으로 입력 데이터를 병렬 처리한다.According to a first aspect of the present invention, there is provided a DCT apparatus including a decimation calculation unit including two adders, a triangle unit including two multi-operand adders and two adders, And a triangulation multiplier for sequentially inputting input data, wherein the triangulation multiplier calculates a discrete cosine transform coefficient sequentially for the input data on which the butterfly operation has been performed . At this time, the decimation calculation unit and the triangulation multiplication unit process the input data in parallel by a pipelining method.

또한, 본 발명의 제 2 측면에 따른 이산 여현 변환 장치의 이산 여현 변환 방법은 데시메이션 산출부가 순차적으로 입력받은 입력 데이터에 대한 버터플라이 연산을 수행하는 단계; 및 삼각 측량 곱셈부가 버터플라이 연산이 수행된 입력데이터에 대하여, 순차적으로 이산 여현 변환 계수를 산출하는 단계를 포함한다. 이때, 데시메이션 산출부는 2개의 덧셈기를 포함하고, 삼각 측량 곱셈부는 2개의 다중-피연산자 덧셈기 및 2개의 덧셈기를 포함하고, 데시메이션 산출부 및 삼각 측량 곱셈부는 파이프라이닝(pipelining) 방식으로 입력 데이터를 병렬 처리한다.According to a second aspect of the present invention, there is provided a DCT transform method of a DCT transformer, comprising: performing a butterfly operation on input data sequentially input by a decimation computation unit; And calculating the discrete cosine transform coefficients sequentially with respect to the input data on which the triple multiplication by the butterfly operation is performed. In this case, the decimation calculation unit includes two adders, the triangulation multiplication unit includes two multi-operand adders and two adders, and the decimation calculation unit and the triangulation and multiplication unit calculate the input data in a pipelining manner Parallel processing.

본 발명은 기존 뢰플러 알고리즘 기반의 이산 여현 변환 장치가 25개에서 48개의 덧셈기를 사용하는 것과 달리 13개의 덧셈기 만을 사용하여, 이산 여현 변환을 수행할 수 있다. 또한, 본 발명은 별도의 대수적 정수 부호 및 양자화 단계 없이 파이프라이닝에 기초한 병렬 처리에 따라 이산 여현 변환을 수행할 수 있어 효율적이다. The present invention can perform discrete cosine transform using only 13 adders, unlike the existing Looper algorithm based DCT using 25 to 48 adders. In addition, the present invention is efficient because it can perform discrete cosine transform according to parallel processing based on pipelining without a separate algebraic integer code and quantization step.

그러므로 본 발명은 스마트 폰과 같은 자원의 제약이 높은 휴대용 기기에서 종래의 이산 여현 변환 장치를 대체하여 사용이 가능하다.Therefore, the present invention can be used as a substitute for a conventional DCT device in portable devices with high resource constraints such as smart phones.

도 1은 본 발명의 일 실시예에 따른 이산 여현 변환 장치의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 이산 여현 변환 장치의 예시도이다.
도 3은 본 발명의 일 실시예에 따른 이산 여현 변환 장치의 동작의 예시도이다.
도 4는 본 발명의 일 실시예에 따른 삼각함수 값의 부호화에 대한 예시도이다.
도 5는 본 발명의 일 실시예에 따른 데시메이션 산출부의 블록도이다.
도 6은 본 발명의 일 실시예에 따른 데시메이션 산출부의 데이터 패스의 예시도이다.
도 7은 본 발명이 일 실시예에 따른 삼각 측량 곱셈부의 블록도이다.
도 8은 본 발명의 일 실시예에 따른 삼각 측량 곱셈부의 데이터 패스의 예시도이다.
도 9는 본 발명의 일 실시예에 따른 이산 여현 변환 장치의 정밀도를 설명하기 위한 예시도이다.
도 10은 본 발명의 일 실시예에 따른 이산 여현 변환 장치의 이산 여현 변환 방법의 순서도이다.
1 is a block diagram of a DCT unit according to an embodiment of the present invention.
2 is an exemplary diagram of a DCT unit according to an embodiment of the present invention.
3 is an exemplary diagram illustrating an operation of the DCT unit according to an embodiment of the present invention.
FIG. 4 is an exemplary diagram illustrating the encoding of a trigonometric function value according to an exemplary embodiment of the present invention. Referring to FIG.
5 is a block diagram of a decimation calculation unit according to an embodiment of the present invention.
6 is an exemplary diagram of a data path of a decimation calculation unit according to an embodiment of the present invention.
7 is a block diagram of a triangulation multiplier according to an embodiment of the present invention.
8 is an exemplary diagram of a data path of a triangulation multiplier according to an embodiment of the present invention.
9 is an exemplary diagram for explaining the precision of a DCT unit according to an embodiment of the present invention.
10 is a flowchart of a DCT transform method of the DCT transformer according to an embodiment of the present invention.

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

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when a part is referred to as "including " an element, it does not exclude other elements unless specifically stated otherwise.

이산 여현 변환은 JPEG, MPEG 및 H.26x 등의 음성 및 영상 정보 압축표준 기술이다. 이때, 이산 여현 변화의 입력 데이터

Figure 112016044453933-pat00001
의 1차원 N-point DCT의 결과
Figure 112016044453933-pat00002
은 아래 [수학식 1]과 같이 정의된다. 이때, 수학식 1에서 m이 0일 때, α 0
Figure 112016044453933-pat00003
이며, m이 0 외의 다른 값을 가질 때, α m 는 1이 된다. 또한,
Figure 112016044453933-pat00004
가 될 수 있다.Discrete Cosine Transform is a standard for compression of audio and image information such as JPEG, MPEG and H.26x. At this time, the input data of the discrete cosine transform
Figure 112016044453933-pat00001
Of one-dimensional N-point DCT
Figure 112016044453933-pat00002
Is defined as follows: " (1) " At this time, when m is 0 in Equation (1) ,? 0 is
Figure 112016044453933-pat00003
, And when m has a value other than 0 ,? M becomes 1. Also,
Figure 112016044453933-pat00004
.

Figure 112016044453933-pat00005
Figure 112016044453933-pat00005

[수학식 1]에 포함된 코사인 값에서 곱셈 연산은 하드웨어 비용이(cost)이 높다. 이러한 문제를 피하기 위하여, 뢰플러(Loeffler) 알고리즘 및 스케일된 이산 여현 변환 알고리즘 등과 같은 종래의 이산 여현 변환 알고리즘은 곱셈 연산의 개수를 최소화한다. The multiplication operation in the cosine value included in Equation (1) is high in hardware cost. To avoid this problem, conventional discrete cosine transformation algorithms such as the Loeffler algorithm and the scaled discrete cosine transform algorithm minimize the number of multiplication operations.

뢰플러 알고리즘은 일반적인 이산 여현 변환 알고리즘에 비하여, 곱셈 연산을 줄인 알고리즘인다. 그러나 1차원의 8-포인트(point) 이산 여현 변환의 경우, 뢰플러 알고리즘은 11번의 곱셈 연산을 수행한다. 하드웨어 사양이 비교적 좋은 PC 등에서는 11번의 곱셈 연산은 문제가 되지 않는다. 그러나 11번의 곱셈 연산은 하드웨어 사양이 비교적 낮은 휴대용 기기에서는 부담이 될 수 있다. The Looplea algorithm is an algorithm that reduces the multiply operation compared to a general discrete cosine transform algorithm. However, in the case of one-dimensional 8-point discrete cosine transform, the Loupe algorithm performs 11 multiplications. For PCs with relatively good hardware specifications, 11 multiplications are not a problem. However, 11 multiplications can be a burden on handheld devices with relatively low hardware specifications.

스케일된 이산 여현 변환 알고리즘은 이산 여현 변환 이후, 양자화(quantization) 단계에서 계산량을 현저하게 줄이기 위하여 사용할 수 있다. 그러나 스케일된 이산 여현 변환 알고리즘은 양자화가 없는 경우, 뢰플러 알고리즘에 비하여 효율적이지 않을 수 있다. 그러므로 일반적인 상황에서는 뢰플러 알고리즘을 채택하고 있다. The scaled discrete cosine transformation algorithm can be used after the discrete cosine transform to significantly reduce the amount of computation in the quantization step. However, the scaled discrete cosine transformation algorithm may not be as efficient as the Loupe algorithm without quantization. Therefore, in the general situation, we adopt the Louffler algorithm.

다음은 도 1 내지 도 9에 참조하여, 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)를 설명한다. Hereinafter, a DCT transformer 100 according to an embodiment of the present invention will be described with reference to FIGS. 1 to 9. FIG.

도 1은 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)의 블록도이다.1 is a block diagram of a DCT device 100 according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)는 데시메이션 산출부(decimation calculation unit; 110) 및 삼각 측량 곱셈부(trigonometric multiplication unit; 120)를 포함한다.The DCT unit 100 according to an embodiment of the present invention includes a decimation calculation unit 110 and a trigonometric multiplication unit 120. [

이때, 이산 여현 변환 장치(100)는 1차원 이산 여현 변환 가속기일 수 있다. 예를 들어, 이산 여현 변환 장치(100)는 메모리 대역폭이 60비트(bit)인 휴대용 기기를 위한 것일 수 있다. 그러므로 이산 여현 변환 장치(100)는 R(red), G(green), B(blue)로 하나의 픽셀 데이터를 읽기 위하여 24비트를 사용하며, 12비트의 이산 여현 변환 계수를 쓰기 위하여, 36비트를 사용할 수 있다.In this case, the DCT unit 100 may be a one-dimensional DCT accelerator. For example, the DC-DC converter 100 may be for a portable device having a memory bandwidth of 60 bits. Therefore, the DCT unit 100 uses 24 bits to read one pixel data with R (red), G (green), and B (blue) Can be used.

이산 여현 변환 장치(100)의 데시메이션 산출부(110)는 복수의 덧셈기(adder)를 포함한다. 또한, 이산 여현 변환 장치(100)의 삼각 측량 곱셈부(120)는 복수의 다중-피연산자 덧셈기 및 복수의 덧셈기를 포함한다. 이때, 다중-피연산자 덧셈기는 복수의 캐리 저장 덧셈기(carry save adder; CSA)를 포함하는 트리 및 하나의 개리 예측 덧셈기(carry propagation adder; CPA)를 포함한다.The decimation calculation unit 110 of the DCT apparatus 100 includes a plurality of adders. In addition, the triangulation multiplier 120 of the DCT apparatus 100 includes a plurality of multi-operand adders and a plurality of adders. At this time, the multi-operand adder includes a tree including a plurality of carry save adders (CSA) and a carry propagation adder (CPA).

도 2는 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)의 예시도이다.FIG. 2 is an exemplary diagram of a DCT transformer 100 according to an embodiment of the present invention.

예를 들어, 도 2를 참조하면, 데시메이션 산출부(110)는 제 1 덧셈기 및 제 2 덧셈기를 포함할 수 있다. 또한, 삼각 측량 곱셈부(120)는 다중-피연산자 덧셈기인 제 3 덧셈기 및 제 4 덧셈기와 제 5 덧셈기 및 제 6 덧셈기를 포함할 수 있다.For example, referring to FIG. 2, the decimation calculation unit 110 may include a first adder and a second adder. In addition, the triangulation multiplier 120 may include a third adder, a fourth adder, a fifth adder, and a sixth adder, which are multi-operand adders.

이때, 제 1 덧셈기, 제 2 덧셈기, 제 5 덧셈기 및 제 6 덧셈기는 2개의 피연산자에 대한 덧셈을 수행할 수 있는 덧셈기 일 수 있다.Here, the first adder, the second adder, the fifth adder, and the sixth adder may be adders capable of performing addition on two operands.

또한, 제 3 덧셈기 및 제 4 덧셈기는 다중-피연산자 덧셈기로 2개를 초과하는 피연산자에 대한 덧셈을 수행할 수 있다. 예를 들어, 삼각 측량 곱셈부(120)는 6개의 피연산자의 덧셈을 수행하는 6-피연산자 덧셈기인 제 3 덧셈기 및 5개의 피연산자의 덧셈을 수행하는 5-피연산자 덧셈기인 제 4 덧셈기를 포함할 수 있다. 즉, 제 3 덧셈기는 5개의 캐리 저장 덧셈기 및 하나의 개리 예측 덧셈기를 포함한다. 또한, 제 4 덧셈기는 4개의 캐리 저장 덧셈기 및 하나의 캐리 예측 덧셈기를 포함할 수 있다. 그러므로 도 2를 참조하면, 이산 여현 변환 장치(100)는 총 13개의 덧셈기를 포함할 수 있다.In addition, the third adder and the fourth adder may perform addition on more than two operands with a multi-operand adder. For example, the triangulation multiplier 120 may include a third adder that is a 6-operand adder that performs addition of six operands, and a fourth adder that is a 5-operand adder that performs addition of 5 operands . That is, the third adder includes five carry storage adders and one Gaussian prediction adder. In addition, the fourth adder may include four carry store adders and one carry prediction adder. Therefore, referring to FIG. 2, the DCT apparatus 100 may include a total of 13 adders.

도 3은 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)의 동작의 예시도이다.3 is an exemplary diagram illustrating an operation of the DCT transformer 100 according to an embodiment of the present invention.

예를 들어, 이산 여현 변환 장치(100)는 8개의 입력 데이터(x0, x1, x2, x3, x4, x5, x6, x7)를 8개의 클록 사이클 동안 버퍼(미도시)에 저장할 수 있다. 이때, 입력 데이터는 실수(real number)가 될 수 있다. For example, the DCT device 100 may store eight input data (x0, x1, x2, x3, x4, x5, x6, x7) in a buffer (not shown) for eight clock cycles. At this time, the input data may be a real number.

데시메이션 산출부(110)는 먼저, 하나의 클록 사이클 동안 버퍼(미도시)로부터 2개의 데이터 x0 및 x7를 읽고, 제 1 덧셈부 및 제 2 덧셈부를 통하여, 읽은 데이터에 대한 덧셈 연산을 수행하여 a0 및 a7를 산출할 수 있다. 이와 같이, 데시메이션 산출부(110)는 버퍼(미도시)로부터 8개의 입력 데이터를 4개의 클록 사이클 동안 읽을 수 있다. The decimation calculation unit 110 first reads two data x0 and x7 from a buffer (not shown) for one clock cycle, performs an addition operation on the read data through the first adder and the second adder a0 and a7 can be calculated. Thus, the decimation calculation unit 110 can read eight input data from the buffer (not shown) for four clock cycles.

9번째 클록 사이클부터 데시메이션 산출부(110) 및 삼각 측량 곱셈부(120)는 동시에 동작하게 된다. 데시메이션 산출부(110)는 9번째 클록 사이클 및 10번째 클록 사이클에 0번째 및 4번째 이산 여현 변환 계수(out 0, out 4)부터 산출할 수 있다. 다음 클록 사이클부터 데시메이션 산출부(110)는 다음 8개의 입력 데이터를 읽어 처리하고, 삼각 측량 곱셈부(120)는 남은 이산 여현 변환 계수를 산출하여 출력할 수 있다. From the ninth clock cycle, the decimation calculation unit 110 and the triangulation multiplication unit 120 operate simultaneously. The decimation calculation unit 110 can calculate the 0th and 4th discrete cosine transform coefficients out 0 and out 4 in the ninth clock cycle and the tenth clock cycle. From the next clock cycle, the decimation calculation unit 110 reads and processes the next eight input data, and the triangulation multiplication unit 120 can calculate and output the remaining discrete cosine transform coefficients.

구체적으로 데시메이션 산출부(110)의 제 1 덧셈부 및 제 2 덧셈부에 의해서 입력된 a0 및 a7이 산출되면, 다음 클록 사이클 동안 삼각 측량 곱셈부(120)는 제 3 덧셈기를 통하여, 파이프라인 구조에 따라 산출된 a0 및 a7를 (a7)c = a7*cos(3π/16)을 산출할 수 있다. 이때, 제 3 덧셈기는 6-피연산자 덧셈기가 될 수 있다. 이때, 데시메이션 산출부(110)는 제 3 덧셈기를 통한 연산과 함께, 다음 a3 및 a4에 대한 연산을 병렬 처리한다.Specifically, when a0 and a7 input by the first adder and the second adder of the decimation calculator 110 are calculated, the triangulation multiplier 120 multiplies the triplets by the third adder during the next clock cycle, A and a7 calculated according to the structure can be calculated as (a7) c = a7 * cos (3? / 16). At this time, the third adder may be a 6-operand adder. At this time, the decimation calculation unit 110 performs an operation on the next a3 and a4 in parallel with the operation on the third adder.

다음 클록 사이클 동안 파이프라인 구조에 따라 이산 여현 변환 장치(100)는 데시메이션 산출부(110)의 제 1 덧셈기 및 제 2 덧셈기와 삼각 측량 곱셈부(120)의 제 3 덧셈기 및 제 4 덧셈기를 통하여 입력 데이터에 대한 처리 및 이산 여현 변환 계수를 산출하는 병렬 처리를 수행할 수 있다.During the next clock cycle, the DCT unit 100 is connected to the first adder and the second adder of the decimation calculation unit 110 and the third adder and the fourth adder of the triangulation multiplying unit 120 according to the pipeline structure Processing for input data and parallel processing for calculating discrete cosine transform coefficients can be performed.

그리고 이산 여현 변환 장치(100)는 다음 클록 사이클 동안 데시메이션 산출부(110)의 제 1 덧셈기 및 제 2 덧셈기와 삼각 측량 곱셈부(120)의 제 3 덧셈기, 제 4 덧셈기, 제 5 덧셈기 및 제 6 덧셈기를 통하여, 입력 데이터에 대한 처리 및 이산 여현 변환 계수를 산출하는 병렬 처리를 수행할 수 있다. The DCT unit 100 receives the first adder and the second adder of the decimation calculation unit 110 and the third adder, the fourth adder, the fifth adder, and the adder of the triangulation multiplying unit 120 for the next clock cycle. 6 adder, it is possible to perform parallel processing for calculating processing and discrete cosine transform coefficients for input data.

이와 같이, 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)는 파이프라인(pipeline) 구조에 따른 시프트(shift) 연산 및 덧셈에 기초하여, 입력 데이터의 이산 여현 변환을 병렬적으로 수행할 수 있다. 즉, 이산 여현 변환 장치(100)는 입력된 데이터를 파이프라이닝(pipelining) 방식을 통하여, 병렬 처리하여 이산 여현 변환을 수행할 수 있다.As described above, the DCT device 100 according to an embodiment of the present invention performs parallel-to-serial discrete cosine transform of input data based on a shift operation according to a pipeline structure and addition . That is, the DCT unit 100 can perform discrete cosine transform by performing parallel processing on input data through a pipelining method.

이때, 이산 여현 변환 장치(100)의 데시메이션 산출부(110)는 순차적으로 입력받은 입력 데이터에 대한 버터플라이 연산을 수행한다. 또한, 삼각 측량 곱셈부(120)는 데시메이션 산출부(110)로부터 버터플라이 연산이 수행된 입력데이터에 대한 순차적인 연산을 통하여, 이산 여현 변환 개수를 산출한다. At this time, the decimation calculation unit 110 of the DCT apparatus 100 performs a butterfly operation on input data sequentially input. In addition, the triangulation multiplier 120 calculates the number of discrete cosine transforms through sequential operations on the input data subjected to the butterfly operation from the decimation calculator 110.

한편, 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)는 일반적인 삼각 측량 곱셈부(120)에 비하여, 덧셈 및 시프트 연산을 효율적으로 사용하기 위하여, 음수를 최소화한다.Meanwhile, the DCT unit 100 according to an embodiment of the present invention minimizes negative numbers in order to efficiently use the addition and shift operations as compared with the general triangulation multiplication unit 120. FIG.

일반적으로 삼각 함수를 사용하는 이산 여현 변환 장치(100)에서는 덧셈기 및 시프트 연산기를 효율적으로 연산하기 위하여, 부호화 값의 1과 -1의 수를 제한한다.Generally, the DCT apparatus 100 using the trigonometric function limits the number of encoded values 1 and -1 in order to efficiently operate the adder and the shift operator.

그러나 이산 여현 변환 장치(100)는 도 4와 같이 삼각 측량 곱셈부(120)에서 사용하는 삼각함수의 값을 부호화하여 사용할 수 있다.However, the DCT unit 100 may encode the trigonometric function used in the triangulation multiplier 120 as shown in FIG.

도 4는 본 발명의 일 실시예에 따른 삼각함수 값의 부호화에 대한 예시도이다.FIG. 4 is an exemplary diagram illustrating the encoding of a trigonometric function value according to an exemplary embodiment of the present invention. Referring to FIG.

도 4를 참조하면, 이산 여현 변환 장치(100)는 덧셈기 및 시프트 연산기를 효율적으로 사용하기 위하여, 항의 개수를 6개 이하로 제한한다. 그리고 이산 여현 변환 장치(100)는 6개 이하의 항이 1개의 음수를 포함하거나, 양수 만으로 구성되도록 설계할 수 있다. 그러므로 이산 여현 변환 장치(100)는 음수화 하드웨어를 최소화할 수 있다.Referring to FIG. 4, the DCT unit 100 limits the number of terms to six or less in order to efficiently use the adder and the shift calculator. The DCT unit 100 can be designed such that six or less terms include one negative number or only positive numbers. Therefore, the DC-DC converter 100 can minimize the negative-sign hardware.

도 5는 본 발명의 일 실시예에 따른 데시메이션 산출부(110)의 블록도이다. 또한, 도 6은 본 발명의 일 실시예에 따른 데시메이션 산출부(110)의 데이터 패스의 예시도이다. 5 is a block diagram of a decimation calculation unit 110 according to an embodiment of the present invention. 6 is an exemplary diagram of a data path of a decimation calculation unit 110 according to an embodiment of the present invention.

앞에서 설명한 바와 같이, 2개의 덧셈기를 포함하는 데시메이션 산출부(110)는 도 5와 같은 구조를 가질 수 있다. 데시메이션 산출부(110)의 데이터 패스(datapath)는 도 6과 같다. As described above, the decimation calculation unit 110 including two adders may have a structure as shown in FIG. The data path of the decimation calculation unit 110 is shown in FIG.

도 7은 본 발명이 일 실시예에 따른 삼각 측량 곱셈부(120)의 블록도이다. 또한, 도 8은 본 발명의 일 실시예에 따른 삼각 측량 곱셈부(120)의 데이터 패스의 예시도이다.7 is a block diagram of a triangulation multiplier 120 according to an embodiment of the present invention. 8 is an exemplary diagram of a data path of the triangulation multiplier 120 according to an embodiment of the present invention.

삼각 측량 곱셈부(120)는 앞에서 설명한 바와 같이, 2개의 다중-피연산자 덧셈기 및 2개의 덧셈기를 포함하며, 그 구조는 도 7과 같다. 이때, 삼각 측량 곱셈부(120)에서의 데이터 패스는 도 8과 같다. The triangulation multiplication unit 120 includes two multi-operand adders and two adders as described above, and its structure is as shown in FIG. At this time, the data path in the triangulation multiplier 120 is shown in FIG.

다음은 도 9를 참조하여, 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)의 정밀도를 설명한다. Next, the accuracy of the DCT device 100 according to an embodiment of the present invention will be described with reference to FIG.

도 9는 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)의 정밀도를 설명하기 위한 예시도이다. 9 is an exemplary diagram for explaining the precision of the DCT unit 100 according to an embodiment of the present invention.

이하에서, 입력 데이터는 2 차원 이산 여현 변환 장치(100)에서 처리된다고 가정한다. 그러므로 입력 데이터는 12비트 정수로 표현될 수 있다. Hereinafter, it is assumed that input data is processed in the two-dimensional DCT device 100. [ Therefore, the input data can be represented by a 12-bit integer.

덧셈기에 의한 덧셈 연산은 연산 결과의 데이터 크기가 입력 데이터 크기 보다 1 비트 증가된다. 그러므로 데시메이션 산출부(110)의 제 1 덧셈기 및 제 2 덧셈기는 14비트의 크기를 가지게 된다.In the addition operation by the adder, the data size of the operation result is increased by one bit from the input data size. Therefore, the first adder and the second adder of the decimation calculation unit 110 have a size of 14 bits.

삼각 측량 곱셈부(120)는 일반적인 뢰플러 알고리즘에서와 같이, 삼각함수 값의 곱셈 연산을 포함하는 kCn 블록연산을 수행한다. 이때, 도 4와 같이, 삼각 측량 곱셈부(120)에서는 2보다 작은 값만 곱하게 된다. 즉, kCn 블록연산의 결과 값은 kCn 블록의 입력 데이터의 크기보다 최대 1비트 큰 값을 가질 수 있다.The triangulation multiplier 120 performs a kCn block operation including a multiplication operation of a trigonometric function value, as in the normal Loopler algorithm. At this time, as shown in FIG. 4, the triangulation multiplier 120 multiplies only a value smaller than 2. That is, the result of the kCn block operation may have a value that is at least 1 bit larger than the size of the input data of the kCn block.

또한, 삼각 측량 곱셈부(120)는 연산을 수행하기 전에, 삼각 측량 곱셈부(120)의 연산 정밀도를 높이기 위하여, 3비트 왼쪽 시프트 연산을 수행하고, 연산이 종료된 이후, 3비트 오른쪽 시프트 연산을 수행한다.In addition, the triangulation multiplier 120 performs a 3-bit left shift operation to increase the precision of the triangulation multiplier 120 before performing the arithmetic operation. After the operation is completed, the triangulation multiplier 120 performs a 3-bit right shift operation .

그러므로 삼각 측량 곱셈부(120)에서 제 3 덧셈기 및 제 4 덧셈기는 각각 17bit의 크기를 가지며, 제 5 덧셈기 및 제 6 덧셈기 역시 17bit의 크기를 가질 수 있다.Therefore, in the triangulation multiplier 120, the third adder and the fourth adder each have a size of 17 bits, and the fifth adder and the sixth adder can also have a size of 17 bits.

이때, 일반적인 뢰플러 알고리즘은 2차원 이산 여현 변환 연산을 수행할 때, 2차원 이산 여현 변환 계수에 1/8을 곱하는 연산을 수행한다. 그러나 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)는 1/8을 곱하는 대신에 앞에서 설명한 3비트 오른쪽 쉬프트 연산을 통하여, 이산 여현 변환 계수를 산출할 수 있다. At this time, when performing a 2D discrete cosine transform operation, a general Looper algorithm performs an operation of multiplying a 2D DCT coefficient by 1/8. However, the DCT transformer 100 according to an embodiment of the present invention can calculate the DCT coefficients through the 3-bit right shift operation described above instead of multiplying by 1/8.

다음은 도 10을 참조하여, 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)의 이산 여현 변환 방법을 설명한다.10, a DCT transform method of the DCT transformer 100 according to an embodiment of the present invention will be described.

도 10은 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100)의 이산 여현 변환 방법의 순서도이다.10 is a flowchart of a DCT transform method of the DCT transformer 100 according to an embodiment of the present invention.

이산 여현 변환 장치(100)는 데시메이션 산출부(110)를 통하여 순차적으로 입력받은 입력 데이터에 대한 버터플라이 연산을 수행한다(S1000). 이때, 데시메이션 산출부(110)는 2개의 덧셈기를 포함한다.The DCT unit 100 performs a butterfly operation on the input data sequentially input through the decimation calculation unit 110 (S1000). At this time, the decimation calculation unit 110 includes two adders.

또한, 이산 여현 변환 장치(100)는 삼각 측량 곱셈부(120)를 통하여, 상기 버터플라이 연산이 수행된 입력데이터에 대하여, 순차적으로 이산 여현 변환 계수를 산출한다(S1010). 그리고 삼각 측량 곱셈부(120)는 2개의 다중-피연산자 덧셈기 및 2개의 덧셈기를 포함한다.In addition, the DCT unit 100 sequentially calculates discrete cosine transform coefficients for the input data subjected to the butterfly operation through the triangulation multiplier 120 (S1010). The triangulation multiplying unit 120 includes two multi-operand adders and two adders.

예를 들어, 덧셈기는 2개의 피연산자를 처리하기 위한 덧셈기이다. 또한, 다중-피연산자 덧셈기는 하나의 5개의 피연산자를 처리하기 위한 덧셈기 및 하나의 6개의 피 연산자를 처리하기 위한 덧셈기를 포함할 수 있다. 또한, 다중-피연산자 덧셈기는 복수의 캐리 저장 덧셈기(carry save adder) 트리 및 하나의 개리 예측 덧셈기 (carry propagation adder)를 포함할 수 있다.For example, the adder is an adder for processing two operands. In addition, the multi-operand adder may include an adder for processing one of the five operands and an adder for processing one of the six operands. In addition, the multi-operand adder may include a plurality of carry save adder trees and a carry propagation adder.

이때, 데시메이션 산출부(110) 및 상기 삼각 측량 곱셈부(120)는 파이프라이닝 방식으로 입력 데이터를 병렬 처리할 수 있다.At this time, the decimation calculation unit 110 and the triangulation multiplication unit 120 can process input data in parallel by a pipelining method.

이와 같이, 본 발명의 일 실시예에 따른 이산 여현 변환 장치(100) 및 방법은 기존 뢰플러 알고리즘 기반의 이산 여현 변환 장치가 25개에서 48개의 덧셈기를 사용하는 것과 달리 13개의 덧셈기 만을 사용하여, 이산 여현 변환을 수행할 수 있다. 또한, 이산 여현 변환 장치(100) 및 방법은 별도의 대수적 정수 부호 및 양자화 단계 없이 파이프라이닝에 기초한 병렬 처리에 따라 이산 여현 변환을 수행할 수 있어 효율적이다. As described above, in the DCT apparatus 100 and method according to an embodiment of the present invention, the DCT-based DCT apparatus uses twenty-four to fifty-eight adders, but uses only thirteen adders, And can perform a cosine transform. In addition, the DCT apparatus 100 and method can efficiently perform DCT according to parallel processing based on pipelining without a separate algebraic integer sign and a quantization step.

그러므로 이산 여현 변환 장치(100) 및 스마트 폰과 같은 자원의 제약이 높은 휴대용 기기에서 방법은 종래의 뢰플러 알고리즘 기반의 이산 여현 변환 장치를 대체 사용이 가능하다.Therefore, in the portable devices having high resource constraints such as the DCT apparatus 100 and the smart phone, the DCT algorithm based on the conventional Loupe algorithm can be used instead.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능한 기록 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독 가능한 기록 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.One embodiment of the present invention may also be embodied in the form of a recording medium including instructions executable by a computer, such as program modules, being executed by a computer. Computer readable media can be any available media that can be accessed by a computer, and includes both volatile and nonvolatile media, removable and non-removable media. The computer-readable recording medium may also include computer storage media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.

본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.While the methods and systems of the present invention have been described in connection with specific embodiments, some or all of those elements or operations may be implemented using a computer system having a general purpose hardware architecture.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.It will be understood by those skilled in the art that the foregoing description of the present invention is for illustrative purposes only and that those of ordinary skill in the art can readily understand that various changes and modifications may be made without departing from the spirit or essential characteristics of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single entity may be distributed and implemented, and components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

100: 이산 여현 변환 장치
110: 데시메이션 산출부
120: 삼각 측량 곱셈부
100: Discrete cosine transformer
110: decimation calculation unit
120: triangular surveying multiplication unit

Claims (8)

이산 여현 변환 장치에 있어서,
2개의 덧셈기를 포함하는 데시메이션 산출부 및
2개의 다중-피연산자 덧셈기 및 2개의 덧셈기를 포함하는 삼각 측량 곱셈부를 포함하고,
상기 데시메이션 산출부는 순차적으로 입력받은 입력 데이터에 대한 버터플라이 연산을 수행하는 것이며,
상기 삼각 측량 곱셈부는 상기 버터플라이 연산이 수행된 입력데이터에 대하여, 순차적으로 이산 여현 변환 계수를 산출하되,
상기 데시메이션 산출부 및 상기 삼각 측량 곱셈부는 파이프라이닝(pipelining) 방식으로 상기 입력 데이터를 병렬 처리하는, 이산 여현 변환 장치.
In the DC-DC converter,
A decimation calculation unit including two adders, and
A triangulation multiplier including two multi-operand adders and two adders,
Wherein the decimation calculation unit performs a butterfly operation on input data sequentially input,
Wherein the triangulation multiplier multiplies the input data on which the butterfly operation has been performed by a discrete cosine transform coefficient,
Wherein the decimation calculation unit and the triangulation multiplication unit process the input data in parallel by a pipelining method.
제 1 항에 있어서,
상기 덧셈기는 2개의 피연산자를 처리하기 위한 덧셈기이며,
상기 다중-피연산자 덧셈기는 하나의 5개의 피연산자를 처리하기 위한 덧셈기 및 하나의 6개의 피 연산자를 처리하기 위한 덧셈기를 포함하며, 복수의 캐리 저장 덧셈기(carry save adder) 트리 및 하나의 개리 예측 덧셈기 (carry propagation adder)를 포함하는 것인, 이산 여현 변환 장치.
The method according to claim 1,
The adder is an adder for processing two operands,
Wherein the multi-operand adder comprises an adder for processing one operand of five and an adder for processing one operand of six, and further comprising a plurality of carry save adder trees and a gait predictor < RTI ID = 0.0 > carry propagation adder).
제 1 항에 있어서,
상기 이산 여현 변환 장치는 뢰플러(Loeffler) 알고리즘에 기초한 것인, 이산 여현 변환 장치.
The method according to claim 1,
Wherein the DCT apparatus is based on a Loeffler algorithm.
제 1 항에 있어서,
상기 삼각 측량 곱셈부는 삼각 함수의 값에 대하여, 6개 이하의 항이 포함되도록 하는 부호화를 수행하는, 이산 여현 변환 장치.
The method according to claim 1,
Wherein the triangulation multiplier performs encoding such that six or less terms are included in the value of the trigonometric function.
제 4 항에 있어서,
상기 삼각 측량 곱셈부는 상기 6개 이하의 항이 0 또는 1 개의 음수를 포함하도록 부호화를 수행하는, 이산 여현 변환 장치.
5. The method of claim 4,
Wherein the triangulation multiplier performs encoding such that the six or less terms include zero or one negative number.
이산 여현 변환 장치의 이산 여현 변환 방법에 있어서,
데시메이션 산출부가 순차적으로 입력받은 입력 데이터에 대한 버터플라이 연산을 수행하는 단계; 및
삼각 측량 곱셈부가 상기 버터플라이 연산이 수행된 입력데이터에 대하여, 순차적으로 이산 여현 변환 계수를 산출하는 단계를 포함하되,
상기 데시메이션 산출부는 2개의 덧셈기를 포함하고,
상기 삼각 측량 곱셈부는 2개의 다중-피연산자 덧셈기 및 2개의 덧셈기를 포함하고,
상기 데시메이션 산출부 및 상기 삼각 측량 곱셈부는 파이프라이닝(pipelining) 방식으로 상기 입력 데이터를 병렬 처리하는, 이산 여현 변환 방법.
In a DCT transform method of a DCT transformer,
Performing a butterfly operation on the input data sequentially input by the decimation calculation unit; And
Wherein the triangulation multiplication unit sequentially calculates discrete cosine transform coefficients for the input data on which the butterfly operation has been performed,
Wherein the decimation calculation unit includes two adders,
Wherein the triangulation multiplier comprises two multi-operand adders and two adders,
Wherein the decimation calculation unit and the triangulation multiplication unit process the input data in parallel by a pipelining method.
제 6 항에 있어서,
상기 덧셈기는 2개의 피연산자를 처리하기 위한 덧셈기이며,
상기 다중-피연산자 덧셈기는 하나의 5개의 피연산자를 처리하기 위한 덧셈기 및 하나의 6개의 피 연산자를 처리하기 위한 덧셈기를 포함하며,
복수의 캐리 저장 덧셈기(carry save adder) 트리 및 하나의 개리 예측 덧셈기 (carry propagation adder)를 포함하는 것인, 이산 여현 변환 방법.
The method according to claim 6,
The adder is an adder for processing two operands,
Said multi-operand adder comprising an adder for processing one of the five operands and an adder for processing one of the six operands,
A plurality of carry save adder trees, and a carry propagation adder. ≪ RTI ID = 0.0 > A < / RTI >
제 6 항 및 제 7항 중 어느 한 항에 기재된 방법을 컴퓨터 상에서 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체.A computer-readable recording medium recording a program for performing the method according to any one of claims 6 and 7 on a computer.
KR1020160056997A 2016-05-10 2016-05-10 Apparatus and method for discrete cosine transform KR101722215B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160056997A KR101722215B1 (en) 2016-05-10 2016-05-10 Apparatus and method for discrete cosine transform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160056997A KR101722215B1 (en) 2016-05-10 2016-05-10 Apparatus and method for discrete cosine transform

Publications (1)

Publication Number Publication Date
KR101722215B1 true KR101722215B1 (en) 2017-03-31

Family

ID=58500982

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160056997A KR101722215B1 (en) 2016-05-10 2016-05-10 Apparatus and method for discrete cosine transform

Country Status (1)

Country Link
KR (1) KR101722215B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10997497B2 (en) 2017-09-28 2021-05-04 Samsung Electronics Co., Ltd. Calculation device for and calculation method of performing convolution
US11403516B2 (en) 2017-11-09 2022-08-02 Samsung Electronics Co., Ltd. Apparatus and method for processing convolution operation of neural network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150050680A (en) * 2013-10-30 2015-05-11 고려대학교 산학협력단 Device and method for discrete cosine transform

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150050680A (en) * 2013-10-30 2015-05-11 고려대학교 산학협력단 Device and method for discrete cosine transform

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10997497B2 (en) 2017-09-28 2021-05-04 Samsung Electronics Co., Ltd. Calculation device for and calculation method of performing convolution
US11403516B2 (en) 2017-11-09 2022-08-02 Samsung Electronics Co., Ltd. Apparatus and method for processing convolution operation of neural network

Similar Documents

Publication Publication Date Title
US10860922B2 (en) Sparse convolutional neural network accelerator
KR101036731B1 (en) Reversible transform for lossy and lossless 2-d data compression
KR101131757B1 (en) Transform design with scaled and non-scaled interfaces
CA2653692C (en) Reduction of errors during computation of inverse discrete cosine transform
JP3964765B2 (en) Improved block transform and quantization for image and video coding
JP5113067B2 (en) Efficient multiplication-free computation for signal and data processing
CN101375274B (en) Transforms with common factors
KR100331136B1 (en) A computer system performing an inverse cosine transfer function for use with multimedia information
US20130195177A1 (en) Method and device for the transformation and method and device for the reverse transformation of images
US20140072240A1 (en) Method and apparatus for converting an image, and method and apparatus for inverse converting an image
KR20090071823A (en) Arithmetic apparatus for multi-function unit and method
KR101722215B1 (en) Apparatus and method for discrete cosine transform
RU2009102250A (en) ERROR REDUCTION DURING CALCULATION OF REVERSE DISCRETE COSINUS TRANSFORMATION
KR101527103B1 (en) Device and method for discrete cosine transform
WO2001008001A1 (en) Integer discrete cosine transform using integer operations
JP6555814B2 (en) Orthogonal transformation processing device, inverse orthogonal transformation processing device, encoding device, decoding device, and computer program
Kunchigi et al. Simulation of Vedic multiplier in DCT applications
Wahid et al. Error-free arithmetic for discrete wavelet transforms using algebraic integers
CN101729886B (en) Method, system and device for decoding videos
CN104113763A (en) Optimized integer transform radix applied to image coding
Nageswari et al. Design of a scalable approximate DCT architecture for efficient HEVC compliant video coding applications
Schmalz et al. Limits on computational precision of image compression transformations
US20190166383A1 (en) Reduced multiplicative complexity discrete cosine transform (dct) circuitry
CN102281445A (en) Video coding 8*8 integer transformation method
CN110264412A (en) Image processing method, device, terminal device and storage medium

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20200106

Year of fee payment: 4