KR101160553B1 - 실시간 스펙트럼 연산 장치 및 방법, 그리고 실시간 스펙트럼 연산 방법을 프로그램으로 기록한 기록매체 - Google Patents

실시간 스펙트럼 연산 장치 및 방법, 그리고 실시간 스펙트럼 연산 방법을 프로그램으로 기록한 기록매체 Download PDF

Info

Publication number
KR101160553B1
KR101160553B1 KR1020110029812A KR20110029812A KR101160553B1 KR 101160553 B1 KR101160553 B1 KR 101160553B1 KR 1020110029812 A KR1020110029812 A KR 1020110029812A KR 20110029812 A KR20110029812 A KR 20110029812A KR 101160553 B1 KR101160553 B1 KR 101160553B1
Authority
KR
South Korea
Prior art keywords
dft
real
input
calculation
spectrum
Prior art date
Application number
KR1020110029812A
Other languages
English (en)
Inventor
도대원
최상문
김우식
이동훈
김형남
하창읍
김완진
Original Assignee
국방과학연구소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국방과학연구소 filed Critical 국방과학연구소
Priority to KR1020110029812A priority Critical patent/KR101160553B1/ko
Application granted granted Critical
Publication of KR101160553B1 publication Critical patent/KR101160553B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/02Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
    • G01S13/50Systems of measurement based on relative movement of target
    • G01S13/52Discriminating between fixed and moving objects or between objects moving at different speeds
    • G01S13/522Discriminating between fixed and moving objects or between objects moving at different speeds using transmissions of interrupted pulse modulated waves
    • G01S13/524Discriminating between fixed and moving objects or between objects moving at different speeds using transmissions of interrupted pulse modulated waves based upon the phase or frequency shift resulting from movement of objects, with reference to the transmitted signals, e.g. coherent MTi
    • G01S13/53Discriminating between fixed and moving objects or between objects moving at different speeds using transmissions of interrupted pulse modulated waves based upon the phase or frequency shift resulting from movement of objects, with reference to the transmitted signals, e.g. coherent MTi performing filtering on a single spectral line and associated with one or more range gates with a phase detector or a frequency mixer to extract the Doppler information, e.g. pulse Doppler radar
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S13/00Systems using the reflection or reradiation of radio waves, e.g. radar systems; Analogous systems using reflection or reradiation of waves whose nature or wavelength is irrelevant or unspecified
    • G01S13/02Systems using reflection of radio waves, e.g. primary radar systems; Analogous systems
    • G01S13/50Systems of measurement based on relative movement of target
    • G01S13/52Discriminating between fixed and moving objects or between objects moving at different speeds
    • G01S13/536Discriminating between fixed and moving objects or between objects moving at different speeds using transmission of continuous unmodulated waves, amplitude-, frequency-, or phase-modulated waves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S15/00Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems
    • G01S15/02Systems using the reflection or reradiation of acoustic waves, e.g. sonar systems using reflection of acoustic waves
    • G01S15/06Systems determining the position data of a target
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Complex Calculations (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

본 발명은 시간 영역 신호를 주파수 영역 신호로 변환하는 방법에 관한 것으로, 더욱 상세하게는, 실시간으로 수집되는 이산 신호들이 메모리에 순차적으로 입력되는 경우에, 순차적으로 입력되는 시간 영역 이산 신호들을 주파수 영역 신호로 변환하기 위하여 요구되는 연산량을 감소시키는 실시간 스펙트럼 연산 방법에 관한 것으로서, 윈도우의 이동간격에 따른 제1 DFT 단계에서의 DFT의 크기(Popt)를 결정하는 단계와, 상기 DFT의 크기(Popt)를 이용하여 새롭게 갱신되는 입력을 재배열하는 단계와, 메모리로부터 이전 연산에서 저장된 값들을 불러오는 단계와, 상기 재배열된 입력과 상기 불러온 값들을 이용하여 각 버터플라이에서 GSFFT 기법을 사용하여 연산을 수행하는 제1 DFT 단계와, 상기 연산된 결과에 대하여 DFT 연산을 통하여 일정한 주파수 대역 결과를 결합하는 제2 DFT 단계와, 상기 결합된 결과를 출력하고 다음 연산에 사용될 값들을 메모리에 저장하는 단계를 포함한다.
본 발명에 따른 실시간 스펙트럼 연산 방법을 이용하면 빠른 갱신속도를 가지는 부분 스펙트럼을 연산하는 데 있어서 요구되는 연산량을 감소시킬 수 있다.

Description

실시간 스펙트럼 연산 장치 및 방법, 그리고 실시간 스펙트럼 연산 방법을 프로그램으로 기록한 기록매체{APPARATUS AND METHOD FOR OPERATING OF REAL-TIME SPECTRUM, AND RECORDING MEDIUM FOR RECORING THE METHOD}
본 발명은 시간 영역 신호를 주파수 영역 신호로 변환하는 방법에 관한 것으로, 더욱 상세하게는, 실시간으로 수집되는 이산 신호들이 메모리에 순차적으로 입력되는 경우에, 순차적으로 입력되는 시간 영역 이산 신호들을 주파수 영역 신호로 변환하기 위하여 요구되는 연산량을 감소시키는 실시간 스펙트럼 연산 방법에 관한 것이다.
레이더나 소나(sonar)와 같은 시스템에서는 목표물을 탐지 및 추적하기 위하여 수신 신호로부터 방위정보와 거리, 도플러 천이와 같은 정보를 추출하기 위해서는 시간 영역 또는 주파수 영역에서 신호를 처리해야 하나, 채널과 잡음 같은 왜곡요소로 인해 변형된 신호에서 정보를 추출하는 것이 어렵기 때문에 주파수 영역에서의 신호처리가 선호된다. 주파수 영역 신호처리를 위해서는 신호의 주파수 스펙트럼을 연산해야 하는데, 이를 위하여 일반적으로 고속 푸리에 변환(FFT, Fast Fourier Transform)이 사용되고 있다. 그러나, 고속 푸리에 변환 알고리즘의 경우, 스펙트럼의 갱신 주기가 짧아지면 이에 비례하여 연산량이 증가하므로 많은 하드웨어 자원이 요구되고, 수신 신호의 특성이 알려져 있어 주파수 대역의 일부 정보만이 요구되는 경우에도 전대역 스펙트럼을 연산해야 하므로 불필요한 하드웨어 자원 낭비가 발생하는 문제점이 있었다.
상기 문제점에 대한 해결책으로서, Generalized Sliding FFT(GSFFT)와 같은 Sliding-FFT 기법 또는 TD(Transform Decomposition) 알고리즘과 같은 Pruning-FFT 기법이 제시될 수 있으나, 이와 같은 기법을 통해서도 상기 짧은 갱신 주기와 국부 주파수 스펙트럼 연산이 동시에 발생하는 경우에 최적화된 성능을 보장하지 못한다는 문제점이 존재한다.
따라서, 본 발명은 전술한 문제점을 해결하기 위하여 고안된 것으로서, 본 발명이 이루고자 하는 기술적 과제는, 기존의 Generalized Sliding FFT 기법과 TD(Transform Decomposition) 알고리즘의 장점을 결합하여 갱신 주기가 짧고 국부 스펙트럼을 연산할 때에도 연산량을 감소시킬 수 있는 실시간 스펙트럼 연산 방법을 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위하여 본 발명의 실시예에 따른 실시간 스펙트럼 연산 방법은 윈도우의 이동간격에 따른 제1 DFT(Discrete Fourier Transform) 단계에서의 DFT의 크기(Popt)를 결정하는 단계와, 상기 DFT의 크기(Popt)를 이용하여 새롭게 갱신되는 입력을 재배열하는 단계와, 메모리로부터 이전 연산에서 저장된 값들을 불러오는 단계와, 상기 재배열된 입력과 상기 불러온 값들을 이용하여 각 버터플라이에서 GSFFT(Generalized Sliding Fast Fourier Transform) 기법을 사용하여 연산을 수행하는 제1 DFT 단계와, 상기 연산된 결과에 대하여 DFT 연산을 통하여 일정한 주파수 대역 결과를 결합하는 제2 DFT 단계와, 상기 결합된 결과를 출력하고 다음 연산에 사용될 값들을 메모리에 저장하는 단계를 포함한다.
상술한 바와 같이 본 발명에 따른 실시간 스펙트럼 연산 방법을 이용하면 빠른 갱신속도를 가지는 부분 스펙트럼을 연산하는 데 있어서 요구되는 연산량을 감소시킬 수 있다.
도 1은 종래 기술에 따른 TD(Transform Decomposition)의 구성도이다.
도 2는 종래 기술에 따른 TD 기법에서 사용되는 시간 신호 재배열의 일실시예이다.
도 3은 종래 기술에 따른 TD 기법에서 사용되는 필터의 신호 흐름도이다.
도 4는 종래 기술에 따른 TD 기법에서 사용되는 필터를 변형한 변형 필터의 신호 흐름도이다.
도 5는 본 발명에서 제안하는 실시간 스펙트럼 연산 장치의 구성도이다.
도 6은 본 발명에서 제안하는 실시간 스펙트럼 연산 방법의 흐름도이다.
도 7은 본 발명에서 제안하는 스펙트럼 연산 모듈의 구성도이다.
도 8은 일반적인 FFT(Fast Fourier Transform) 알고리즘의 버터플라이(butterfly) 연산에 의한 주파수 응답 연산방법을 도시한 도면이다.
도 9는 상기 도 7에서 입력 윈도우가 한 샘플 이동한 경우 radix-2 FFT 알고리즘의 버터플라이 연산에 의한 주파수 응답 연산방법을 도시한 도면이다.
도 10은 상기 도 7과 상기 도 8에서 중복되는 연산이 발생한 버터플라이 부분을 도시한 도면이다.
도 11은 상기 도 9에서 중복되는 버터플라이를 제거한 GSFFT(Generalized Sliding Fast Fourier Transform) 알고리즘의 일실시예를 도시한 도면이다.
도 12는 본 발명에서 제안하는 GSFFT를 이용하여 16 포인트 FFT를 수행하는 경우의 일실시예를 나타낸 도면이다.
도 13은 본 발명에서 제안하는 방법의 연산량과 Cooley-Turkey FFT의 연산량을 비교한 도면이다.
도 14는 본 발명에서 제안하는 방법의 연산량과 기타 다른 방법에 의한 연산량을 비교한 도면이다.
이하, 첨부된 도면을 참조로 하여 발명을 상세히 설명하기로 한다.
도 1은 종래 기술에 따른 TD(Transform Decomposition)의 구성도이다. 도 1에 도시된 바와 같이, TD는 분할 정복 알고리즘에 기반하고 있으며, 제2 단계 DFT 연산부(160)에서 특정 주파수 응답만을 연산하는데 기여하는 이산 푸리에 변환(DFT, Discrete Fourier Transform)만을 연산하고, 나머지 불필요한 주파수 응답에 대한 연산은 수행하지 않음으로써 연산의 효율성을 향상시키는 방법이다.
도 1을 참조하여 TD 알고리즘에 대하여 보다 자세히 설명하면 다음과 같다. TD 알고리즘은 크게 3가지 구성을 가진다. 첫째, 입력 윈도우(110) 내의 시간 영역 이산 신호들을 재배열하는 과정으로 입력 재배열부(120)와 상기 재배열된 시간 영역 이산 신호를 저장하는 제1 단계 DFT 입력부(130)로 구성된다. 둘째, 제1 단계 DFT 연산부(140)에 저장된 값을 이용하여 제1 단계 DFT 연산을 수행하는 과정으로 제1 단계 DFT 연산부(140)와 제1 단계 DFT 연산부(140)의 결과 값을 저장하는 제2 단계 DFT 입력부(150)로 구성된다. 셋째, 제2 단계 DFT 입력부(150)에 저장된 값을 이용하여 제2 단계 DFT 연산을 수행하는 제2 단계 DFT 연산부(160)와 최종 출력을 저장하는 결과 저장부(170)로 구성된다.
상기 각 구성 및 과정에 대하여 도 2 내지 도 4를 참조하여 구체적으로 살펴보도록 한다.
도 2는 종래 기술에 따른 TD 기법에서 사용되는 시간 신호 재배열의 일실시예이다. 도 2에서는 입력 크기 N이 16이고, 제1 단계의 DFT의 크기 P와 제2 단계 DFT의 크기 Q가 각각 4인 경우를 도시하고 있다. 입력된 시간 영역 이산 신호들(121)은 수학식 1에 따라 재정렬부(122)에서 P행 Q열로 재정렬된 후, 첫 번째 열부터 순차적으로 Q개의 제1 단계 DFT 입력부(130)로 전달된다.
Figure 112011023713136-pat00001
여기서, n1과 n2는 각각 상기 재정렬부(122)의 행과 열을 나타내는 인덱스이며, 0≤n1≤P-1과 0≤n2≤Q-1의 범위를 갖는다.
그리고, 제1 단계 DFT 입력부(130)에 저장된 P개의 크기를 가지는 Q개의 시간 영역 이산 신호들은 제1 단계 DFT 연산부(140)에서 연산되며, 수학식 2에 따라 결과가 산출된다.
Figure 112011023713136-pat00002
여기서, k는 연산하고자 하는 스펙트럼 대역의 주파수 인덱스이고, 연산자(operator) <>P는 modulo P 연산자를 나타낸다.
Figure 112011023713136-pat00003
는 회전인자(twiddle factor)를 의미하고,
Figure 112011023713136-pat00004
는 n2번째 행의 시간 샘플에 대한 DFT 결과를 나타낸다. 상기 제1 단계 DFT 연산부(140)에서 연산된 결과는 제2 단계 DFT 입력부(150)에 저장된다. 상기 제2 단계 DFT 연산부(160)에서는 수학식 3에 의하여, 상기 제2 단계 DFT 입력부(150)에 저장된 값을 이용하여, 제2 단계 DFT 연산을 수행한 후 산출된 결과를 결과 저장부(170)에 저장한다.
Figure 112011023713136-pat00005
여기서, x(k)는 입력 윈도우(110) 내의 시간 영역 이산 신호들에 대한 주파수 응답을 의미한다. 상기 수학식 3을 이용하여 k번째 주파수 응답을 계산하는 경우 각각 Q개의 복소 곱(Complex Multiplication)과 Q-1의 복소 합(Complex Addition)이 필요하므로, 요구되는 총 실수 연산(real operation)은 (8Q-2)개이다. 일반적으로, DFT 연산에 괴첼(Geortzel) 알고리즘을 적용할 경우 연산량을 감소시킬 수 있다고 알려져 있으므로, 상기 수학식 3에서 n2=Q-m-1을 대입하여 정리하면 수학식 4를 얻을 수 있다.
Figure 112011023713136-pat00006
여기서, t(m)은 XQ -m-1(<k>P)이고, h(Q-m)은 Wk N (Q-m)-1을 의미한다.
상기 수학식 4는 DFT 연산이 t(m)과 h(Q-m)의 컨볼루션 연산을 통해서도 산출될 수 있음을 의미하며, 괴첼 알고리즘을 적용하기 위하여 상기 수학식 4를 하기 수학식 5와 같이 변형하여 정의한다.
Figure 112011023713136-pat00007
상기 수학식 5에서 j가 Q인 경우 입력 윈도우(110) 내의 시간 영역 이산 신호들에 대한 주파수 응답 X(k)를 얻을 수 있다. 수학식 5를 구현하기 위해 도 3을 참조하여 설명하도록 한다.
도 3은 종래 기술에 따른 TD 기법에서 사용되는 필터의 신호 흐름도이다.
도 3에 나타나는 바와 같이, 수학식 5는 임펄스 응답 hk(m)이 Wk N (m-1)인 무한 충격 응답(infinite impulse response, IIR) 필터로 구현될 수 있으며, 도 3을 참조하여 hk(m)의 전달함수(transfer function) Hk(z)를 구하면 수학식 6으로 표현된다.
Figure 112011023713136-pat00008
상기 수학식 6을 이용하여 연산을 수행할 경우, 8Q의 실수 연산이 요구되므로 수학식 3을 이용하는 경우와 비교할 때 연산량 측면에서 이득이 없다. 따라서, 수학식 6의 구조에서 연산량의 이득을 얻기 위하여, 수학식 6의 분자와 분모에 (1-W-k NZ-1)을 곱해 수학식 7과 같이 변형시킨다.
Figure 112011023713136-pat00009
수학식 7에 대하여 설명하기 위하여, 도 3과 도 4를 참조한다.
도 4는 종래 기술에 따른 TD 기법에서 사용되는 필터를 변형한 변형 필터의 신호 흐름도이다. 도 3 및 도 4에 나타나는 바와 같이, 상기 수학식 7은 입력신호에 복소수 값을 가지는 회전인자 대신 실수 cos(2πk/N)을 사용하여 회귀(recursive) 연산을 수행하므로, 연산량 측면에서 이득을 얻을 수 있다. 도 4에 도시된 구조를 사용할 경우, 필요한 실수 연산은 6Q+2이므로, 수학식 3을 사용하는 경우보다 각 주파수 빈(frequency bin) 연산 당 (2Q-4)만큼의 연산량 감소 효과가 있다.
상술한 내용을 토대로 제1 단계 DFT 연산부(140)에서 FFT(Fast Fourier Transform)의 일종인 Cooley-Turkey 알고리즘을 사용하고, 제2 단계 DFT 연산부(160)에서 괴첼 알고리즘을 사용하는 경우에, 크기 L을 가지는 부분 주파수 응답을 연산하는 데 요구되는 TD의 실수 연산량을 산출해보면 5Nlog2P+6LQ+2L이 된다. 이에 따라, 항상 전대역 스펙트럼을 연산해야 하는 일반적인 FFT만을 사용한 경우의 연산량과 비교하여 볼 때 큰 연산 이득이 발생하는 것을 알 수 있다.
다만, 상술한 TD와 같은 pruning FFT 알고리즘을 사용한 경우에도, FFT 연산이 짧은 간격으로 반복적으로 수행되는 경우에는 pruning FFT와 일반적인 FFT 모두 연산량이 수행횟수에 선형적으로 비례하여 증가하는 문제점이 있다. 만약, 매 신호가 입력될 때마다 주파수 응답을 연산하는 경우에는 pruning FFT와 일반적인 FFT 모두 연산량이 급격히 증가하게 되므로, 주파수 응답 갱신 주기가 짧아져도 연산량 증가를 최소화하여 시스템의 연산 효율성을 극대화하는 기술 개발이 요구되었다.
본 발명은 상기 문제점을 해결하기 위하여 제안되었다. 본 발명에 대하여 살펴보기 위하여 도 5 이하의 도면을 참조한다.
도 5는 본 발명에서 제안하는 실시간 스펙트럼 연산 장치의 구성도이다. 도 5에 나타나는 바와 같이, 본 발명에 따른 실시간 스펙트럼 연산 장치는 시간 영역 신호를 입력받는 입력 모듈(510)과, 상기 입력받은 적어도 하나 이상의 시간 영역 신호를 직렬 데이터로 하여 프로세서(530)로 전송하는 직병렬 컨버터(520)와, 상기 직렬 데이터로부터 스펙트럼 데이터를 연산하는 프로세서(530)와, 상기 연산된 스펙트럼 데이터를 외부로 출력하는 출력 모듈(540)을 포함하며, 상기 프로세서는 메모리(531)와 스펙트럼 연산 모듈(532)로 이루어져 있으며, 상기 스펙트럼 연산 모듈에서는 Generalized Sliding FFT 기법과 TD(Transform Decomposition) 기법을 조합 사용하여 스펙트럼 데이터를 연산함으로써 상기 시간 영역 신호를 주파수 영역 신호로 변환한다.
각 구성요소에 대하여 구체적으로 살펴보면 다음과 같다. 먼저, 상기 입력 모듈(510)의 경우에는 외부로부터의 시간 영역 신호를 다양한 경로에서 동시에 수집할 수 있다. 상기 수집된 시간 영역 신호는 적어도 하나 이상이어야 하며, 상기 수집된 시간 영역 신호가 하나인 경우에는 상기 직병렬 컨버터(520)를 통하여 변환될 필요없이 상기 프로세서(530) 내부의 상기 메모리(531)로 전달하게 되나, 상기 수집된 시간 영역 신호가 둘 이상의 병렬 데이터인 경우에는 직렬 데이터로 변환하여 상기 프로세서(530) 내부의 상기 메모리(531)로 전달하게 된다. 상기 메모리(531)는 상기 전달받은 데이터는 상기 스펙트럼 연산 모듈(532)에서의 연산에 의하여 주파수 영역 데이터로 변환되고, 변환된 주파수 영역 데이터는 메모리에 의하여 상기 출력 모듈(540)로 전달된다.
본 발명에서 제안하는 발명의 기술적 특징은 상기 스펙트럼 연산 모듈(532)에 있으며, 상기 스펙트럼 연산 모듈(532)에서는 Generalized Sliding FFT 기법과 TD(Transform Decomposition) 기법을 조합 사용하여 스펙트럼 데이터를 연산함으로써 상기 시간 영역 신호를 주파수 영역 신호로 변환한다.
상기 스펙트럼 연산 모듈(532)를 구체적으로 살펴보기 위하여 도 7을 참조한다. 도 7은 본 발명에서 제안하는 스펙트럼 연산 모듈(532)의 구성도이다. 도 7에 나타나는 바와 같이, 상기 스펙트럼 연산 모듈(532)은, 입력되는 데이터들을 재배열하는 입력 재배열부(720)와, 상기 재배열된 시간 영역 신호를 저장하는 제1 단계 DFT 입력부(730)와, GSFFT 알고리즘을 이용하여 연산하는 제1 단계 DFT 연산부(740)와, 상기 제1 단계 DFT 연산부의 결과값을 저장하는 제2 단계 DFT 입력부(750)와, 상기 제2 단계 DFT 입력부에 저장된 값으로부터 부분 주파수 스펙트럼을 연산하는 제2 단계 DFT 연산부(760)와, 상기 제2 단계 DFT 연산부로부터의 최종 출력을 상기 메모리에 저장하는 결과 저장부(770)를 포함한다.
상기 스펙트럼 연산 모듈(532)의 구성간 절차는 상술한 TD 구성에서의 절차와 동일하므로 설명을 생략하도록 한다. 다만, 본 발명에서의 스펙트럼 연산 모듈(532)에서는 상기 TD 구성과 달리 제1 단계 DFT 연산부(740)에서 GSFFT(Generalized Sliding FFT) 알고리즘을 사용하는 것을 하나의 특징으로 하고 있으며, 상기 GSFFT 알고리즘을 사용함으로써 주파수 응답 갱신 간격이 짧아지더라도 이전의 입력 윈도우와 현재의 입력 윈도우의 데이터 간 중복성이 높을 경우 연산량 측면에서 이득이 증가하고, 데이터 간 중복성이 없는 경우에도 radix-2 FFT 알고리즘과 동일한 정도의 연산량만이 요구되므로 상기 문제점을 해결하기에 매우 효과적이다.
또한, 상기 제 제2 단계 DFT 연산부(760)에서는 연산량을 감소시키기 위하여 괴첼(Goertzel) 알고리즘을 사용하도록 구성할 수 있으나, 상기 제2 단계 DFT 연산부(760)에서 사용되는 알고리즘은 괴첼 알고리즘에 국한되는 것은 아니다.
이하, 도 8 내지 도 12를 참조하여 본 발명에서 사용되는 GSFFT 알고리즘에 대하여 일반적인 FFT 알고리즘과 비교하여 구체적으로 살펴보도록 한다.
도 8은 일반적인 FFT 알고리즘의 버터플라이(butterfly) 연산에 의한 주파수 응답 연산방법을 도시한 도면이고, 도 9는 상기 도 7에서 입력 윈도우가 한 샘플 이동한 경우 radix-2 FFT 알고리즘의 버터플라이 연산에 의한 주파수 응답 연산방법을 도시한 도면이고, 도 10은 상기 도 7과 상기 도 8에서 중복되는 연산이 발생한 버터플라이 부분을 도시한 도면이고, 도 11은 상기 도 9에서 중복되는 버터플라이를 제거한 GSFFT 알고리즘의 일실시예를 도시한 도면이며, 도 12는 본 발명에서 제안하는 GSFFT를 이용하여 16 포인트 FFT를 수행하는 경우의 일실시예를 나타낸 도면이다.
도 8은 제1 단계 DFT 연산부(140)에 radix-2 FFT 알고리즘이 사용되는 경우를 나타내며, 이때 제1 단계 DFT 입력부(130) 안에 입력된 4개의 시간 영역 신호(131 ~ 134)에 대한 버터플라이 연산(141 ~ 144)을 수행한 후 그 결과를 제2 단계 DFT 입력부(150)로 출력한다. 이후 입력이 한 신호 갱신되는 경우에 대해 도 9에 나타나고 있으며, 도 9에서와 같이 새로운 입력 신호(132 ~ 135)를 이용하여 연산을 수행하고, 두 연산간의 중복되는 버터플라이를 도시하면 도 10과 같다. 도 10에 나타나듯이, 도 8의 버터플라이 연산(141, 142)에 의한 중간결과(146, 147)와 도 9의 버터플라이 연산에 의한 중간결과가 일치하므로, 도 8의 버터플라이 연산과 도 9의 버터플라이 연산은 중복되는 연산으로 간주할 수 있다. 즉, 제1 단계 DFT 입력부(130)의 이전 입력과 현재 입력간에 상관관계가 있을 경우 중복 연산이 발생하게 되므로, 이러한 중복 연산을 제거하면 기존의 TD 연산에 비해 연산량을 감소시키는 것이 가능하다. 이를 위하여 도 11에 나타나는 것과 같이, 버터플라이 연산(141, 142)을 수행한 후 중간결과(146, 147)를 메모리(531)에 저장하고, 갱신된 입력(132 ~ 135)을 이용하여 연산할 때, 갱신된 입력(235)과 관계없는 버터플라이 연산은 수행하지 않고 입력과 관계된 버터플라이 연산(143)만을 수행한 후, 메모리에 저장된 중간결과를 로드하여 나머지 버터플라이 연산(144, 145)만을 수행한다.상기의 과정에 대하여, 본 발명의 스펙트럼 연산 모듈(532)을 적용하고, 제1 단계 DFT 입력부(730)의 크기가 16인 경우를 예를 들어 나타내면 도 12와 같다. 도 12에서 나타나듯이, 버터플라이 연산은 갱신된 입력과 관계된 부분에서만 수행되므로, 이전 입력과 현재 입력간의 상관관계가 높을수록 더 높은 연산량 감소를 기대할 수 있다.
즉, 본 발명에서 제1 단계 DFT 연산부(740)의 연산량은 제1 단계 DFT 입력부(730)의 크기 p와 갱신 간격 M에 의해 결정되고, p는 얻고자 하는 입력 윈도우(710)의 크기 N과 부분 스펙트럼의 크기, 즉, 최종 출력을 저장하는 결과 저장부(770)의 크기 L에 따라 달라지므로, L의 크기가 변할 때마다 연산량을 최소화하기 위하여 모든 L값마다 최적의 p값을 정의해 주어야 한다. 이를 위해 먼저 제1 단계 DFT 연산부(740)에서 GSFFT 알고리즘을 사용하는 경우의 연산량을 도 7 및 도 12를 참조하여 산정하여 보면 다음과 같다.
갱신간격 M에 따라 입력 윈도우(710) 내의 신호들이 갱신되면, 입력 재배열부(720)에서는 입력을 재배열하고, 이때 각각의 제1 단계 DFT 연산부(740)에 갱신되는 입력 신호의 수는 M/Q이다. 제1 단계 DFT 연산부(740)의 출력의 크기는 p이므로, radix-2 FFT 알고리즘을 사용할 경우의 버터플라이 연산이 수행되는 모든 스테이지의 수는 log2P이고, 본 발명에 따라 GSFF 알고리즘을 사용할 경우의 부분적인 버터플라이 연산이 수행되는 스테이지의 범위는 0≤i≤P/(M/Q)-1이며, 이 범위 내의 각 스테이지에서 연산이 수행되는 버터플라이의 개수는 2iM이다. 따라서, 연산이 수행되는 버터플라이의 총 개수는 수학식 8에 의해 계산된다.
Figure 112011023713136-pat00010
여기서, x=log2(P/(M/Q))=log2((PㆍQ)/M)=log2(N/M)이다. 그리고, i가 log2(N/M)≤i≤log2P-1인 경우에는 일반적인 radix-2 FFT 알고리즘의 버터플라이 연산이 수행되므로, 각 스테이지당 버터플라이 수는 P/2이다. 상술한 내용을 토대로 1번의 GSFFT 알고리즘에서 연산이 수행되는 총 버터플라이의 개수는 수학식 9에 의해 계산된다.
Figure 112011023713136-pat00011
하나의 버터플라이가 곱셈과 덧셈 연산을 합해 총 10번의 실수 연산을 수행하여야 하므로 GSFFT 알고리즘을 수행하기 위해 필요한 총 연산량은 5Plog2(M/Q)+10P-10(M/Q)이다. 본 발명에서 제1 단계 DFT 연산부(740)에는 총 Q번의 GSFFT가 사용되고, 상기 수학식 4를 이용하여 크기 L인 부분 스펙트럼을 연산하기 위해 6LQ+2L번의 실수 연산이 수행되어야 하므로, 요구되는 총 연산량은 수학식 10과 같이 나타낼 수 있다.
Figure 112011023713136-pat00012
여기서, L은 연산하고자 하는 주파수 대역의 크기이고, M은 2의 멱수 값을 가지는 갱신 간격이고, N,P,Q는 N=PㆍQ를 만족하는 2의 멱수이다.
상기 수학식 10에서, N,L,M은 시스템의 특성에 따라 결정되는 값이므로, 본 발명에서의 연산량은 P에 의하여 결정된다. 연산량을 최소화하는 P값을 구하기 위해서는 상기 수학식 10의 결과를 최소로 하는 P값을 구해야 하므로, 상기 수학식 10을 P에 대하여 편미분하고 그 결과값이 0을 만족하는 값(Popt)를 구하여, 상기 Popt값을 다시 상기 수학식 10에 대입하여 정리하면 수학식 11과 같이 표현된다.
Figure 112011023713136-pat00013
여기서, 연산자
Figure 112011023713136-pat00014
는 연산자 안의 값을 2의 멱수에 가장 가까운 수로 만드는 함수이다. 이때, GSFFT 알고리즘을 사용하여 이득을 얻기 위해서는 Popt가 N/M보다 커야 하므로, Popt가 N/M보다 작은 경우에는 Popt를 N/M으로 설정하는 것이 바람직하다. 이를 정리하여 표현하면 수학식 12와 같다.
Figure 112011023713136-pat00015
본 발명에서는 최소한의 연산을 수행하기 위하여, 상기 수학식 12를 이용하여 Popt를 구한 후 N=PㆍQ인 관계를 이용하여 Q 값을 얻고, 갱신간격 M마다 입력 윈도우(710)에 갱신되는 M개의 입력을 입력 재배열부(720)에서 M/Q의 크기로 재배열하여 이후 과정을 수행하도록 한다.
다음으로, 본 발명에 따른 실시간 스펙트럼 연산 방법을 도 6을 참조하여 설명하도록 한다. 도 6은 본 발명에서 제안하는 실시간 스펙트럼 연산 방법의 흐름도이다. 도 6에 나타나는 바와 같이, 본 발명에 따른 실시간 스펙트럼 연산 방법은 a) 윈도우의 이동간격에 따른 제1 DFT 단계에서의 DFT의 크기(Popt)를 결정하는 단계(S610)와, b) 상기 DFT의 크기(Popt)를 이용하여 새롭게 갱신되는 입력을 재배열하는 단계(S620)와, c) 메모리로부터 이전 연산에서 저장된 값들을 불러오는 단계(S630)와, d) 상기 재배열된 입력과 상기 불러온 값들을 이용하여 각 버터플라이에서 GSFFT 기법을 사용하여 연산을 수행하는 제1 DFT 단계(S640)와, e) 상기 연산된 결과에 대하여 DFT 연산을 통하여 일정한 주파수 대역 결과를 결합하는 제2 DFT 단계(S650)와, f) 상기 결합된 결과를 출력하고 다음 연산에 사용될 값들을 메모리에 저장하는 단계를 포함한다.
상기 각 단계에 대한 구체적인 설명은 상술한 본 발명에 따른 실시간 스펙트럼 연산 장치에 대한 설명과 중복되므로 생략하도록 한다.
한편, 본 발명에 따른 실시간 스펙트럼 연산 방법에서도 상술한 바와 같이 상기 제2 DFT 단계에서는 괴첼 알고리즘을 사용하여 DFT 연산을 수행하도록 구성할 수 있다.
나아가, 본 발명에 따른 실시간 스펙트럼 연산 방법에서는 상기 f) 단계 이후에 아직 변환이 수행되지 않은 입력 신호가 존재하는 경우, 상기 b) 단계 내지 상기 f) 단계를 반복하여 수행하도록 구성될 수 있다.
한편, 컴퓨터 판독 가능한 기록매체에 본 발명에 따른 실시간 스펙트럼 연산 방법을 프로그램으로 기록하여 실시간 스펙트럼 연산 방법이 컴퓨터에서 수행될 수 있도록 구성하는 것도 가능하다.
본 발명에 따른 실시간 스펙트럼 연산 방법의 연산량 측면에서의 효과를 도 13과 도 14를 참조하여 살펴본다.
도 13은 본 발명에서 제안하는 방법의 연산량과 Cooley-Turkey FFT의 연산량을 비교한 도면이고, 도 14는 본 발명에서 제안하는 방법의 연산량과 기타 다른 방법에 의한 연산량을 비교한 도면이다.
연산량과 관련하여, Radix-2 FFT 알고리즘은 윈도우 사이즈 N에만 의존하고, GSFFT 알고리즘은 시간 샘플의 갱신 간격 M에 의존한다. 또한, pruning FFT와 TD의 연산량은 연산하고자 하는 주파수 대역의 길이 L에 의존한다.
결국 본 발명에 따른 실시간 스펙트럼 연산 방법에서는 GSFFT 알고리즘과 TD의 장점을 결합한 PGSFFT(Pruning Generalized Sliding FFT)를 제안하고 있으며, 상기 PGSFFT는 시간 샘플의 갱신 간격의 윈도우 길이의 1/8보다 작고 연산하고자 하는 주파수 대역의 길이가 윈도우 길이의 1/3보다 작을 때 가장 효율적으로 스펙트럼을 연산할 수 있다는 것을 알 수 있었다.
상술한 바와 같이 본 발명에 따른 실시간 스펙트럼 연산 방법을 이용하면 빠른 갱신속도를 가지는 부분 스펙트럼을 연산하는 데 있어서 요구되는 연산량을 감소시킬 수 있으며, 구체적으로는, 레이더나 소나와 같이 스펙트럼 갱신 주기가 짧고 특정 주파수 대역만을 운용하는 시스템에 적용되는 경우에 가장 효율적인 스펙트럼 연산이 가능할 것으로 판단된다.
이상에서 설명한 바와 같이, 바람직한 실시예를 통하여 본 발명에 관하여 상세히 설명하였으나, 본 발명은 이에 한정되는 것은 아니며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양하게 변경, 응용이 가능함은 당업자에게 자명하다. 따라서, 본 발명의 진정한 보호 범위는 다음의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술적 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
110 : 입력 윈도우 120 : 입력 재배열부
121 : 이산 신호들 122 : 재배열부
130 : 제1 단계 DFT 입력부 131 ~ 135 : 시간 영역 입력들
140 : 제1 단계 DFT 연산부 141 ~ 145 : 버터플라이 연산
146 ~ 149 : 중간 결과 150 : 제2 단계 DFT 입력부
160 : 제2 단계 DFT 연산부 170 : 결과 저장부
510 : 입력 모듈 520 : 직병렬 컨버터
530 : 프로세서 531 : 메모리
532 : 연산 모듈 540 : 출력부
710 : 입력 윈도우 720 : 입력 재배열부
730 : 제1 단계 DFT 입력부 740 : 제1 단계 DFT 연산부
750 : 제2 단계 DFT 입력부 760 : 제2 단계 DFT 연산부
770 : 결과 저장부

Claims (7)

  1. 삭제
  2. 삭제
  3. 삭제
  4. 실시간 스펙트럼 연산 방법에 있어서,
    a) 윈도우의 이동간격에 따른 제1 DFT 단계에서의 DFT의 크기(Popt)를 결정하는 단계;
    b) 상기 DFT의 크기(Popt)를 이용하여 새롭게 갱신되는 입력을 재배열하는 단계;
    c) 메모리로부터 이전 연산에서 저장된 값들을 불러오는 단계;
    d) 상기 재배열된 입력과 상기 불러온 값들을 이용하여 각 버터플라이에서 GSFFT 기법을 사용하여 연산을 수행하는 제1 DFT 단계;
    e) 상기 연산된 결과에 대하여 DFT 연산을 통하여 일정한 주파수 대역 결과를 결합하는 제2 DFT 단계; 및
    f) 상기 결합된 결과를 출력하고 다음 연산에 사용될 값들을 메모리에 저장하는 단계를 포함하는 것을 특징으로 하는 실시간 스펙트럼 연산 방법.
  5. 제 4 항에 있어서,
    상기 제2 DFT 단계에서는 괴첼 알고리즘을 사용하여 DFT 연산을 수행하는 것을 특징으로 하는 실시간 스펙트럼 연산 방법.
  6. 제 4 항에 있어서,
    상기 f) 단계 이후에 아직 변환이 수행되지 않은 입력 신호가 존재하는 경우, 상기 b) 단계 내지 상기 f) 단계를 반복하여 수행하는 것을 특징으로 하는 실시간 스펙트럼 연산 방법.
  7. 실시간 스펙트럼 연산 방법이 컴퓨터에서 수행될 수 있도록,
    제 4 항 내지 제 6 항 중 어느 한 항의 방법을 프로그램으로 기록한 컴퓨터 판독 가능한 기록매체.

KR1020110029812A 2011-03-31 2011-03-31 실시간 스펙트럼 연산 장치 및 방법, 그리고 실시간 스펙트럼 연산 방법을 프로그램으로 기록한 기록매체 KR101160553B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110029812A KR101160553B1 (ko) 2011-03-31 2011-03-31 실시간 스펙트럼 연산 장치 및 방법, 그리고 실시간 스펙트럼 연산 방법을 프로그램으로 기록한 기록매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110029812A KR101160553B1 (ko) 2011-03-31 2011-03-31 실시간 스펙트럼 연산 장치 및 방법, 그리고 실시간 스펙트럼 연산 방법을 프로그램으로 기록한 기록매체

Publications (1)

Publication Number Publication Date
KR101160553B1 true KR101160553B1 (ko) 2012-07-03

Family

ID=46716030

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110029812A KR101160553B1 (ko) 2011-03-31 2011-03-31 실시간 스펙트럼 연산 장치 및 방법, 그리고 실시간 스펙트럼 연산 방법을 프로그램으로 기록한 기록매체

Country Status (1)

Country Link
KR (1) KR101160553B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004279264A (ja) 2003-03-17 2004-10-07 Kanazawa Univ Tlo Inc スペクトル拡散方式の受信機および受信信号処理方法
JP2007064947A (ja) 2005-09-02 2007-03-15 Tektronix Japan Ltd シグナル・アナライザのデータ処理方法
KR100972873B1 (ko) 2002-06-27 2010-07-28 엔엑스피 비 브이 무선 주파수 신호 스펙트럼 처리 시스템 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100972873B1 (ko) 2002-06-27 2010-07-28 엔엑스피 비 브이 무선 주파수 신호 스펙트럼 처리 시스템 및 방법
JP2004279264A (ja) 2003-03-17 2004-10-07 Kanazawa Univ Tlo Inc スペクトル拡散方式の受信機および受信信号処理方法
JP2007064947A (ja) 2005-09-02 2007-03-15 Tektronix Japan Ltd シグナル・アナライザのデータ処理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
2010년도 제23회 신호처리합동학술대회 논문집 제23권 1호 240-243페이지(2010.10.02)*

Similar Documents

Publication Publication Date Title
EP0649578B1 (en) Digital filter having high accuracy and efficiency
Sreenivas et al. FFT algorithm for both input and output pruning
CN101504638B (zh) 一种可变点数流水线fft处理器
US6751643B2 (en) Butterfly-processing element for efficient fast fourier transform method and apparatus
CN111222088B (zh) 一种改进的平顶自卷积窗加权电力谐波幅值估计方法
US20050278405A1 (en) Fourier transform processor
Park Guaranteed-stable sliding DFT algorithm with minimal computational requirements
US7197525B2 (en) Method and system for fixed point fast fourier transform with improved SNR
Jenkins Fourier series, Fourier transforms and the DFT
AU4119385A (en) Computer and method for discrete transforms
US7246143B2 (en) Traced fast fourier transform apparatus and method
Sreenivas et al. High-resolution narrow-band spectra by FFT pruning
US6728742B1 (en) Data storage patterns for fast fourier transforms
KR101160553B1 (ko) 실시간 스펙트럼 연산 장치 및 방법, 그리고 실시간 스펙트럼 연산 방법을 프로그램으로 기록한 기록매체
Kaur et al. Design of 32-point mixed radix FFT processor using CSD multiplier
CN111079075B (zh) 一种非2-基dft优化的信号处理方法
Chandu et al. Optimized high speed radix-8 fft algorithm implementation on fpga
Yuan et al. Pruning split-radix FFT with time shift
CN110808935B (zh) 线性调频信号自相关运算的精确高效实现方法及装置
Ha et al. Fast Partial Frequency Spectrum Computation for Real-Time Information Acquisition Systems
Mamatha et al. Triple-matrix product-based 2D systolic implementation of discrete Fourier transform
Rauf et al. A Novel split radix fast fourier transform design for an adaptive and scalable implementation
CN116719005B (zh) 基于fpga的定点数据处理方法、装置及存储介质
CN113791384B (zh) 目标探测方法、装置以及计算机设备
Wu et al. Research on a method of realizing high performance ultra-long pulse compression processor based on FPGA

Legal Events

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

Payment date: 20150601

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160602

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170601

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee