KR19990077845A - 파이프라인된 고속 푸리에 변환 프로세서 - Google Patents

파이프라인된 고속 푸리에 변환 프로세서 Download PDF

Info

Publication number
KR19990077845A
KR19990077845A KR1019990008417A KR19990008417A KR19990077845A KR 19990077845 A KR19990077845 A KR 19990077845A KR 1019990008417 A KR1019990008417 A KR 1019990008417A KR 19990008417 A KR19990008417 A KR 19990008417A KR 19990077845 A KR19990077845 A KR 19990077845A
Authority
KR
South Korea
Prior art keywords
arithmetic unit
fourier transform
fast fourier
output data
unit output
Prior art date
Application number
KR1019990008417A
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 크리스티안 그레그와르
Publication of KR19990077845A publication Critical patent/KR19990077845A/ko

Links

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
    • 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
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm

Landscapes

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

Abstract

파이프라인된 고속 푸리에 변환 프로세서는 메모리 배열부 이외에도, 제1 산술 유닛, 스크래치 메모리(scratch memory) 및 제2 산술 유닛의 캐스케이드를 포함한다. 상기 산술 유닛들중 하나는 버터플라이(butterfly) 고속 푸리에 변환 산술 계산들중 적어도 하나의 유형만을 수행하는 한편, 다른 하나는 버터플라이 고속 푸리에 변환 산술 계산들중 적어도 하나의 유형 이외에도, 버터플라이 고속 푸리에 변환 산술 계산들중 적어도 하나의 다른 유형을 수행할 수 있다. 이 아키텍쳐는 회로 한정뿐 아니라 타이밍 모두를 최적화한다.

Description

파이프라인된 고속 푸리에 변환 프로세서{PIPELINED FAST FOURIER TRANSFORM PROCESSOR}
본 발명은 파이프라인된 고속 푸리에 변환 프로세서에 관한 것이다.
이러한 파이프라인된 고속 푸리에 변환 프로세서는, 예를 들면, 발행된 유럽 특허 출원 「파이프라인된 고속 푸리에 변환 프로세서」 "Pipelined Fast Fourier Transform processor," 공보 번호 0478128A2로부터 기술 분야에 이미 공지되어 있다. 여기서, 파이프라인된 고속 푸리에 변환 프로세서는 종래 기술에서 BAU로 약칭된 4개의 버터플라이 산술 유닛의 캐스케이드를 포함하여 기술된다. 이들 유닛들의 각각은 입력 포트에 수신된 데이터를 처리하여, 다음 스테이지의 입력 포트에 연속적으로 인가되거나, 또는 최종 제4 스테이지인 경우, 멀티플렉서를 거쳐 메모리 위치에 인가되는 한 쌍의 출력 신호를 발생시킨다. 각각의 유닛내에서, 출력 신호는 다음의 유닛에 전달되기 전에 4개의 레지스터에 임시 저장된다. 따라서, 종래 기술의 캐스케이드된 유닛들중 2개는 본 발명의 제1 및 제2 산술 유닛에 대응하는 것으로 고려될 수 있는 한편, 종래 기술의 제1 스테이지에 포함된 4개의 레지스터는 본 발명의 파이프라인된 고속 푸리에 변환 프로세서의 스크래치 메모리(scratch memory)에 대응하는 것으로서 고려될 수 있다. 그러므로, 종래 기술의 메모리 위치와 함께 멀티플렉서는 본 발명의 고속 푸리에 변환 프로세서내에 포함되는 메모리 배열부를 구성한다.
종래 기술에 설명되어 있듯이, 종래 기술의 프로세서의 유닛 모두는 개별 입력 데이터에 대해 이하 FFT라 약칭한 기수-2-연산 고속 푸리에 변환을 수행하기 위한 동일한 빌딩 블록을 포함한다.
일부 응용인 경우, 예를 들면 초고속 가입자 라인 전송 및 수신 모듈에서와 같이, 512점 실수 FFT는 1024 클럭 사이클 미만에서 수행되므로, 각각의 사이클 동안 메모리 배열부에서 제1 산술 유닛으로 하나의 데이터점이 판독된다. 기술 분야의 당업자에 의해 잘 알 수 있듯이, 실제 512점 실수 FFT의 수행은 미국 특허 제5,633,817호, 「고속 푸리에 변환 전용 프로세서」 "fast fourier transform dedicated processor"에 개시된 것과 같은 일부 변화가 고려된 256점 복소수 FFT의 수행에 대응한다. 그러나, 종래 기술의 프로세서의 아키텍쳐를 사용하여 256점 복소수 FFT를 수행할 때, 타겟 타이밍 한계를 얻는데 너무 많은 곱셈기가 필요하게 된다. 실제로, 256점 복소수 FFT를 수행하기 위해서는, 종래 기술의 기수-2형 BAU들중 8개를 통과하여야 한다. 이들 BAU들중 두개만 또는 캐스케이드의 스테이지를 사용하여, 파이프라인을 4번 통과하는 동안,메모리 배열부에서 제1 BAU로 입력 데이터를 판독하기 위하여 4X256 클럭 사이클보다 이미 많이 소모하여, 타겟 타이밍 한계를 한정적으로 이미 초과한다. 따라서, 타이밍 한계에 순응하기 위하여, 이들 BAU들중 최소 3개가 캐스케이드에 포함될 필요가 있다. 각각의 종래 기술의 BAU가 4개의 곱셈기를 포함하기 때문에, 종래 기술의 도 2로부터 명확하듯이, 총 12개의 곱셈기가 프로세서에 포함되어야 한다. 그러나, 본 발명의 시점에서 집적 회로 기술 분야의 상태를 고려하면, 총 12개의 곱셈기는 집적 회로의 영역을 너무 크게한다.
본 발명의 목적은 집적 회로 영역의 전제조건뿐 아니라 타이밍 한계 모두를 성공적으로 절충한 상기 공지된 유형의 고속 푸리에 변환 프로세서를 제공하는 것이다.
본 발명에 따르면, 이 목적은 청구항 1의 특성부에 개시된 바와 같이 상기 고속 푸리에 프로세서가 더욱 적응된다는 사실로 인하여 달성된다.
이와 같이, 두개의 전용 산술 유닛이 제공되는데, 보다 작은 것은 버터플라이 FFT 계산들중 적어도 하나의 유형만을 수행하도록 적응되고, 보다 큰 것은 상술된 유형 이외에도 버터플라이 FFT 산술 계산들중 적어도 하나의 제2 유형을 수행하도록 적응된다. 따라서, 일렬로 3개의 스테이지를 사용하는 것 대신에, 지금은 그들중 두개, 즉 작고 큰 것만이 필요하게 된다. 이러한 해결책은 종래 기술의 해결책에 비해 한정적으로 보다 작은 칩 영역을 필요로 한다. 타이밍에 관해, 512점 실수 FFT를 수행하기 위해서, 이러한 해결책은, 다른 문장에서 보다 상세히 설명되는 듯이 캐스케이드 또는 파이프라인을 통한 3개의 패스만을 필요로 한다. 따라서, 타이밍은 타이밍 내역내에 있다.
상술된 목적은 또한 청구항 1의 대체인 청구항 2의 특성부에 기술된 바와 같이 실현되되, 입력 데이터가 먼저 처리되는 제1 산술 유닛은 마찬가지로 보다 작은 것일 수 있는 한편, 파이프라인된 구조에 통과될 제2 산술 유닛은 보다 큰 것일 수 있다.
본 발명의 또 다른 특성이 청구항 3 및 4에 기술되어 있다.
일부 응용에 대해, 제1 산술 유닛을 먼저 바이패스한 후, 파이프라인의 제2 산술 유닛이 제1 FFT 관련된 연산을 실행하는 것이 바람직하다. 이들 응용들에 대해 본 발명의 기술적인 부분에 보다 상세히 설명되는 듯이, 특히 산술 유닛에 의해 수행될 버터플라이 FFT 연산의 개수가 홀수일 때, 메모리 배열부의 보다 간단한 제어가 얻어진다.
본 발명의 또 다른 특성이 청구항 5에 기술되어 있다.
파이프라인을 통한 제1 패스후에, 최종 FFT 결과가 아직 얻어지지 않으면, 제2 패스는 필요할 것이다. 이 청구항은 파이프라인이 항상 동일한 방향, 즉 제1 산술 유닛에서 제2 산술 유닛으로의 방향을 따른 후, 메모리 배열부는 중간 FFT 결과를 제1 산술 유닛 등에 역전달하도록 적응된다는 것을 가리킨다. 이는 역시 종래 기술의 FFT 프로세서에서 행해지는 방향이다.
본 발명의 다른 특성은 청구항 6 및 7에 기술되어 있다.
이는 파이프라인내의 처리 방향이, 파이프라인을 통한 각각의 패스후에 반전될 수 있다는 것을 의미한다. 각각의 패스후의 방향 반전으로 메모리 배열부는 보다 간단해진다. 실제로, 메모리 배열부가 제1 산술 유닛에 전달될 입력 데이터를 저장하기 위한 일부 전용 위치, 및 제2 산술 유닛에 의해 전달된 중간 결과를 저장하기 위한 전용 위치를 포함하기 때문에, 제2 산술 유닛에 의한 중간 FFT 결과의 재사용을 통해 제2 산술 유닛 및 메모리 배열부 간의 접속을 재사용함으로써, 이 중간 결과 및 제1 산술 유닛을 저장하기 위한 위치들 간에 부수적인 접속이 수립될 필요가 있는 경우에 비해 한정적으로 배열이 보다 간단해진다.
본 발명의 다른 특성이 청구항 8 내지 11에 언급되어 있다.
산술 유닛 모두에 의해 실행가능한 기본 계산 단계는 기수-4형 고속 푸리에 변환 단계로 구성되는 한편, 산술 유닛 모두들중 가장 큰 것에 의해 실행가능한 여분의 대체 단계는 기수-2형 고속 푸리에 변환 단계, 기수-2형 고속 푸리에 변환 단계 다음에 가산/감산 단계, 및 기수-4형 고속 푸리에 변환 단계 이전에 가산/감산 단계로 구성된다. 제곱승과 동일한 양의 점에 대한 모든 실수 및 복소수 역고속 푸리에 변환뿐 아니라, 모든 실수 및 복소수 고속 푸리에 변환은, 예를 들면, 필드의 특정 문헌으로부터 잘 공지되어 있듯이, 상술된 단계의 조합을 사용하여 실현될 수 있다. 동일한 문헌으로부터, 기수-4형 산술 유닛뿐 아니라, 기수-2형 산술 유닛 모두는 4개의 곱셈기만으로 실현될 수 있다. 가장 복잡한 산술 유닛내에서, 버터플라이 고속 푸리에 변환 산술 계산의 4개 세트중 하나만이 한번에 수행되기 때문에 4개의 곱셈기가 공유될 수 있다. 따라서, 파이프라인된 고속 푸리에 변환 프로세서내에서 필요한 곱셈기는 종래 기술의 해결책보다 한정적으로 적은 총 8개이다.
도 1은 본 발명에 따른 파이프라인된 고속 푸리에 변환 프로세서(FFTP)의 개략도.
도 2는 본 발명에 따른 대체적인 파이프라인된 고속 푸리에 변환 프로세서(FFTP')의 개략도.
<도면의 주요 부분에 대한 부호의 설명>
MA : 메모리 배열부
ALU0 : 제1 산술 유닛
ALU1 : 제2 산술 유닛
CU : 제어 유닛
SCRRAM : 스크래치 메모리
FFTP : 고속 푸리에 변환 프로세서
본 발명의 상기 및 다른 목적 및 특징은 보다 명백해질 것이고 본 발명은 첨부한 도면과 관련하여 취해진 두개의 실시예에 대한 다음의 설명을 참조하여 가장 잘 이해될 것이다.
본 발명에 따른 고속 푸리에 변환 프로세서(FFTP)가 도 1에 개략적으로 도시되어 있다. 이 프로세서는 datain이라고 하는 입력 데이터의 연속적인 샘플을 입력 단자(도 1에 도시되지 않음)로부터 수신하여 이들을 제1 산술 유닛 ALU0에 전달하기 전에 입력 데이터의 연속적인 샘플을 임시 저장하며, 제1 산술 유닛 ALU0 또는 제2 산술 유닛 ALU1로부터 수신된 중간 또는 최종 고속 푸리에 변환 결과를 임시 저장하고, 최종 고속 푸리에 변환 결과를 dataout라고 하는 연속적인 출력 데이터로서 출력 단자(도 1에 도시되지 않음)에 전달하도록 적응된 메모리 배열부 MA를 포함한다.
따라서, 이 메모리 배열부 MA는 이와 같이 메모리 위치뿐 아니라, 판독/기록 회로 및 동반한 판독/기록 어드레싱 인코딩/디코딩 회로를 포함한다. 이러한 메모리 배열부는 공통적으로 기술 분야의 당업자에게 공지되어 있으므로 본 발명에서는 상세히 기술되지 않을 것이다.
도 1에 도시된 고속 푸리에 변환 프로세서에서, FFTP내에 포함된 제1 산술 유닛 ALU0은 메모리 배열부 MA에 양방향으로 결합된다. 그러나, 다른 실시예에는 ALU0이 MA로부터 데이터를 단방향으로만 수신하도록 적응되는 것이 존재한다. 도 1의 실시예에서, 다음의 버터플라이 FFT 산술 계산, 즉 기수-2형 계산, 기수-4형 계산, 기수-4형 계산 이전에 가산/감산 단계, 또는 기수-2형 계산 다음에 가산/감산 단계들중 하나를 수행하기 위하여, ALU0은 메모리 배열부 MA로부터 datainALU0이라 하는 제1 산술 유닛 입력 데이터의 제1 세트를 수신하도록 적응된다. 기수-2형 계산은 radix2라 하는 블록에 의해 수행되며, 기수-4형 계산은 radix4라 하는 블록에 의해 수행되며, radix4 이전에 가산/감산 단계는 decom+R4라 하는 블록에 의해 수행되고, 기수-2형 다음에 가산/감산 단계는 specR2라 명명된 블록에 의해 수행된다. 하나의 기능만이 인입 데이터를 한번에 처리하는데 사용되기 때문에, 모든 이들 기능성 블록은 공유될 수 있는 4개의 곱셈기를 필요로 한다는 것을 알아야 한다. 일부 회로, 예를 들면, 일부 가산기/감산기와 함께 4개의 곱셈기가 4개의 다른 블록에 의해 공유되어 있기 때문에 도면은 이런면에서 잘못되어 있다.
제1 산술 유닛 입력 데이터 datainALU0의 세트에 대해 수행되는 이들 4개의 산술 계산들중 하나의 결과는 dataout1ALU0이라 하고 제1 산술 유닛 ALU0에 의해 SCRRAM이라 하는 스크래치 메모리에 전달된다. 일부 실시예에서, 이 경우에 dataout1ALU0이 datainALU0에 대응하도록 ALU0은 또한 인입 데이터를 단지 바이패스하도록 적응된다.
스크래치 메모리는 ALU0에 의해 전달된 이들 데이터 dataout1ALU0을 임시 저장하여 다음의 시간 단계 동안에 이들을 고속 푸리에 변환 프로세서(FFTP)의 제2 산술 유닛 ALU1에 전달하도록 적응된다. ALU1은 인입 데이터를 메모리 배열부 MA에 바이패스하거나, 또는 인입 데이터에 대해 기수-4형 FFT 계산을 수행하도록 적응된다. 연산 결과는 dataout1ALU1이라 하고 ALU1에 의해 메모리 배열부 MA로 전달된다.
본 발명의 고속 푸리에 변환 프로세서(FFTP)가 도면에서 CU라 지칭되어 있으며, 다양한 부분의 동기 동작을 제어하기 위한 제어 유닛을 포함한다는 것이 중요하다. 그러나, 도면을 간단하게 하기 위해, 제어 유닛 CU에서 다른 부분으로 향하는 다른 제어 신호는 도시되지 않는다. 이 제어 유닛 CU는 또한 메모리 배열부 MA의 동작, 즉 메모리내의 다른 메모리 위치를 향한 데이터의 내부 재할당뿐 아니라, 입력 단자로부터의 데이터 판독, 출력 단자에의 데이터 기록, 데이터가 임시 저장되고 그로부터 검색되는 메모리내의 어드레스 및 위치를 제어한다. 제어 유닛으로부터 메모리 배열부를 향하는 제어 신호는 또한 산술 유닛 ALU0 및 ALU1로부터 수신된 데이터가 고속 푸리에 변환 결과의 최종 세트로 구성되는지의 여부, 또는 이들이 제1 산술 유닛 ALU0, 스크래치 메모리 SCRRAM 및 제2 산술 유닛 ALU1에 의해 형성된 파이프라인을 한번더 통과할 필요가 있는 단지 중간 결과인지의 여부를 메모리 배열부 MA가 결정하게 한다. 제어 유닛으로부터 산술 유닛 ALU0 및 ALU1 모두를 향하는 제어 신호는, 제어 유닛에 의해 공지된 선정된 수의 점에 대해 고속 푸리에 변환을 수행하기 위해 연속적인 시간 단계 동안에 상술된 다른 동작들중에서 어느 것이 산술 유닛들에 의해 수행되는가를 결정한다.
제어 유닛 CU는 또한 메모리 배열부인 경우와 유사한 방식으로 스크래치 메모리의 동작을 제어한다. 그러나, 하나의 실시예에서, 스크래치 메모리가 훨씬 작고, 메모리 배열부 MA의 512 위치에 비해 한정된 수의 메모리 위치, 예를 들면, 32개만을 포함하기 때문에, CU로부터 스크래치 메모리를 향하는 제어 논리는 훨씬 덜 복잡해진다.
제2 시간에 이 파이프라인을 통과하기 위해서는, 두가지 변화가 가능하다. 제1 변화로 파이프라인은 ALU0에서 ALU1로의 동일한 방향으로 따라가고, 이는 ALU1에 의해 메모리 배열부 MA에 출력된 데이터가 파이프라인을 통한 제2 패스 동안 메모리 배열부 MA에 의해 ALU0으로 역전달된다는 것을 의미한다. 이는 최종 FFT 결과가 얻어질 때까지 반복될 수 있다. 이는 대부분의 파이프라인된 종래 기술의 프로세서에 의해 사용된 고전적인 해결책이다. 그러나, 도 1에 도시된 것과 같은 본 발명의 파이프라인된 프로세서의 일부 실시예는 파이프라인을 통한 각각의 제1 패스후에 대향 방향으로 파이프라인을 사용하도록 적응된다. 그러므로, 제2 산술 유닛 ALU1은 메모리 배열부 MA로부터 datainALU1이라고 하는 제2 산술 유닛 입력 데이터 세트를 수신하도록 적응된다. 이 경우, dataout1ALU1이 중간 결과인 경우, datainALU1은 dataout1ALU1과 동일한 데이터를 포함한다. 그 다음, ALU1은 dataout1ALU1에 대해 동일한 기수-4형 FFT 계산 또는 바이패스 동작을 수행하므로, dataout2ALU1이라 하는 제2 산술 유닛의 출력 데이터의 제2 세트를 발생시켜 이 세트를 스크래치 메모리 SCRRAM으로 전달한다. 또한, 후자는 dataout2ALU1 수신시 다른 시간단계 동안에, 상기 FFT 관련된 계산들, 즉 기수-2형, 기수-4형, 가산/감산 다음에 기수-4형, 또는 가산/감산 다음에 기수-2형 단계 또는 바이패스 동작들중 하나의 실행을 개시하는 제1 산술 유닛 ALU0으로 이 데이터를 제어 유닛 CU로부터의 제어 신호에 따라 전달한다. dataout2ALU0이라고 하는 데이터의 최종 세트는 메모리 배열부 MA에 다시 전달된다. 후자는, 수신된 데이터 dataout2ALU0의 세트가 중간 또는 최종 FFT 데이터인지를 제어 유닛 CU의 제어하에 결정하도록 다시 적응된다. 전자의 경우에, 이 데이터는 datainALU0의 새로운 세트로서 제1 산술 유닛 ALU0으로 전달되거나, 또는 datainALU1의 새로운 세트로서 제2 산술 유닛 ALU1로 다시 전달된다. dataout2ALU0이 최종 FFT 데이터인 경우, 메모리 배열부는 이 데이터를 다음의 dataout 세트로서 출력 단자로 전달한다.
사실상 단지 제어 유닛에 의한 제어에 따라 파이프라인을 통과하는 모든 조합이 그들 모두가 실용화되는 것은 아니지만 가능하다는 것을 알아야 한다. 이런 면에서, 방향을 연속해서 교체하는 "핑-퐁(ping-pong)" 방법은 메모리 배열부의 내부 메모리 관리에 관해 최대한의 장점을 제공한다. 예를 들면, 초기 데이터가 메모리 배열부 MA의 제1 부분에 저장되면, 256점 FFT를 실행하기 위해서는, 다음 문장에서 설명되는 바와 같은 결과를 얻기 위해서는 3개의 패스가 필요하게 된다. 시퀀스 ALU0-ALU1/ALU1-ALU0/ALU0-ALU1이 선택되면, 그 결과는 ALU1에 직접 결합된 메모리 배열부의 제2 부분에 저장되는 한편, ALU0에 직접 결합된 메모리 배열부의 제1 부분은 그 순간에 새로운 인입 데이터를 자유로이 수신할 수 있다. 이 경우에 메모리 배열부에/로부터 데이터를 기록/판독하기 위한 논리는 역시 덜 복잡하다.
이러한 감소된 FFT 계산의 세트, 즉 기수-4, 기수-2형, 기수-4형 이전에 가산/감산 단계, 및 기수-2형 다음에 가산/감산 단계에 따라, 제곱승을 구성하는 실수 및 복소수의 데이터량에 대한 모든 실수 및 복소수 FFT 및 IFFT로 약칭된 역고속 푸리에 변환 계산들이 실현될 수 있다. 사실상, N이 4 제곱승, 즉 4n을 구성하는 다수의 N점에 대한 복소수 FFT 및 IFFT 연산인 경우, 기수-4형 단계는 이들 4n점에 대한 최종 FFT 또는 IFFT 결과를 얻기 위하여 n번 수행되어야 한다. N=2.4m인 경우, 먼저 기수-2형 연산이 수행된 다음, 기수-4형 단계를 m번 수행한다. 기수-4 및 기수-2형은, 예를 들면, 시간솎음 기수-4 또는 기수-2 단계인 경우, FFT에 대해 가산이 수행되는 한편, IFFT에 대해 감산이 수행된다는 의미에서 FFT 및 IFFT 간에는 다소 차이가 있다.
N이 4제곱승, 즉 N=4n을 구성하는 실수 FFT'인 경우, 기수-4형이 n-1번 계산된 다음, 기수-4형 이전에 가산/감산 단계로 구성되는 최종 "특수" 기수-4형이 계산된다. N=2.4m인 경우, 먼저 기수-2형 연산이 수행된 다음, 기수-4형 연산이 m-1번 수행되며, 그 다음 "특수 기수-4형" 연산이 수행된다.
N이 4제곱승, 즉 N=4n을 구성하는 실수 IFFT'인 경우, 먼저 기수-2형 버터플라이 다음에 가산/감산 단계로 구성되는 초기 "프리스캔(prescan)"이 실행된 다음, 기수-2형 버터플라이가 수행되며, 다음에 기수-4형이 n-1번 수행된다. N=2.4m인 경우, 먼저, 이 "프리스캔" 단계가 수행된 다음, 기수-4형 계산이 n번 수행된다. 또한, 가산이 감산으로 다시 대체될 수 있다는 의미에서 이 "프리스캔"인 경우 수행될 기수-2는 수행될 "기본" 기수-2와 약간의 차이가 있다는 것을 알아야 한다.
기술 분야의 당업자는 곱셈기 및 가산기/감산기에 의해 모든 4개의 다른 기수-2형 및 기수-4형 블록의 상세한 실시예를 실현하도록 적응된다. 이들 4개의 블록들을 실현하기 위한 다른 기본 회로들을 공유할 때, 멀티플렉서는 삽입되어야 한다. 이 서브블록에 포함된 곱셈기, 가산기/감산기 및 멀티플렉서의 제어는 제어 유닛 CU에 의해 다시 행해진다.
도 2에서, 본 발명에 따른 고속 푸리에 변환 프로세서의 대체적인 FFTP'가 도시되어 있다. 제1 실시예에 존재한 것들과 동일한 기본 블록, 즉 메모리 배열부 MA', 스크래치 메모리 SCRRAM', 제어 유닛 CU', 및 두개의 산술 및 논리 유닛 ALU0' 및 ALU1'이 포함된다. 도 2에서, 제1 실시예에 대한 유일한 차이점은 datain'라 하는 인입 데이터가 지금 ALU0'인 그다지 강력하지 않은 산술 유닛에서 먼저 처리된다는 것이다. 이 처리 단계는 빌딩 블록 기수4'에 의해 수행되는 기수-4형 연산으로 구성될 수 있으나, 제1 대체 FFTP인 경우에서와 같이 바이패스 동작으로 역시 구성될 수 있다. 바이패스 동작을 먼저 수행하는 것은, 예를 들면 홀수량의 연산이 인입 데이터에 대해 수행되면 메모리 배열부의 제어에 대해 임의의 장점을 가질 수 있다. 제2 산술 ALU1' 또는 ALU1을 통해 최종 결과를 바이패스하는 것 대신에, 제1 산술 유닛 ALU0' 또는 ALU0을 우선 바이패스하고, dataout를 전달하기 전에, 제2 산술 유닛 ALU1' 또는 ALU1에서 종료하는데 보다 유리할 수 있다. 이는 임의의 시퀀스로 처리될 필요가 있는 다른 단계에 의존한다. 제어기에서 구현될 모두 해결책은 실행될 기본 FFT 단계의 수에 의존한다. 이는 다음의 예로부터 명확해질 것이다.
초고속 디지털 가입자 라인 전송 및 수신 모듈에 사용되는 하나의 실시예에서, 512점 실수 FFT 및 IFFT가 수행되며, 고속 푸리에 변환 프로세서의 제1 및 제2 대체 FFTP 및 FFTP' 모두가 조합된다. FFTP는 고속 푸리에 변환 프로세서에 사용되는 한편, FFTP'는 역고속 푸리에 변환 프로세서에 사용된다. 이는, 도 1이 데이터흐름을 위한 참조 도면으로 간주되면, FFT 방향에서는 인입 데이터는 ALU0으로 진입하는 한편, IFFT를 수행하기 위하여, 인입 데이터는 ALU1으로 진입한다. 다음의 버터플라이 FFT 계산들이 다음의 표에 의해 도시된 바와 같이 실행되므로, DIT는 시간솎음의 약자이고, DIF는 주파수솎음을 나타낸다.
ALU0 ALU1 ALU1 ALU0 ALU0 ALU1
DIT기수-2 DIT기수-4 DIT기수-4 DIT기수-4 odd/subtr+DIT 기수4 bypass
표1은 512 실수 FFT를 수행하기 위하여 인입 데이터에 대해 수행될 연산 시퀀스의 개요로, 데이터는 이 표를 통해 좌에서 우로 처리된다. 도 1을 참조한다.
버터플라이 FFT 계산에 다음에 IFFT가 실행된다.
ALU1 ALU0 ALU0 ALU1 ALU1 ALU0
bypass DIF 기수2+add/sub DIT기수-4 DIT기수-4 DIT기수4 DIT기수4
표 2는 512 실수 IFFT를 수행하기 위하여 인입 데이터에 대해 수행될 연산 시퀀스의 개요로, 이 표를 통해 시퀀스는 좌에서 우이고 도 1을 참조한다.
FFT 변환 방향에서, 데이터는 ALU0으로 진입하고, 최종 FFT 결과가 ALU1을 거쳐 메모리 배열부로 전달되는 한편, 대향 방향은 IFFT에 사용된다. 그럼에도 불구하고 많은 다른 조합들이 불가능하므로, 제어 유닛은 특정 시퀀스를 실현하기 위한 각각의 시간에 부합된다.
다른 주목할 사항은 기수-2 및 기수-4형 연산을 수행하기 위하여, 시간솎음 단계가 주파수솎음 단계로 및 그 역으로 대체될 수 있다는 것이다.
또한, 복소수 FFT 및 IFFT를 수행하기 위해서는 DIF 빌딩 블록뿐 아니라 DIT 모두는 상술된 시퀀스로 사용될 수 있으므로, DIT 및 DIF 블록도 혼용될 수 있다. 그러나, 후자의 해결책은 실용화되지 않으므로 거의 사용되지 않을 것이다.
상술된 바와 같이, FFT 변환 알고리즘의 당업자는 DIF 변화뿐 아니라 DIT 모두에 대해 기수-2, 기수-4 및 특수 기수-2 및 기수-4 빌딩 블록을 수행하기 위한 다른 실시예들을 실현하도록 또한 적응된다. DIT인 경우, 먼저 곱셈 단계가 실행된 다음에, 가산/감산 단계가 실행되는 한편, 이 시퀀스는 DIF 변화에 대해서는 반전된다는 것을 알아야 한다. 이러한 실현은 본 발명의 범위를 벗어나고 예를 들면 특정 문헌에 밝혀져 있기 때문에, 본 발명에서는 더 설명되지 않을 것이다.
본 발명의 원리가 특정 장치와 관련하여 상술되었지만, 본 설명은 첨부된 청구범위에 한정된 바와 같이, 예로써만 이루어지고 본 발명의 범위를 한정하지 않는다는 것을 명백히 알 수 있다.

Claims (11)

  1. 입력 데이터(datain)의 연속적인 샘플을 수신하여 저장하도록 적응된 메모리 배열부(MA),
    상기 메모리 배열부(MA)에 결합되어, 제1 산술 유닛 입력 데이터(datainALU0)의 제1 세트를 그로부터 수신하며, 버터플라이(butterfly) 고속 푸리에 변환 산술 계산들중 적어도 하나의 유형을 수행하고, 전달하기 위한 제1 산술 유닛 출력 데이터(dataout1ALU0)의 제1 세트를 발생하도록 적응된 제1 산술 유닛(ALU0),
    상기 제1 산술 유닛(ALU0)에 결합되어, 상기 제1 산술 유닛 출력 데이터(dataout1ALU0)의 제1 세트를 임시 저장하도록 적응된 스크래치 메모리(scratch memory)(SCRRAM), 및
    상기 스크래치 메모리(SCRRAM) 및 상기 메모리 배열부(MA)에 결합되어, 상기 스크래치 메모리(SCRRAM)로부터 상기 제1 산술 유닛 출력 데이터(dataout1ALU0)의 제1 세트를 수신하며, 바이패스 동작 또는 상기 버터플라이 고속 푸리에 변환 산술 계산들중 적어도 하나의 유형을 수행하여, 상기 메모리 배열부(MA)에 전달하기 위한 제2 산술 유닛 출력 데이터(dataout1ALU1)의 제1 세트를 발생하도록 적응된 제2 산술 유닛(ALU1)
    를 포함하되,
    상기 메모리 배열부(MA)는 상기 제2 산술 유닛 출력 데이터(dataout1ALU1)의 제1 세트가 중간의 각각의 최종 고속 푸리에 변환 결과를 구성하는지의 여부를 결정하도록 적응되며,
    만약 상기 제2 산술 유닛 출력 데이터(dataout1ALU1)의 제1 세트가 최종 고속 푸리에 변환 결과를 구성하면, 상기 메모리 배열부(MA)는 상기 제2 산술 유닛 출력 데이터(dataout1ALU1)의 제1 세트를 상기 입력 데이터(datain)의 상기 연속적인 샘플의 연속적인 고속 푸리에 변환 결과(dataout)로서 상기 파이프라인된 고속 푸리에 변환 프로세서의 출력 단자에 전달하도록 더 적응된 파이프라인된 고속 푸리에 변환 프로세서(FFTP)에 있어서,
    상기 제1 산술 유닛(ALU0)은 상기 제2 산술 유닛(ALU1)이 실행할 수 없는 상기 제1 산술 유닛 입력 데이터(datainALU0)의 상기 제1 세트에 대해 버터플라이 고속 푸리에 변환 계산들중 적어도 하나의 다른 유형을 수행하도록 적응되며,
    상기 제1 산술 유닛 출력 데이터(dataout1ALU0)의 제1 세트는 상기 제1 산술 유닛 입력 데이터(datainALU0)의 제1 세트에 대해 상기 버터플라이 고속 푸리에 변환 산술 계산들중 상기 적어도 하나의 유형 또는 상기 적어도 하나의 다른 유형중 하나를 수행함으로써 얻어지는 파이프라인된 고속 푸리에 변환 프로세서.
  2. 입력 데이터(datain')의 연속적인 샘플을 수신하여 저장하도록 적응된 메모리 배열부(MA'),
    상기 메모리 배열부(MA')에 결합되어, 제1 산술 유닛 입력 데이터(datainALU0')의 제1 세트를 그로부터 수신하며, 버터플라이(butterfly) 고속 푸리에 변환 산술 계산들중 적어도 하나의 유형을 수행하고, 전달하기 위한 제1 산술 유닛 출력 데이터(dataout1ALU0')의 제1 세트를 발생하도록 적응된 제1 산술 유닛(ALU0'),
    상기 제1 산술 유닛(ALU0')에 결합되어, 상기 제1 산술 유닛 출력 데이터(dataout1ALU0')의 제1 세트를 임시 저장하도록 적응된 스크래치 메모리(scratch memory)(SCRRAM'), 및
    상기 스크래치 메모리(SCRRAM') 및 상기 메모리 배열부(MA')에 결합되어, 상기 스크래치 메모리(SCRRAM')로부터 상기 제1 산술 유닛 출력 데이터(dataout1ALU0')의 제1 세트를 수신하며, 바이패스 동작 또는 상기 버터플라이 고속 푸리에 변환 산술 계산들중 적어도 하나의 유형을 수행하여, 상기 메모리 배열부(MA')에 전달하기 위한 제2 산술 유닛 출력 데이터(dataout1ALU1')의 제1 세트를 발생하도록 적응된 제2 산술 유닛(ALU1')
    을 포함하되,
    상기 메모리 배열부(MA')는 상기 제2 산술 유닛 출력 데이터(dataout1ALU1')의 제1 세트가 중간의 각각의 최종 고속 푸리에 변환 결과를 구성하는지의 여부를 결정하도록 적응되며,
    만약 상기 제2 산술 유닛 출력 데이터(dataout1ALU1')의 제1 세트가 최종 고속 푸리에 변환 결과를 구성하면, 상기 메모리 배열부(MA')는 상기 제2 산술 유닛 출력 데이터(dataout1ALU1')의 제1 세트를 상기 입력 데이터(datain')의 연속적인 샘플의 연속적인 고속 푸리에 변환 결과(dataout)로서 상기 파이프라인된 고속 푸리에 변환 프로세서의 출력 단자에 전달하도록 더 적응된 파이프라인된 고속 푸리에 변환 프로세서(FFTP')에 있어서,
    상기 제2 산술 유닛(ALU1')은, 상기 제1 산술 유닛(ALU0')이 실행할 수 없는 상기 제1 산술 유닛 출력 데이터(dataout1ALU0')의 제1 세트에 대해 버터플라이 고속 푸리에 변환 계산들중 적어도 하나의 다른 유형을 수행하도록 적응되며,
    상기 제2 산술 유닛 출력 데이터(dataout1ALU1')의 제1 세트는 상기 제1 산술 유닛 출력 데이터(dataout1ALU0')의 제1 세트에 대해 상기 버터플라이 고속 푸리에 변환 산술 계산들중 상기 적어도 하나의 유형 또는 상기 적어도 하나의 다른 유형중 하나, 또는 상기 바이패스 동작을 수행함으로써 얻어지는 파이프라인된 고속푸리에 변환 프로세서.
  3. 제1항에 있어서, 상기 제1 산술 유닛(ALU0)은 상기 제1 산술 유닛 입력 데이터(datainALU0)의 제1 세트에 대해 바이패스 동작을 수행하도록 더 적응되며, 상기 제1 산술 유닛 출력 데이터(dataout1ALU0)의 제1 세트는 상기 제1 산술 유닛 입력 데이터(datainALU0)의 제1 세트로 구성되는 파이프라인된 고속 푸리에 변환 프로세서.
  4. 제2항에 있어서, 상기 제1 산술 유닛(ALU0')은 상기 제1 산술 유닛 입력 데이터(datainALU0')의 제1 세트에 대해 바이패스 동작을 수행하도록 더 적응되며, 상기 제1 산술 유닛 출력 데이터(dataout1ALU0')의 제1 세트는 상기 제1 산술 유닛 입력 데이터(datainALU0')의 제1 세트로 구성되는 파이프라인된 고속 푸리에 변환 프로세서.
  5. 제1항, 제2항, 제3항 또는 제4항에 있어서,
    상기 메모리 배열부(MA, MA')는, 상기 제2 산술 유닛 출력 데이터(dataout1ALU1, dataout1ALU1')의 제1 세트가 중간 고속 푸리에 변환 결과를 구성하면 상기 제2 산술 유닛 출력 데이터(datatout1ALU1, dataout1ALU1')의 제1 세트를 상기 제1 산술 유닛 입력 데이터(datainALU0, datainALU0')의 제1 세트로서 상기 제1 산술 유닛(ALU0, ALU0')에 전달하도록 더 적응되는 파이프라인된 고속 푸리에 변환 프로세서.
  6. 제1항 또는 제3항에 있어서,
    상기 메모리 배열부(MA)는, 상기 제2 산술 유닛 출력 데이터(dataout1ALU1)의 제1 세트가 중간 고속 푸리에 변환 결과를 구성하면 상기 제2 산술 유닛 출력 데이터(dataout1ALU1)의 제1 세트를 상기 제2 산술 유닛 입력 데이터(datainALU1)의 제1 세트로서 상기 제2 산술 유닛(ALU1)에 전달하도록 더 적응되며,
    상기 제2 산술 유닛(ALU)은 상기 메모리 배열부로부터 상기 제2 산술 유닛 입력 데이터(datainALU1)의 제1 세트를 수신하고, 상기 바이패스 동작 또는 상기 고속 푸리에 변환과 관련된 산술 계산들중 상기 적어도 하나의 유형을 수행하여, 상기 스크래치 메모리(SCRRAM)로 전달하기 위한 상기 제2 산술 유닛 출력 데이터(dataout2ALU1)의 제2 세트를 발생하도록 더 적응되며,
    상기 제1 산술 유닛(ALU0)은 상기 스크래치 메모리(SCRRAM)로부터 상기 제2 산술 유닛 출력 데이터(dataout2ALU1)의 제2 세트를 수신하고, 상기 제2 산술 유닛 출력 데이터(dataout2ALU1)의 제2 세트에 대해 상기 바이패스 동작 또는 상기 버터플라이 고속 푸리에 변환과 관련된 산술 계산들중 상기 적어도 하나의 유형 또는 상기 적어도 하나의 다른 유형을 수행하여, 상기 제1 산술 유닛 출력 데이터(dataout2ALU0)의 제2 세트를 상기 메모리 배열부(MA)에 전달하도록 더 적응되며,
    상기 메모리 배열부(MA)는 상기 제1 산술 유닛 출력 데이터(dataout2ALU0)의 제2 세트가 중간의 각각의 최종 고속 푸리에 변환 결과를 구성하는지의 여부를 결정하도록 적응되되,
    상기 제1 산술 유닛 출력 데이터(dataout2ALU0)의 제2 세트가 최종 고속 푸리에 변환 결과를 구성하는 경우, 상기 메모리 배열부(MA)는 상기 제1 산술 유닛 출력 데이터(dataout2ALU0)의 제2 세트를 상기 입력 데이터(datain)의 연속적인 샘플의 연속적인 고속 푸리에 변환 결과(dataout)로서 상기 파이프라인된 고속 푸리에 변환 프로세서의 상기 출력 단자에 전달하도록 더 적응되며,
    상기 제1 산술 유닛 출력 데이터(dataout2ALU0)의 제2 세트가 중간 고속 푸리에 변환 결과를 구성하는 경우, 상기 메모리 배열부(MA)는 상기 제1 산술 유닛 출력 데이터(dataout2ALU0)의 제2 세트를 상기 제1 산술 유닛 입력 데이터(datainALU0)로서 상기 제1 산술 유닛(ALU0)에 전달하거나 또는 상기 제2 산술 유닛 입력 데이터(datainALU1)로서 상기 제2 산술 유닛(ALU1)에 전달하도록 더 적응되는 파이프라인된 고속 푸리에 변환 프로세서.
  7. 제2항 또는 제4항에 있어서,
    상기 메모리 배열부(MA')는, 상기 제2 산술 유닛 출력 데이터(dataout1ALU1')의 제1 세트가 중간 고속 푸리에 변환 결과를 구성하면 상기 제2 산술 유닛 출력 데이터(dataout1ALU1')의 제1 세트를 상기 제2 산술 유닛 입력 데이터(datainALU1')의 제1 세트로서 상기 제2 산술 유닛(ALU1')에 전달하도록 더 적응되며,
    상기 제2 산술 유닛(ALU1')은 상기 메모리 배열부로부터 상기 제2 산술 유닛 입력 데이터(datainALU1')의 제1 세트를 수신하고 상기 바이패스 동작 또는 상기 고속 푸리에 변환과 관련된 산술 계산들중 상기 적어도 하나의 유형, 또는 상기 적어도 하나의 다른 유형을 수행하여, 상기 스크래치 메모리(SCRRAM')로 전달하기 위한 상기 제2 산술 유닛 출력 데이터(dataout2ALU1')의 제2 세트를 발생하도록 더 적응되며,
    상기 제1 산술 유닛(ALU0')은 상기 스크래치 메모리(SCRRAM')로부터 상기 제2 산술 유닛 출력 데이터(dataout2ALU1')의 제2 세트를 수신하고, 상기 제2 산술 유닛 출력 데이터(dataout2ALU1')의 제2 세트에 대해 상기 바이패스 동작 또는 상기 버터플라이 고속 푸리에 변환과 관련된 산술 계산들중 상기 적어도 하나의 유형 또는 상기 적어도 하나의 다른 유형을 수행하여, 상기 제1 산술 유닛 출력 데이터(dataout2ALU0')의 제2 세트를 상기 메모리 배열부(MA')에 전달하도록 더 적응되며,
    상기 메모리 배열부(MA')는 상기 제1 산술 유닛 출력 데이터(dataout2ALU0')의 제2 세트가 중간의 각각의 최종 고속 푸리에 변환 결과를 구성하는지의 여부를 결정하도록 적응되되,
    상기 제1 산술 유닛 출력 데이터(dataout2ALU0')의 제2 세트가 최종 고속 푸리에 변환 결과를 구성하는 경우, 상기 메모리 배열부(MA')는 상기 제1 산술 유닛 출력 데이터(dataout2ALU0')의 제2 세트를 상기 입력 데이터(datain')의 연속적인 샘플의 연속적인 고속 푸리에 변환 결과(dataout')로서 상기 파이프라인된 고속 푸리에 변환 프로세서의 상기 출력 단자에 전달하도록 더 적응되며,
    상기 제1 산술 유닛 출력 데이터(dataout2ALU0')의 제2 세트가 중간 고속 푸리에 변환 결과를 구성하는 경우, 상기 메모리 배열부(MA')는 상기 제1 산술 유닛 출력 데이터(dataout2ALU0')의 제2 세트를 상기 제1 산술 유닛 입력 데이터(datainALU0')로서 상기 제1 산술 유닛(ALU0')에 또는 상기 제2 산술 유닛 입력 데이터(datainALU1')로서 상기 제2 산술 유닛(ALU1')에 전달하도록 더 적응되는 파이프라인된 고속 푸리에 변환 프로세서.
  8. 제1항 또는 제2항에 있어서, 상기 버터플라이 고속 푸리에 변환 산술 계산들중 상기 적어도 하나의 유형은 기수-4형 고속 푸리에 변환 단계를 수행하기 위한 일련의 계산들로 구성되는 파이프라인된 고속 푸리에 변환 프로세서.
  9. 제7항에 있어서, 상기 버터플라이 고속 푸리에 변환과 관련된 산술 계산들중 상기 적어도 하나의 다른 유형은 기수-2형 고속 푸리에 변환 단계를 수행하기 위한 일련의 계산들로 구성되는 파이프라인된 고속 푸리에 변환 프로세서.
  10. 제7항에 있어서, 상기 버터플라이 고속 푸리에 변환과 관련된 산술 계산들중 상기 적어도 하나의 다른 유형은 부수적인 가산/감산 단계 다음에, 기수-4형 고속 푸리에 변환 단계를 수행하기 위한 일련의 계산들로 구성되는 파이프라인된 고속 푸리에 변환 프로세서.
  11. 제7항에 있어서, 상기 버터플라이 고속 푸리에 변환과 관련된 산술 계산들중 상기 적어도 하나의 다른 유형은 기수-2형 고속 푸리에 변환 단계를 수행하기 위한 일련의 계산들 다음에, 부수적인 가산/감산 단계로 구성되는 파이프라인된 고속 푸리에 변환 프로세서.
KR1019990008417A 1998-03-13 1999-03-12 파이프라인된 고속 푸리에 변환 프로세서 KR19990077845A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP98400603A EP0942379A1 (en) 1998-03-13 1998-03-13 Pipelined fast fourier transform processor
BE98400603.1 1998-03-13

Publications (1)

Publication Number Publication Date
KR19990077845A true KR19990077845A (ko) 1999-10-25

Family

ID=8235298

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990008417A KR19990077845A (ko) 1998-03-13 1999-03-12 파이프라인된 고속 푸리에 변환 프로세서

Country Status (8)

Country Link
US (1) US6330580B1 (ko)
EP (1) EP0942379A1 (ko)
KR (1) KR19990077845A (ko)
AU (1) AU1841999A (ko)
CA (1) CA2263626A1 (ko)
IL (1) IL128620A0 (ko)
SG (1) SG74702A1 (ko)
TW (1) TW410302B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2794921B1 (fr) * 1999-06-14 2001-09-14 St Microelectronics Sa Procede et dispositif de transformation de donnees reelles en symboles complexes, notamment pour la reception de porteuses modulees en phase et en amplitude et transmises sur une ligne telephonique
US7543010B2 (en) * 2003-11-03 2009-06-02 Board Of Regents, The University Of Texas System Modular pipeline fast Fourier transform
US7437396B2 (en) * 2004-03-31 2008-10-14 Intel Corporation Apparatus and method for generating transforms
US8356064B1 (en) * 2006-11-07 2013-01-15 Marvell International Ltd. Discrete Fourier transform calculation method and apparatus
US7675847B2 (en) 2007-07-10 2010-03-09 Wipro Limited Hardware implementation of a programmable FFT based on a half length FFT core

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4393457A (en) * 1981-03-26 1983-07-12 Advanced Micro Devices, Inc. Method and apparatus for sequencing addresses of a fast Fourier transform array
US4689762A (en) * 1984-09-10 1987-08-25 Sanders Associates, Inc. Dynamically configurable fast Fourier transform butterfly circuit
US5303172A (en) * 1988-02-16 1994-04-12 Array Microsystems Pipelined combination and vector signal processor
US5038311A (en) * 1990-08-10 1991-08-06 General Electric Company Pipelined fast fourier transform processor
US5293330A (en) * 1991-11-08 1994-03-08 Communications Satellite Corporation Pipeline processor for mixed-size FFTs
EP0710915B1 (en) * 1994-11-07 2000-05-31 Alcatel Fast fourier transform dedicated processor
DE69837299T2 (de) * 1997-01-22 2007-06-28 Matsushita Electric Industrial Co., Ltd., Kadoma System und Verfahren zur schnellen Fourier-Transformation
JP3938238B2 (ja) * 1997-02-04 2007-06-27 沖電気工業株式会社 高速フーリエ変換処理装置

Also Published As

Publication number Publication date
US6330580B1 (en) 2001-12-11
EP0942379A1 (en) 1999-09-15
CA2263626A1 (en) 1999-09-13
AU1841999A (en) 1999-09-23
SG74702A1 (en) 2000-08-22
TW410302B (en) 2000-11-01
IL128620A0 (en) 2000-01-31

Similar Documents

Publication Publication Date Title
US6061705A (en) Power and area efficient fast fourier transform processor
US4689762A (en) Dynamically configurable fast Fourier transform butterfly circuit
US5297070A (en) Transform processing circuit
US4675836A (en) Discrete cosine transform calculation processor
KR20070060074A (ko) 가변적 크기의 고속 직교 변환을 구현하기 위한 방법 및장치
US5481488A (en) Block floating point mechanism for fast Fourier transform processor
CA2269464A1 (en) A device and method for calculating fft
EP1429256A2 (en) Apparatus and method for computing an FFT in a programmable processor
US5732251A (en) DSP with register file and multi-function instruction sequencer for vector processing by MACU
KR19990077845A (ko) 파이프라인된 고속 푸리에 변환 프로세서
EP0428625A1 (en) Apparatus and method for flexible control of digital signal processing devices
EP1076296A2 (en) Data storage for fast fourier transforms
KR20010110202A (ko) 2사이클 고속 푸리에 변환
US6023719A (en) Signal processor and method for fast Fourier transformation
US20030212722A1 (en) Architecture for performing fast fourier-type transforms
Arguello et al. Parallel architecture for fast transforms with trigonometric kernel
Perera Architectures for multiplierless fast Fourier transform hardware implementation in VLSI
Ahmed Directions in DSP processors
US5018091A (en) Discrete fourier transform calculating processor comprising a real-time testing device
Guo An efficient parallel adder based design for one dimensional discrete Fourier transform
Kuralkar Design of fast fourier transform using processing element for real valued signal
Ramesh et al. Comprehensive address generator for digital signal processing
Johannesson FFTs on a linear SIMD array
Kallapu et al. DRRA-based Reconfigurable Architecture for Mixed-Radix FFT
CN115146222A (zh) Fft处理系统、处理方法及dsp处理器

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee