QUICK REVIEW
[논문 리뷰] New Algorithms for Computing a Single Component of the Discrete Fourier Transform
Gilson Jerônimo da Silva, Ricardo M. Campello de Souza|arXiv (Cornell University)|2015. 03. 09.
Digital Filter Design and Implementation참고 문헌 8인용 수 3
한 줄 요약
이 논문은 순환 다항식을 사용하여 이산 푸리에 변환(DFT)의 단일 성분을 계산하는 데 있어 고크셀 알고리즘보다 더 낮은 곱셈 복잡도를 달성하는 두 가지 새로운 알고리즘—JCO 및 JCO-Goertzel—을 제안한다. JCO-Goertzel 알고리즘은 N 이하의 단일 DFT 성분을 계산하는 데 필요한 실수 곱셈 수를 줄여, 이 작업 분야에서 알려진 가장 효율적인 곱셈 복잡도를 가진 방법이 된다.
ABSTRACT
This paper introduces the theory and hardware implementation of two new algorithms for computing a single component of the discrete Fourier transform. In terms of multiplicative complexity, both algorithms are more efficient, in general, than the well known Goertzel Algorithm.
연구 동기 및 목표
- 특정 응용 분야에서 소수의 DFT 계수만 필요로 하는 경우를 고려해, 이산 푸리에 변환(DFT)의 단일 성분을 계산하는 데 더 효율적인 알고리즘을 개발하기 위해.
- 각 DFT 성분당 N개의 실수 곱셈을 필요로 하는 고크셀 알고리즘과 같은 기존 방법의 곱셈 복잡도를 줄이기 위해.
- 순환 다항식의 대수적 구조를 활용해 특정 경우에 곱셈이 없는 다항식 나눗셈을 가능하게 하기 위해.
- 최소한의 저장소와 계산 오버헤드를 갖는 자동회귀 필터를 사용해 제안된 알고리즘의 하드웨어 효율적인 구현을 설계하기 위해.
제안 방법
- JCO 알고리즘은 실수 위에서 $W_N^k$의 최소 다항식을 나타내는 순환 다항식 $\Phi_L(x)$를 사용한다. 여기서 $L = \textrm{ord}(W_N^k) = N / \gcd(N,k)$이다.
- 신호의 생성 다항식 $v(x)$를 $\Phi_L(x)$로 나누면 나머지 $R(x)$가 얻어지며, 이에 따라 $V_k = R(W_N^k)$가 자동회귀 필터를 통해 계산된다.
- JCO-Goertzel 알고리즘은 JCO 방법과 고크셀 방법을 조합한 것이다. JCO 나눗셈 이후 나머지를 고크셀 필터를 사용해 평가함으로써 총 곱셈 수를 $\phi(L)$로 줄인다.
- 하드웨어 구현은 $\Phi_L(z^{-1})$에서 유도된 계수를 갖는 시프트 레지스터와 피드백 필터 구조를 사용하며, $v_n$을 저장하지 않고도 순차적 입력 처리가 가능하다.
- 분자에 있는 계수 $a_j$는 사전에 계산하고 저장하며, 분모에 있는 $b_j$는 정수(0, 1, -1)이므로 곱셈이 간단하다.
- L < 105 인 경우 $\Phi_L(x)$의 계수는 \{0, 1, -1\}로만 이루어지므로, JCO 단계에서 곱셈이 필요 없게 된다.
실험 결과
연구 질문
- RQ1순환 다항식을 사용해 고크셀 알고리즘보다 더 낮은 곱셈 복잡도를 가진 DFT 성분 계산 알고리즘을 설계할 수 있는가?
- RQ2W_N^k의 최소 다항식인 $\Phi_L(x)$를 사용하면 단일 DFT 계수를 계산하는 데 필요한 실수 곱셈 수가 줄어드는가?
- RQ3JCO-Goertzel 하이브리드 알고리즘이 개별적으로 고크셀 알고리즘과 JCO 알고리즘보다 더 낮은 곱셈 복잡도를 달성할 수 있는가?
- RQ4자동회귀 필터 구조를 사용해 제안된 알고리즘을 최소한의 저장소와 계산 오버헤드로 하드웨어에 구현할 수 있는가?
주요 결과
- JCO-Goertzel 알고리즘은 단일 DFT 성분을 계산하는 데 있어 알려진 바에 비해 가장 낮은 곱셈 복잡도를 달성하며, $\phi(L)$개의 실수 곱셈만 필요로 한다. 여기서 $L = N / \gcd(N,k)$이다.
- L = 8 인 경우 1024점 DFT에서 $V_{128}$를 계산할 때 고크셀 알고리즘은 1024번의 곱셈과 2049번의 덧셈이 필요한 반면, JCO-Goertzel 알고리즘은 단지 2번의 곱셈과 1027번의 덧셈으로 충분하다.
- $\phi(L) = 2$ 인 경우 JCO-Goertzel 알고리즘은 고크셀 알고리즘으로 간소화되며, 이는 L = 3, 4, 6일 때 동일한 성능를 보이는 이유를 설명한다.
- JCO 알고리즘은 $\Phi_L(x)$의 계수가 \{0, 1, -1\}에 속할 경우 곱셈이 전혀 필요 없으며, 이는 L < 105일 때 항상 성립하므로 계산 비용을 크게 줄일 수 있다.
- 하드웨어 구현은 입력 샘플을 도착 순서로 처리하므로 전체 시퀀스 $v_n$을 저장할 필요가 없으며, 피드백 계수에 대한 곱셈은 모두 간단한 곱셈으로 처리된다.
- JCO-Goertzel 알고리즘은 각 성분이 N보다 적은 곱셈을 필요로 하므로, 총 곱셈 수가 $N^2$ 미만인 N점 DFT 계산이 가능하다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.