DSP-Entwicklungsumgebung

Besondere Bedeutung für den Erfolg bei der Programmierung und Erprobung eigener Software haben die Entwicklungswerkzeuge. Neben des eigentlichen Assemblers und C-Compilers gehört dazu auch ein Debugger, mit dem man den erstellten Code auf die Zielplattform laden und im Einzelschritt testen kann. Auch ein Simulator kann im Vorfeld gute Dienste leisten und die Entwicklungszeit verkürzen. Für die Motorola-DSP563xx-Familie können diese Werkzeuge frei aus dem Internet geladen werden, was ein wesentliches Kriterium bei der Auswahl des DSPs war.

Die Erstellung der Quelltexte sollte in einem geeigneten Editor erfolgen, der zusätzlich zum Syntax-Highlighting auch die Einbindung von Assembler- und Compiler-Aufrufen, sowie die Ausgabe ihrer Warn- und Fehlermeldungen unterstützt. Empfehlenswert ist die Shareware UltraEdit oder auch der freie CrimsonEditor. Beide erfüllen genannte Anforderungen und bieten noch eine Menge mehr.

Simulation von Algorithmen

Vor jedem Programmieren einer Signalverarbeitungsapplikation muß die zugrunde liegende Mathematik entworfen und verifiziert werden. Dazu dienen numerische Simulationsprogramme, von denen MATLAB eines der populärsten sein dürfte. Da es sich dabei um teure kommerzielle Software handelt, werden die wenigsten Leser Zugriff darauf haben, aber es gibt auch hier sehr gute freie Alternativen, die hinsichtlich Leistungsfähigkeit kaum nachstehen. Allen voran sollen hier Octave und Scilab erwähnt werden. Aufgrund der großen Anzahl an mitgelieferten Signalverarbeitungsfunktionen ist Scilab besonders empfehlenswert. MATLAB-Nutzer mögen hingegen lieber auf Octave zurückgreifen, da die Syntax nachempfunden wurde.

Unidsp56 board Mit Hilfe der genannten Software können interaktiv Datenströme generiert, bearbeitet und ausgewertet, oder sogar ganze Signalverarbeitungsketten (z.B. gesamter Sender und Empfänger) programmiert und simuliert werden. Das Bild zeigt die Trajektorie einer PI/4-DQPSK-Modulation. Erst wenn ein Algorithmus hier in der Simulation funktioniert, ist das Implementieren auf einem DSP sinnvoll. Um die korrekte Funktionalität in der Praxis zu verifizieren, können Daten vom DSP-Board über den Debugger in die Simulationsumgebung geladen werden, um die realen Daten im Zeit- und Frequenzbereich auszuwerten und ggf. mit den Sollwerten der Simulation zu vergleichen. Selbst das Generieren und Herunterladen von „künstlichen“ Eingangsdaten für das DSP-Board ist möglich, was zum Test der programmierten Funktionen direkt auf der Ziel-Hardware sehr hilfreich ist. Beispielskripte dafür und zum Design und Simulation von einfachen Filtern bis hin zu gesamten Übertragungsstrecken sind ebenfalls von Gerrit, DL9GFA, erhältlich.