KR100790534B1 - Signal processing method and apparatus for fast convolution using an overlap save scheme based on qdft - Google Patents

Signal processing method and apparatus for fast convolution using an overlap save scheme based on qdft Download PDF

Info

Publication number
KR100790534B1
KR100790534B1 KR1020060072602A KR20060072602A KR100790534B1 KR 100790534 B1 KR100790534 B1 KR 100790534B1 KR 1020060072602 A KR1020060072602 A KR 1020060072602A KR 20060072602 A KR20060072602 A KR 20060072602A KR 100790534 B1 KR100790534 B1 KR 100790534B1
Authority
KR
South Korea
Prior art keywords
sample
fourier transform
result
data block
quadrature
Prior art date
Application number
KR1020060072602A
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 KR1020060072602A priority Critical patent/KR100790534B1/en
Application granted granted Critical
Publication of KR100790534B1 publication Critical patent/KR100790534B1/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/141Discrete Fourier transforms
    • 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
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/4806Computations with complex numbers

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Discrete Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

A signal processing apparatus and method employing a convolution overlap-save scheme are provided to perform a QDFT(Quarter Discrete Fourier Transform) coefficient operation only on a new sample by using a filtering result for a previous sample existing in a single data block. A filtering result of the first sample inputted to a data block is stored in a buffer(S300). When the second sample is inputted to the data block, a half of the second sample is filled in the data block(S302). A QDFT coefficient of the data block filled with a half of the second sample and that of a filter are calculated(S304,S306). The calculated QDFT coefficients are multiplied by a multiplier and then converted into time domains by using IQDFT(Inverse QDFT)(S308). A real number part of the converted result and the filtering result value of the first sample stored in the buffer are added by an adder to obtain an output(S310).

Description

컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치 및 방법{SIGNAL PROCESSING METHOD AND APPARATUS FOR FAST CONVOLUTION USING AN OVERLAP SAVE SCHEME BASED ON QDFT}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a signal processing apparatus and a signal processing method using a convolution superposition-

도 1은 종래의 컨벌루션(convolution) 중첩-보류(overlap-save) 기법이 적용되는 신호처리 기술을 설명하는 블록도,1 is a block diagram illustrating a signal processing technique to which a conventional convolution overlap-save technique is applied;

도 2는 본 발명의 바람직한 실시예에 따른 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치에 대한 블록도,2 is a block diagram of a signal processing apparatus to which a convolution overlap-hold technique according to a preferred embodiment of the present invention is applied;

도 3은 본 발명의 바람직한 실시예에 따른 컨벌루션 중첩-보류 기법이 적용되는 신호처리 과정의 순서도.3 is a flowchart of a signal processing process to which a convolution overlap-hold technique according to a preferred embodiment of the present invention is applied.

<도면의 주요 부분에 대한 부호의 설명>Description of the Related Art

200 : 데이터 블록 202 : 필터200: data block 202: filter

204 : 곱셈기 206 : 버퍼204: multiplier 206: buffer

208 : 덧셈기 210 : 출력 블록208: adder 210: output block

본 발명은 신호처리 기술에 관한 것으로, 특히 이산 푸리에 변환(Discrete Fourier Transform : 이하 DFT라 약칭함)을 이용하여 컨벌루션(convolution)을 수행함에 있어 계산량을 줄이는데 적합한 컨벌루션 중첩-보류(overlap-save) 기법이 적용되는 신호처리 장치 및 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a signal processing technique and, more particularly, to an overlap-save technique suitable for reducing a calculation amount in performing convolution using Discrete Fourier Transform (DFT) To a signal processing apparatus and method to which the present invention is applied.

신호처리 분야에서 신호의 주파수 특성을 변화시키는 과정을 필터링이라고 하며, 이 필터링은 수학적으로 다음 [수학식 1]과 같은 컨벌루션으로 표현될 수 있다.The process of changing the frequency characteristics of a signal in the field of signal processing is called filtering, and this filtering can be expressed mathematically as convolution such as the following [Equation 1].

[수학식 1][Equation 1]

Figure 112006055434494-pat00001
Figure 112006055434494-pat00001

[수학식 1]에서 y는 변환된 신호를, f는 필터를, N은 필터의 길이를, 그리고 x는 입력신호를 각각 뜻한다. 이러한 컨벌루션은 DFT를 이용하여 구현하면 그 계산량을 줄일 수 있다. DFT는 시간 영역에서의 컨벌루션은 주파수 영역에서의 곱셈으로 구현할 수 있기 때문이다.In Equation (1), y denotes a converted signal, f denotes a filter, N denotes a length of a filter, and x denotes an input signal. These convolutions can be reduced by using DFT. This is because the DFT can be implemented by multiplying the convolution in the time domain by the frequency domain.

컨벌루션을 주파수 영역에서 구현하는 방법으로는 중첩-가산(overlap-add) 기법과 중첩-보류 기법이 있는데, 여기서 중첩 보류 기법을 설명하면 다음과 같다.The convolution is implemented in the frequency domain by the overlap-add technique and the overlap-hold technique. Here, the overlap pending technique will be described as follows.

중첩-보류 기법에서는 샘플들이 입력으로 들어오면 특정 길이의 블록에 샘플들을 채운 다음, 그 블록과 필터를 주파수 영역에서 컨벌루션을 수행하여 출력을 구한다. 그리고 새로운 샘플들이 들어오면 블록에 기존의 샘플의 절반을 남겨두고 나머지 절반은 새로운 샘플들로 채워, 같은 과정을 되풀이 한다. 즉, 연속되는 블록들은 항상 절반의 샘플만큼 겹치게 된다.In the overlap-hold technique, when samples are input, the samples are filled in a block of a specific length, and the output is obtained by convolving the block and the filter in the frequency domain. When new samples come in, half of the existing sample is left in the block and the other half is filled with the new samples, repeating the same process. That is, consecutive blocks are always overlapped by half of the samples.

도 1은 종래의 컨벌루션 중첩-보류 기법이 적용되는 신호처리 기술을 설명하는 블록도로서, 데이터 블록(100), 필터(102), 곱셈기(104), 출력 블록(106)을 포함한다.FIG. 1 is a block diagram illustrating a signal processing technique to which a conventional convolutional superposition-hold technique is applied, including a data block 100, a filter 102, a multiplier 104, and an output block 106.

도 1을 참조하여 종래의 중첩-보류 기법이 적용된 주파수 영역에서의 컨벌루션 과정을 설명하면 다음과 같다.The convolution process in the frequency domain to which the conventional superposition-hold technique is applied will be described with reference to FIG.

도 1에 도시한 바와 같이, 입력 신호의 제 1 샘플을 하나의 데이터 블록(100)에 채운 다음, 데이터 블록(100)의 DFT 계수와 필터(102)의 DFT 계수를 연산한다.As shown in FIG. 1, a first sample of an input signal is filled into a data block 100, and a DFT coefficient of the data block 100 and a DFT coefficient of the filter 102 are calculated.

이후, 곱셈기(104)를 통해 연산된 각각의 DFT 계수를 곱한 후 역 이산 푸리에 변환(Inverse Discrete Fourier Transform : 이하 IDFT라 약칭함)을 이용하여 필터링 결과를 시간 영역으로 변환함으로써 출력(106)을 구한다. 이를 수식으로 표현하면 다음 [수학식 2]와 같다.Thereafter, the output 106 is obtained by multiplying the respective DFT coefficients calculated through the multiplier 104 and transforming the filtering result into a time domain using an inverse discrete Fourier transform (hereinafter referred to as IDFT) . This can be expressed by the following equation (2).

[수학식 2]&Quot; (2) &quot;

Figure 112006055434494-pat00002
Figure 112006055434494-pat00002

여기서, D는 DFT 매트릭스를, F는 필터(102)의 DFT 계수를, 그리고 X는 입력 데이터 블록(100)의 DFT 계수를 각각 나타낸다.Here, D represents the DFT matrix, F represents the DFT coefficient of the filter 102, and X represents the DFT coefficient of the input data block 100, respectively.

이때, 데이터 블록(100)으로 제 2 샘플이 입력되면, 제 1 샘플의 1/2을 데이터 블록(100)에 남겨두고 제 2 샘플의 1/2을 데이터 블록(100)에 채운다.At this time, when the second sample is input to the data block 100, half of the first sample is left in the data block 100, and half of the second sample is filled in the data block 100.

이후, 제 1 샘플의 1/2과 상기 제 2 샘플의 1/2로 채워진 데이터 블록(100) 의 DFT 계수와 필터(102) DFT 계수를 연산하며, 연산된 각각의 DFT 계수를 곱셈기(104)에서 곱한 후 IDFT를 이용하여 시간 영역으로 변환함으로써 출력(106)을 구한다.Then, the DFT coefficient of the data block 100 filled with 1/2 of the first sample and 1/2 of the second sample and the filter 102 DFT coefficient are calculated, and the calculated DFT coefficients are multiplied by the multiplier 104, And then converts it into a time domain using IDFT to obtain an output 106. [

이와 같이, 종래의 컨벌루션 중첩-보류 기법이 적용되는 신호처리 기술에서는, 새로운 샘플이 입력될 때마다 이전 샘플에 대한 중복되는(이전 샘플의 1/2) DFT 계수 연산이 필요할 수밖에 없다.As described above, in the signal processing technique using the conventional convolutional superposition-suspend technique, it is necessary that a duplicate (1/2 of the previous sample) DFT coefficient operation is required for the previous sample every time a new sample is input.

이는 신호처리 시스템에서의 신호처리 계산량이 과다하게 될 뿐만 아니라, 전체 시스템 부하가 커진다는 결과를 낳게 된다.This results in not only an excessive amount of signal processing in the signal processing system but also an increase in the overall system load.

본 발명은 상술한 종래 기술의 문제를 해결하기 위한 것으로, 하나의 데이터 블록 내에 존재하는 이전 샘플에 대한 필터링 결과를 이용하여 새로운 샘플에 대해서만 사분 이산 푸리에 변환(Quarter Discrete Fourier Transform : 이하 QDFT라 약칭함) 계수 연산을 수행함으로써, 신호처리 계산량 및 전체 시스템 부하를 줄일 수 있는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치 및 방법을 제공하는데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems of the conventional art, and it is an object of the present invention to provide a method and apparatus for performing quadrature discrete Fourier transform (hereinafter abbreviated as QDFT) on new samples using filtering results for previous samples existing in one data block. ) Counting operation, thereby reducing the amount of signal processing computation and the overall system load, and to provide a signal processing apparatus and method to which the convolution overlap-hold technique is applied.

이러한 목적을 달성하기 위한 본 발명의 일 관점에 따르면, 컨벌루션 중첩-보류 기법이 적용되는 신호처리 방법으로서, 데이터 블록으로 입력되는 제 1 샘플의 필터링 결과 값을 버퍼에 저장하는 단계와, 상기 데이터 블록으로 제 2 샘플이 입력되면 상기 제 2 샘플의 1/2을 상기 데이터 블록에 채우는 단계와, 상기 제 2 샘플의 1/2로 채워진 데이터 블록의 사분 이산 푸리에 변환 계수와 상기 필터의 사 분 이산 푸리에 변환 계수를 연산하는 단계와, 상기 연산된 각각의 사분 이산 푸리에 변환 계수를 곱한 후 역 사분 이산 푸리에 변환을 이용하여 시간 영역으로 변환하는 단계와, 상기 변환된 결과의 실수 부분과 상기 버퍼에 저장된 필터링 결과 값을 가산하여 출력을 구하는 단계를 포함하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 방법을 제공한다.According to an aspect of the present invention, there is provided a signal processing method using a convolution superposition-suspend technique, the method comprising: storing a filtering result of a first sample input into a data block in a buffer; Filling the data block with a half of the second sample if the second sample is input; dividing the quadrature discrete Fourier transform coefficient of the half-filled data block of the second sample by a second discrete Fourier transform Transforming the real part of the transformed result into a time domain by performing a reverse quadrature discrete Fourier transform after multiplying each of the calculated quadrature Fourier transform coefficients by a transform coefficient, And adding the resultant value to obtain an output, wherein the convolutional superposition-suspending technique is applied to the signal processing method .

본 발명의 목적을 달성하기 위한 다른 관점에 따르면, 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치로서, 입력되는 샘플의 1/2로만 채워지는 서브 블록 개념의 데이터 블록과, 상기 데이터 블록 사분 이산 푸리에 변환 계수와 필터의 사분 이산 푸리에 변환 계수를 곱하는 곱셈기와, 역 사분 이산 푸리에 변환을 이용하여 상기 곱셈기에서의 곱셈 결과가 시간 영역으로 변환되어 저장되는 버퍼와, 상기 곱셈기를 통해 역 사분 이산 푸리에 변환된 결과의 실수 부분과 상기 버퍼에 저장된 변환 결과를 가산하는 덧셈기와, 상기 덧셈기의 덧셈 결과를 출력으로 처리하는 출력 블록을 포함하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치를 제공한다.According to another aspect of the present invention, there is provided a signal processing apparatus to which a convolution overlap-hold technique is applied, comprising: a data block of a sub-block concept which is filled only with 1/2 of an input sample; A multiplier for multiplying a Fourier transform coefficient by a quadrature discrete Fourier transform coefficient of the filter, a buffer for storing a result of multiplication in the multiplier by using a quadrature discrete Fourier transform and storing the result of the multiplication in a time domain, And an output block for processing the addition result of the adder as an output. The present invention also provides a signal processing apparatus to which a convolution superposition-retention technique is applied, comprising an adder for adding a real part of a result to a conversion result stored in the buffer, and an output block for processing an addition result of the adder as an output.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세하게 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

실시예의 설명에 앞서, 본 발명의 핵심 기술 요지는, 중첩-보류 기법이 적용되는 신호처리 기술에서 하나의 블록 내에 존재하는 기존 샘플들에 대한 필터링은 이전 단계에서 이미 수행되었다는 사실을 이용하여 현재 블록에 대한 필터링을 수 행할 때 이전 블록에서 이미 계산한 결과만을 이용한다는 것이다. 즉, 본 발명은, 하나의 블록 내에 존재하는 기존의 샘플들과 새로이 입력되는 샘플들에 대한 필터링 과정을 각각 분리한 다음, 현재 단계의 기존 샘플에 대한 필터링은 수행하지 않고 이전 단계에서 구한 필터링 결과를 이용(새로 입력된 샘플들에 대한 DFT 계수 연산만을 수행)하여 전체 계산량을 줄인다는 것으로, 이러한 기술 사상으로부터 본 발명의 목적으로 하는 바를 용이하게 달성할 수 있을 것이다.Prior to the description of the embodiments, a key point of the present invention is that, in the signal processing technique using the overlap-hold technique, filtering of existing samples existing in one block is performed in the previous step, It is only used in the previous block. That is, according to the present invention, the filtering process for the existing samples existing in one block and the newly inputted samples are respectively separated, and then the filtering is not performed for the existing samples at the current stage, (Only DFT coefficient calculation is performed on newly input samples), thereby reducing the total amount of calculations. From this technical idea, the object of the present invention can be easily achieved.

도 2는 본 발명의 바람직한 실시예에 따른 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치에 대한 블록도로서, 데이터 블록(200), 필터(202), 곱셈기(204), 버퍼(206), 덧셈기(208), 출력 블록(210)을 포함한다.FIG. 2 is a block diagram of a signal processing apparatus to which a convolution superposition-hold technique according to a preferred embodiment of the present invention is applied, including a data block 200, a filter 202, a multiplier 204, a buffer 206, (208), and an output block (210).

도 2에 도시한 바와 같이, 데이터 블록(200)은 중첩-보류 기법에서의 블록의 절반, 즉 새로 입력되는 샘플들로 이루어진 서브 블록(sub-block)을 의미한다. 중첩-보류 기법에서는 처음 절반의 샘플은 왜곡되어 있으므로 뒤 절반만 출력으로 취한다.As shown in FIG. 2, the data block 200 means a half of a block in the overlap-hold technique, that is, a sub-block composed of newly input samples. In the overlap-hold technique, the first half of the sample is distorted, so only the back half is taken as the output.

곱셈기(204)는 데이터 블록(200)의 QDFT 계수와 필터(202)의 QDFT 계수를 곱하는 역할을 한다. 곱셈기(204)에서의 곱셈 결과는 IQDFT를 이용하여 시간 영역으로 변환되고 그 필터링 결과는 버퍼(206)에 저장된다.The multiplier 204 multiplies the QDFT coefficients of the data block 200 and the QDFT coefficients of the filter 202. The result of the multiplication in the multiplier 204 is converted into a time domain using IQDFT and the result of the filtering is stored in the buffer 206. [

버퍼(206)는 초기 샘플의 버퍼링 결과가 저장되는 수단으로서, 이렇게 버퍼(206)에 저장된 필터링 결과값이 새로운 샘플의 변환 결과의 실수 부분과 가산되어 출력될 수 있다. 또한, 버퍼(206)에는 새로운 샘플의 변환 결과의 허수 부분이 저장되어 다음 단계의 샘플의 필터링에 활용될 수 있다.The buffer 206 is a means by which the buffering result of the initial sample is stored. Thus, the filtering result stored in the buffer 206 can be added to and outputted from the real part of the conversion result of the new sample. In addition, an imaginary part of the conversion result of the new sample is stored in the buffer 206 and can be utilized for filtering the sample of the next step.

덧셈기(208)는 곱셈기(204)를 통해 IQDFT 변환된 결과의 실수 부분과 버퍼(206)에 저장된 필터링 결과값을 가산하여 출력 블록(210)으로 제공하는 역할을 한다.The adder 208 adds the real part of the IQDFT-transformed result through the multiplier 204 and the filtering result stored in the buffer 206, and provides the result to the output block 210.

이러한 출력 블록(210)의 결과 값은 다음 [수학식 3]으로 표현될 수 있다.The resulting value of this output block 210 may be expressed as: &lt; EMI ID = 3.0 &gt;

[수학식 3]&Quot; (3) &quot;

Figure 112006055434494-pat00003
Figure 112006055434494-pat00003

여기서, y는 출력 샘플을,

Figure 112006055434494-pat00004
은 M by M IQDFT 매트릭스를,
Figure 112006055434494-pat00005
는 필터의 QDFT 계수를,
Figure 112006055434494-pat00006
는 기존 샘플에 대한 QDFT 계수를, 그리고
Figure 112006055434494-pat00007
는 새로 입력되는 샘플에 대한 QDFT 계수를 나타낸다. 또한, Re{}는 실수(Real Number) 부분을, Im{}은 허수(Imaginary Number) 부분을 각각 나타낸다.Where y is the output sample,
Figure 112006055434494-pat00004
RTI ID = 0.0 &gt; M by M IQDFT &lt; / RTI &
Figure 112006055434494-pat00005
The QDFT coefficient of the filter,
Figure 112006055434494-pat00006
Is the QDFT coefficient for the existing sample, and
Figure 112006055434494-pat00007
Represents a QDFT coefficient for a newly input sample. Re {} denotes a real number part, and Im {} denotes an imaginary number part.

그리고 QDFT는 다음 [수학식 4]와 같이 정의될 수 있다.The QDFT can be defined as the following equation (4).

[수학식 4]&Quot; (4) &quot;

Figure 112006055434494-pat00008
Figure 112006055434494-pat00008

[수학식 3]을 살펴보면, 출력이 기존 샘플에 대한 식

Figure 112006055434494-pat00009
과 새로 입력된 샘플에 대한 식
Figure 112006055434494-pat00010
으로 표현됨을 알 수 있다. 여기서 중첩-보류 기법에서는 뒤의 절반만 올바른 샘플이므로
Figure 112006055434494-pat00011
Figure 112006055434494-pat00012
만을 올바른 출력으로 간주한다.Referring to Equation (3), if the output is expressed by Equation
Figure 112006055434494-pat00009
And the equation for the newly input sample
Figure 112006055434494-pat00010
As shown in Fig. Here, in the nested-hold technique, only the back half is the correct sample
Figure 112006055434494-pat00011
Wow
Figure 112006055434494-pat00012
Only the correct output.

이때, 기존 샘플에 대한 결과는 이전 단계에서 이미 구했으므로, 본 실시예에서는 새로 입력되는 샘플에 대한 식만 가산하면 원하는 출력 결과를 구할 수 있다.At this time, since the results of the existing samples have already been obtained in the previous step, in this embodiment, desired output results can be obtained by adding only the equations for the newly inputted samples.

이하, 상술한 도 2와 함께, 발명의 바람직한 실시예에 따른 컨벌루션 중첩-보류 기법이 적용되는 신호처리 과정을 첨부한 도 3의 흐름도를 참조하여 보다 상세히 설명하기로 한다.Hereinafter, with reference to FIG. 2, a signal processing process using a convolution superposition-hold technique according to a preferred embodiment of the present invention will be described in detail with reference to the flowchart of FIG.

먼저, 단계(S300)에서는 데이터 블록(200)으로 입력되는 제 1 샘플의 필터링 결과를 버퍼(206)에 저장한다. 이러한 필터링 결과는 상술한 바와 같이, 입력신호의 제 1 샘플을 데이터 블록(200)에 채운 다음, 데이터 블록(200)의 QDFT 계수와 필터(202)의 QDFT 계수를 연산하고, 연산된 각각의 QDFT 계수를 곱한 후 IQDFT를 이용하여 시간 영역으로 변환함으로써 구현될 수 있다.First, in step S300, the filtering result of the first sample input to the data block 200 is stored in the buffer 206. [ The filtering result is obtained by filling the data block 200 with the first sample of the input signal and then computing the QDFT coefficient of the data block 200 and the QDFT coefficient of the filter 202, By multiplying the coefficients and then transforming them into the time domain using IQDFT.

이때, 단계(S302)에서와 같이, 데이터 블록(200)으로 제 2 샘플이 입력되면, 상기 제 2 샘플의 1/2을 데이터 블록(200)에 채운다.At this time, if a second sample is input to the data block 200, as in step S302, half of the second sample is filled in the data block 200. [

이후, 단계(S304) 및 단계(S306)에서는 제 2 샘플의 1/2로 채워진 데이터 블록(200)의 QDFT 계수와 필터(202)의 QDFT 계수를 연산한다.Thereafter, in steps S304 and S306, the QDFT coefficient of the data block 200 filled with 1/2 of the second sample and the QDFT coefficient of the filter 202 are calculated.

그리고 단계(S308)에서는, 연산된 각각의 QDFT 계수를 곱셈기(204)를 통해 곱한 후 IQDFT를 이용하여 시간 영역으로 변환한다.In step S308, each of the calculated QDFT coefficients is multiplied by a multiplier 204, and is converted into a time domain using IQDFT.

이렇게 변환된 결과의 실수 부분과 상기 버퍼(206)에 저장된 제 1 샘플의 필터링 결과 값을 덧셈기(208)를 통해 가산하여 출력(210)을 구한다(S310). 즉, 본 실시예에서는, 이전 샘플에 대한 필터링 결과

Figure 112006055434494-pat00013
가 버퍼(206)에 이미 저장되어 있기 때문에, 새로 입력된 샘플에 대한 필터링 연산
Figure 112006055434494-pat00014
만 수행하고, 단지 버퍼(206)의 필터링 결과
Figure 112006055434494-pat00015
를 가산함으로써 출력 결과를 얻을 수 있다.The real part of the converted result and the filtered result of the first sample stored in the buffer 206 are added through an adder 208 to obtain an output 210 (S310). That is, in this embodiment, the filtering result for the previous sample
Figure 112006055434494-pat00013
Is already stored in the buffer 206, the filtering operation
Figure 112006055434494-pat00014
Only the filtering results of the buffer 206
Figure 112006055434494-pat00015
The output result can be obtained.

한편, 상기 제 2 샘플의 변환된 결과의 허수 부분은 버퍼(206)에 저장되는데, 이는 다음 단계, 예컨대 제 3 샘플이 입력된 경우의 출력 결과를 얻기 위해서이다.On the other hand, the imaginary part of the transformed result of the second sample is stored in the buffer 206, in order to obtain the output result in the next step, for example, when the third sample is input.

본 발명에 따른 컨벌루션 중첩-보류 기법이 적용되는 신호처리 기술에서는 계산량이 획기적으로 줄어들 수 있는데, 이를 종래의 신호처리 기술과 비교하면 다음 [표 1]과 같다.In the signal processing technique using the convolution superposition-hold technique according to the present invention, the amount of computation can be drastically reduced. The comparison with the conventional signal processing technology is as shown in Table 1 below.

[표 1][Table 1]

MultiplicationsMultiplications AdditionsAdditions 종래의 신호처리 방법Conventional signal processing method

Figure 112006055434494-pat00016
Figure 112006055434494-pat00016
Figure 112006055434494-pat00017
Figure 112006055434494-pat00017
본 실시예에 따른 신호처리 방법The signal processing method according to this embodiment
Figure 112006055434494-pat00018
Figure 112006055434494-pat00018
Figure 112006055434494-pat00019
Figure 112006055434494-pat00019

[표 1]에서 알 수 있는 바와 같이, 두 알고리즘에 필요한 곱셈의 숫자와 덧셈의 숫자를 구하고, 블록의 길이가 N일 때의 각각의 계산량을 비교해 보면, 본 실시예에 따른 신호처리 방법에서 계산량이 현저히 줄어들었음을 알 수 있다.As can be seen from [Table 1], when the number of multiplications and the number of additions required for the two algorithms are obtained and the amounts of calculation when the length of the block is N are compared, Is significantly reduced.

본 발명에 의하면, 하나의 데이터 블록 내에 존재하는 이전 샘플에 대한 필터링 결과를 이용하여 새로운 샘플에 대해서만 QDFT 계수 연산을 수행함으로써, 신호처리 계산량 및 전체 시스템 부하를 줄일 수 있다.According to the present invention, the QDFT coefficient operation is performed only on a new sample using the filtering result on the previous sample existing in one data block, thereby reducing the signal processing calculation amount and the overall system load.

이상, 본 발명의 실시예에 대해 상세히 기술하였으나 본 발명은 이러한 실시예에 국한되는 것은 아니며, 후술하는 청구범위에 기재된 본 발명의 기술적 사상과 범주내에서 당업자로부터 여러 가지 변형이 가능함은 물론이다.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, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.

Claims (9)

컨벌루션 중첩-보류 기법이 적용되는 신호처리 방법으로서,A signal processing method to which a convolution overlap-hold technique is applied, 데이터 블록으로 입력되는 제 1 샘플의 필터링 결과 값을 버퍼에 저장하는 단계와,Storing a filtering result of a first sample input into a data block in a buffer; 상기 데이터 블록으로 제 2 샘플이 입력되면 상기 제 2 샘플의 1/2을 상기 데이터 블록에 채우는 단계와,Filling a data block with a half of the second sample if a second sample is input to the data block; 필터의 사분 이산 푸리에 변환 계수와 상기 제 2 샘플의 1/2로 채워진 데이터 블록의 사분 이산 푸리에 변환 계수를 연산하는 단계와,Calculating a quadrant Fourier transform coefficient of the filter and a quadrature Fourier transform coefficient of a data block filled with 1/2 of the second sample; 상기 연산된 각각의 사분 이산 푸리에 변환 계수를 곱한 후 역 사분 이산 푸리에 변환을 이용하여 시간 영역으로 변환하는 단계와,Multiplying the calculated quadrature Fourier transform coefficients by the calculated quadrature discrete Fourier transform coefficients, and then performing a reverse quadrature discrete Fourier transform into the time domain; 상기 변환된 결과의 실수 부분과 상기 버퍼에 저장된 필터링 결과 값을 가산하여 출력을 구하는 단계Adding the real part of the transformed result to the filtering result stored in the buffer to obtain an output 를 포함하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 방법.Wherein the convolution superposition-suspend technique is applied. 제 1 항에 있어서,The method according to claim 1, 상기 제 1 샘플의 필터링 결과 값을 버퍼에 저장하는 단계는,Wherein the step of storing the filtering result of the first sample in the buffer comprises: 입력신호의 제 1 샘플을 상기 데이터 블록에 채우고, 상기 데이터 블록의 사분 이산 푸리에 변환 계수와 상기 필터의 사분 이산 푸리에 변환 계수를 연산하는 단계와,Filling the data block with a first sample of the input signal, computing a quadrature Fourier transform coefficient of the data block and a quadrature Fourier transform coefficient of the filter, 상기 연산된 각각의 사분 이산 푸리에 변환 계수를 곱한 후 역 사분 이산 푸리에 변환을 이용하여 시간 영역으로 변환하고 그 필터링 결과를 상기 버퍼에 저장하는 단계를 포함하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 방법.And multiplying the calculated quadrature Fourier transform coefficients by the calculated quadrature discrete Fourier transform coefficients, and then transforming the quadrature discrete Fourier transform coefficients to a time domain using the inverse quadrature discrete Fourier transform and storing the filtered results in the buffer. . 제 1 항에 있어서,The method according to claim 1, 상기 방법은,The method comprises: 상기 제 2 샘플의 변환된 결과의 허수 부분이 상기 버퍼에 저장되는 것을 특징으로 하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 방법.Wherein an imaginary part of the transformed result of the second sample is stored in the buffer. 제 1 항에 있어서,The method according to claim 1, 상기 변환된 결과의 실수 부분과 상기 버퍼에 저장된 필터링 결과 값을 가산하여 출력되는 결과는,The result of adding the real part of the transformed result to the filtering result stored in the buffer,
Figure 112007078402170-pat00020
로 표현되며,
Figure 112007078402170-pat00020
Lt; / RTI &gt;
상기
Figure 112007078402170-pat00021
는 상기 제 1 샘플의 필터링 결과,
remind
Figure 112007078402170-pat00021
As a result of the filtering of the first sample,
상기
Figure 112007078402170-pat00022
는 상기 제 2 샘플의 사분 이산 푸리에 변환 계수 연산 결과,
remind
Figure 112007078402170-pat00022
Is a result of quadrature discrete Fourier transform coefficient calculation of the second sample,
상기
Figure 112007078402170-pat00030
은 M by M 역 사분 이산 푸리에 변환 매트릭스,
remind
Figure 112007078402170-pat00030
M by M inverse quadrature discrete Fourier transform matrix,
상기
Figure 112007078402170-pat00031
는 필터의 사분 이산 푸리에 변환 계수(상기
Figure 112007078402170-pat00032
는 필터, 상기
Figure 112007078402170-pat00033
는 사분 이산 푸리에 변환 계수),
remind
Figure 112007078402170-pat00031
Quot; is the quadrature discrete Fourier transform coefficient of the filter
Figure 112007078402170-pat00032
A filter,
Figure 112007078402170-pat00033
Is a quadratic discrete Fourier transform coefficient),
상기
Figure 112007078402170-pat00034
는 상기 제 1 샘플에 대한 사분 이산 푸리에 변환 계수(상기
Figure 112007078402170-pat00035
는 이전 샘플),
remind
Figure 112007078402170-pat00034
Is a quadrature discrete Fourier transform coefficient for the first sample
Figure 112007078402170-pat00035
Is the previous sample),
상기
Figure 112007078402170-pat00036
는 상기 제 2 샘플에 대한 사분 이산 푸리에 변환 계수(상기
Figure 112007078402170-pat00037
는 새로 입력된 샘플),
remind
Figure 112007078402170-pat00036
Is a quadrature discrete Fourier transform coefficient for the second sample
Figure 112007078402170-pat00037
Is a newly inputted sample),
상기 Re{}는 실수 부분,The Re {} is a real part, 상기 Im{}은 허수 부분Im {} is an imaginary part 인 것을 특징으로 하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 방법.And a convolutional superposition-suspend technique is applied.
삭제delete 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치로서,A signal processing apparatus to which a convolution overlap-hold technique is applied, 입력되는 샘플의 1/2로만 채워지는 서브 블록 개념의 데이터 블록과,A data block of a sub-block concept which is filled only with 1/2 of the input sample, 상기 데이터 블록의 사분 이산 푸리에 변환 계수와 필터의 사분 이산 푸리에 변환 계수를 곱하는 곱셈기와,A multiplier for multiplying a quadrant Fourier transform coefficient of the data block by a quadrature Fourier transform coefficient of the filter, 역 사분 이산 푸리에 변환을 이용하여 상기 곱셈기에서의 곱셈 결과가 시간 영역으로 변환되어 저장되는 버퍼와,A buffer in which the multiplication result in the multiplier is converted into a time domain using the inverse quadrature discrete Fourier transform and stored, 상기 곱셈기를 통해 역 사분 이산 푸리에 변환된 결과의 실수 부분과 상기 버퍼에 저장된 변환 결과를 가산하는 덧셈기와,An adder for adding the real part of the result of the inverse quadrature discrete Fourier transform through the multiplier and the transform result stored in the buffer, 상기 덧셈기의 덧셈 결과를 출력으로 처리하는 출력 블록An output block for processing the addition result of the adder as an output; 을 포함하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치.Wherein the convolution superposition-suspend technique is applied. 제 6 항에 있어서,The method according to claim 6, 상기 버퍼에는 제 1 샘플의 필터링 결과값이 저장되며, 제 2 샘플의 변환 결과의 허수 부분이 저장되어 다음 단계의 샘플의 필터링에 활용되는 것을 특징으로 하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치.Wherein the filtering result of the first sample is stored in the buffer and the imaginary part of the conversion result of the second sample is stored and used for filtering the sample of the next step. . 제 6 항에 있어서,The method according to claim 6, 상기 덧셈기는 상기 버퍼에 저장된 제 1 샘플의 필터링 결과값과 제 2 샘플의 변환 결과의 실수 부분을 가산하는 것을 특징으로 하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치.Wherein the adder adds the filtered result of the first sample stored in the buffer and the real part of the transformed result of the second sample. 제 7 항 또는 제 8 항에 있어서,9. The method according to claim 7 or 8, 상기 제 1 샘플은 상기 데이터 블록에 입력된 이전 샘플이며, 상기 제 2 샘플은 상기 데이터 블록에 새로 입력되는 샘플인 것을 특징으로 하는 컨벌루션 중첩-보류 기법이 적용되는 신호처리 장치.Wherein the first sample is a previous sample input to the data block, and the second sample is a sample newly input to the data block.
KR1020060072602A 2006-08-01 2006-08-01 Signal processing method and apparatus for fast convolution using an overlap save scheme based on qdft KR100790534B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060072602A KR100790534B1 (en) 2006-08-01 2006-08-01 Signal processing method and apparatus for fast convolution using an overlap save scheme based on qdft

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060072602A KR100790534B1 (en) 2006-08-01 2006-08-01 Signal processing method and apparatus for fast convolution using an overlap save scheme based on qdft

Publications (1)

Publication Number Publication Date
KR100790534B1 true KR100790534B1 (en) 2008-01-02

Family

ID=39216305

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060072602A KR100790534B1 (en) 2006-08-01 2006-08-01 Signal processing method and apparatus for fast convolution using an overlap save scheme based on qdft

Country Status (1)

Country Link
KR (1) KR100790534B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101344858B1 (en) 2012-03-23 2013-12-24 경북대학교 산학협력단 Device and Method for Processing Image, Computer Readable Recording Medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980017405A (en) * 1996-08-30 1998-06-05 김광호 Tracking error signal generator and its method
KR20010072602A (en) * 1998-06-10 2001-07-31 클라스 노린, 쿨트 헬스트룀 A method and apparatus for digital channelisation and de-channelisation
KR20010075519A (en) * 1998-09-30 2001-08-09 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) Reduced complexity and increased flexibility modified fast convolution algorithm

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980017405A (en) * 1996-08-30 1998-06-05 김광호 Tracking error signal generator and its method
KR20010072602A (en) * 1998-06-10 2001-07-31 클라스 노린, 쿨트 헬스트룀 A method and apparatus for digital channelisation and de-channelisation
KR20010075519A (en) * 1998-09-30 2001-08-09 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) Reduced complexity and increased flexibility modified fast convolution algorithm

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101344858B1 (en) 2012-03-23 2013-12-24 경북대학교 산학협력단 Device and Method for Processing Image, Computer Readable Recording Medium

Similar Documents

Publication Publication Date Title
EP0649578B1 (en) Digital filter having high accuracy and efficiency
JP4396233B2 (en) Complex exponential modulation filter bank signal analysis method, signal synthesis method, program thereof, and recording medium thereof
Vinod et al. Low power and high-speed implementation of FIR filters for software defined radio receivers
US7756216B2 (en) Signal peak voltage suppression apparatus
US8626810B2 (en) Method and system for finite impulse response (FIR) digital filtering
EP1728319A2 (en) Low-complexity nonlinear filters
US7529788B2 (en) Digital filter design method and device, digital filter design program, and digital filter
JP5085896B2 (en) Signal peak voltage suppressor
KR100618889B1 (en) Fast Fourier Transform processor capable of reducing the size of memories
JP5065784B2 (en) In-phase component extraction method and apparatus
Hong et al. An improved approach to the cubic-spline interpolation
EP1176516A2 (en) Recursive discrete fourier transformation apparatus
EP1372085B1 (en) Method for performing fast fourier transform and inverse fast fourier transform
KR100790534B1 (en) Signal processing method and apparatus for fast convolution using an overlap save scheme based on qdft
US8010588B2 (en) Optimized multi-mode DFT implementation
US20090094304A1 (en) System and method for adaptive nonlinear filtering
JP2014127804A (en) Sampling rate conversion device and program
US8340285B2 (en) Method for efficient and zero latency filtering in a long impulse response system
US8817901B2 (en) Channel estimate interpolation circuit and method
WO2009045414A1 (en) System and method for adaptive nonlinear filtering
US6308194B1 (en) Discrete cosine transform circuit and operation method thereof
Lowdermilk et al. Finite arithmetic considerations for the FFT implemented in FPGA-based embedded processors in synthetic instruments
US20070299903A1 (en) Optimized DFT implementation
Jain et al. SQNR improvement in fixed-point FFT architecture
Zaknich Frequency Domain Adaptive Filters

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121130

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140124

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150608

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20151228

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee