Verilog: FFT mit 32K-Punkt-Transformationslänge

author-image

Von

Dieses Beispiel beschreibt eine 32K-Punkt schnelle Fourier-Transformation (FFT), die den FFT-Intel® FPGA IP-Kern verwendet. Der FFT ist ein separater Fourier-Transform-Algorithmus (DFT), der die Anzahl der benötigten Rechenvorgänge von O(N2) zu O(NlogN) durch Zersetzung reduziert. Die DFT einer Sequenz x(n) wird durch die folgende Gleichung gegeben:

Equation for the DFT of a sequence x(n)wobei k = 0, 1, ... N-1 und N ist die Transformationslänge.

In diesem Designbeispiel beträgt die Transformationslänge N 32768. Mit der Dezimierung-in-Time-Methode (DIT) unterbricht das Design die Eingabesequenz in ungerade und sogar Proben, die in die beiden einzelnen 16K-Punkt-FFT-Blöcke einspeist, die parallel unter Verwendung des FFT-Intel FPGA IP kerns implementiert werden. Die Ergebnisse des FFT Intel FPGA IP kerns werden neu kombiniert und neu geordnet, um die endgültige FFT-Ausgabe zu erhalten. Dies wird in Abbildung 1 angezeigt. Das Designbeispiel ähnelt dem FFT-Intel FPGA IP kern und verwendet die konformen Input- und Output-Schnittstellen von "Pakt".

Laden Sie die in diesem Beispiel verwendeten Dateien herunter:

Die Verwendung dieses Designs unterliegt den Bedingungen der Intel® Hardware-Referenzdesignlizenzvereinbarung.

Zu den Dateien im zip-Download gehören:

  • fft_32K.v – Top-Level-Designdatei zur Implementierung des 32K-Punkt-FFT
  • parse_fft_input.v – Sortiert die Eingabeprobe in gerade und ungerade Proben um, um sie in die beiden kleineren 16K-Punkt-FFT-Blöcke einfließen zu können
  • fft_small.v – Wrapper-Datei, die vom FFT-Intel FPGA IP generiert wird. Der Kern ist so konfiguriert, dass er die Transform-Länge von 16K implementiert, und er verwendet die Streaming-I/O-Datenflussstruktur.
  • combine_fft.v – Kombiniert die Ausgabe der einzelnen 16K-Punkt-FFT-Blocks unter Verwendung der entsprechenden Twiddle-Faktoren neu
  • fft_32K_streaming_tb.v – Testbench für RTL-Simulation
  • fft_32K_streaming_vo_msim.tcl –TCL-Skript zur Automatisierung des RTL-Simulationsprozesses in der ModelSim- Intel FPGA-Software
  • fft_32K_tb.m – MODELL VON "MODEL" zur Verifizierung der RTL-Simulationsergebnisse

Abbildung 1 zeigt das Top-Level-Diagramm des 32K-Punkt FFT-Designbeispiels.

Abbildung 1. Top-Level-Diagramm des 32K-Point FFT-Designs.

Tabelle 1 listet die Ports auf und gibt eine Beschreibung für die einzelnen Ports.

Weiterführende Links

Weitere Informationen zu verwandten Funktionen, die in diesem Designbeispiel in Ihrem Projekt verwendet werden, siehe:

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.