Effiziente Abbildung von Audio-Algorithmen in Programmierbarer Logik und ASICs Rock ’n’ Roll im FPGA

Audio-Applikationen mit niedriger Sample-Frequenz können bis dato effizienter in DSPs als in FPGAs implementiert werden. Doch seit neuestem gibt es bei dem Werkzeug Synplify DSP eine Funktion, mit der man auch effizient auf FPGAs solche Algorithmen abbilden kann, die viele Multiplikationen enthalten und mit geringer Abtastrate arbeiten. Das Werkzeug setzt auf dem Industriestandard Matlab/Simulink auf.

Effiziente Abbildung von Audio-Algorithmen in Programmierbarer Logik und ASICs

Audio-Applikationen mit niedriger Sample-Frequenz können bis dato effizienter in DSPs als in FPGAs implementiert werden. Doch seit neuestem gibt es bei dem Werkzeug Synplify DSP eine Funktion, mit der man auch effizient auf FPGAs solche Algorithmen abbilden kann, die viele Multiplikationen enthalten und mit geringer Abtastrate arbeiten. Das Werkzeug setzt auf dem Industriestandard Matlab/Simulink auf.

INHALT:
Applikationsbeispiel: Sample-Rate-Konvertierung
Der Algorithmus beinhaltet zwei Schritte
Die Implementierung mit Hilfe von „Filter Design and Analysis“
Die Optimierung mit Hilfe der „Folding“-Option
Steckbrief“ des Programmwerkzeugs
Literatur
verwandte Artikel
Autor

Selbst „Low Cost“-FPGAs stellen dem Anwender heute eine Rechenleistung zur Verfügung, die weit über der von Digitalen Signalprozessoren (DSPs) liegt. Aktuelle FPGAs verfügen über dedizierte Multiplizierer und sogar DSP-Blöcke (MAC), welche die Signalverarbeitung mit Taktfrequenzen von 250 MHz und mehr ermöglichen. Bis jetzt spielt das für die Verarbeitung von Audiosignalen jedoch keine Rolle. Die Implementierung eines Audio-Algorithmus, der im Kilohertzbereich arbeitet, nutzt im FPGA exakt die gleichen Ressourcen, die auch für die Verarbeitung von Signalen im dreistelligen Megahertzbereich benötigt werden. Programmierbare Logikbausteine (PLDs, FPGAs) werden dementsprechend eher selten für die Verarbeitung niederfrequenter Signale genutzt. Aus der parallelen Verarbeitung mathematischer Operationen in Hardware resultiert eben kein Vorteil im Vergleich zu einer Implementierung in klassischen Signalprozessoren. Vielmehr ist es so, dass Audio-Applikationen eine derart hohe Anzahl an Multiplikationen aufweisen, dass eine Abbildung nur mit hochkomplexen FPGAs möglich ist. Applikationen mit niedriger Sample-Frequenz können dementsprechend bis jetzt effizienter – bei gleichzeitig günstigeren Kosten und bewährter Software-Unterstützung – in DSPs implementiert werden.

Seit neuestem bietet jedoch das Werkzeug Synplify DSP die Möglichkeit, auch solche Algorithmen effizient auf FPGAs abzubilden, die viele Multiplikationen enthalten und mit geringer Abtastrate arbeiten. Das Werkzeug setzt auf dem Industriestandard Matlab/Simulink der Firma The Mathworks auf. Über ein spezielles „blockset“ und/oder eine Beschreibung in der proprietären Scriptingsprache „m“ wird der Algorithmus definiert und später in eine Hardware-Beschreibungssprache (RTL) übersetzt. Das Blockset ermöglicht die Implementierung sowohl von Single-Rate- als auch von Multi-Rate-Systemen. Es übernimmt neben der Generierung von VHDL- oder Verilog-Code zudem auch Aufgaben wie die Quantisierung und die Anbindung an Blocksets der Simulink-Entwicklungsumgebung.