Ich arbeite an einem DSP-Projekt (IIR-Filterung) auf einem digitalen Signalprozessor von Analog Devices (BF706) mit der mitgelieferten Compiler-Suite CrossCore Studio. Es enthält einige Beispiele für einfache DSP-Funktionen wie FIR- und IIR-Filter und Bibliotheksfunktionen. Das Prozessorhandbuch beschreibt die Montageanleitung und kommentiert C nicht.
Meine Frage ergibt sich aus dieser bestimmten Anwendung, aber ich dachte, es gibt eine bewährte Methode, die DSP-Entwickler befolgen. Also werde ich es allgemein einrahmen:
Anhand der mit diesem DSP gelieferten Beispiele habe ich festgestellt, dass ich, wenn ich die für DSP-Anwendungen konzipierten Schaltungen verwenden möchte, Assembler programmieren muss, um diese Anweisungen direkt auszuführen (wie Multiplizieren und Addieren usw.). Meine Frage ist, ob Ich programmiere nur in C, würde der Compiler (der ebenfalls von der DSP-Chip-Firma stammt) es nicht für diesen DSP optimieren und seine Fähigkeiten nutzen? Oder muss ich wirklich DSP-Routinen direkt in Assembler schreiben?