www.mikrocontroller.net

Forum: Digitale Signalverarbeitung / DSP Audio DSP Programmierung


Autor: Tobias Kieser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich schätze mal diese Frage habt ihr schon tausend mal gehört. Trotzdem
wollte ich nachfragen, was euerer Meinung nach die beste Lösung für den
Einstieg in die DSP programmierung ist. Ich hätte mir da z.B. die DSP`s
von Analog genauer angeschaut. Vorallem die SigmaDSP Serie wäre für mich
interessant, da sie mit der Software SigmaStudio graphisch programmiert
werden könnte. Da ich aber noch Schüler bin kann ich mir die Software
nicht leisten. Gibt es also eine mögliche alternativen die eine
graphische programmierung zulassen oder würdet ihr mir davon
vollständig abraten? Mir geht es derzeit vorrangig um die Software.
Hardware währe das kleinere Problem.
Ich hoffe ihr könnt mir weiterhelfen und bedanke mich schon mal im
Vorraus für die Antworten.

MfG

Tobias Kieser

Autor: Golimar (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, wie es halt immer so ist. Bei der grafischen Programmierung geht
immer so bisschen der Hintergrund verloren. Gerade der ist durchaus
wichtig, um vernünftig programmieren zu können.

Ich habe DSPs (von TI) bisher immer in C programmiert, und komme damit
eigentlich gut zurecht. Der erzeugte Code erreicht ca. 80% der
Geschwindigkeit, die man erreichen würde, wenn man das Problem direkt
in Assembler umsetzt.

Zusammengefasst: ich persönlich halte von den grafischen
"Programmiersprachen" nichts. Wenn man mal was schnell ausprobieren
möchte, ist es allerdings schon nützlich.

Übrigens solltest du dich fragen, was du genau im Bereich Audio machen
möchtest. Einfache Filteraufgaben etv. können schon µC mit
DSP-Funktionalität (z. B. dsPIC) übernehmen. Für diese gibt es
kostenlose Compiler und Entwicklungsumgebungen. Auch die Anforderungen
an die Hardware sind sehr gering: µC, Quarz, Codec und ein paar
Kondensatoren. Als erster Einstieg vielleicht eine echte Alternative...

Autor: Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich sehe kein Problem bei grafischen Programmiersprachen, kann mir
auch nicht vorstellen, dass die wesentlich langsamer als C sein sollen.
Für die Filterroutinen werden diese letzendlich genauso auf
handoptimierten Assemblercode zurückgreifen wie der Linker bei C auch,
wenn du denn Herstellerlibs verwendest. Was hat denn der Codegenerator
bei grafischen DSP Sprachen schon groß zu tun? Man benutzt vertige
Blöcke und leitet den Signalfluß entspechend um, und dann müssen noch
die Filterkoeffizenten erzeugt werden, aber das machst du ja für C auch
mit Matlab.
Ich habe in meiner Diplomarbeit mit dem "Embedded Target for Motorola
MPC555" für Matlab/Simulink gearbeitet und bin wirklich begeistert
davon. In weniger als 4h(!) habe ich damit eine adaptive
Drehzahlregelung aufgebaut, mit der Sprungantworten in der
Führungsgröße immer gleich aussehen, egal wie ich den Motor belaste.
Mach sowas mal von Hand in C, da sitzt du aber mindestens ne Woche
dran.

Autor: Matthias Ratei (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Man benutzt vertige Blöcke und leitet den Signalfluß entspechend um,
>und dann müssen noch die Filterkoeffizenten erzeugt werden, aber das
>machst du ja für C auch mit Matlab.

Solange es um C geht, ja! Aber was ist mit VHDL ? Wie bringst Du die 
zusätzliche Dimension Fläche<->Latenz ins Spiel?

Bei C++ Objekten ist es egal wie er es baut, da am Ende sowieso alles 
per Sequenziellem Prozessor gerechnet wird.

Aber wie löst du die Systempartitionierung ?

Die Grafik ist niemals der einzige Input, aus dem der Output generiert 
werden kann. Vielmehr ist die Grafik bereits Ergebnis solcher 
Überlegungen. wie könnte man diese vorgeben, soßaß ein MATLAB Tool das 
optimieren kann?

Beitrag #3103117 wurde von einem Moderator gelöscht.
Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wir früher haben uns vor 20 Jahren ein DSP56002 EVM für 100 DM gekauft 
und unsere Algorithmen in Assembler auf das Board gebracht. Ging auch 
ohne Maus.

Was willst Du? Nur irgendwelche Effekte zusammenschubsen oder wirklich 
wissen, wie es geht? In ersten Fall kannst Du irgendwelche Audiosoftware 
verwenden. Im zweiten Fall führt am selber programmieren mit C und/oder 
Assembler kein Weg vorbei.

Und der DSP56k ist mit 24 Bit Wortbreite und 56 Bit Akkumulatoren immer 
noch eine schöne Plattform für Audio. 16 Bit interne Wortbreite ist für 
Audio etwas knapp.

fchk

Beitrag #3186765 wurde von einem Moderator gelöscht.
Beitrag #3186774 wurde von einem Moderator gelöscht.
Beitrag #3186917 wurde von einem Moderator gelöscht.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.