Open source Toolchain für DSP SDR Projekt

Gast #3261142
Lesenswert?
• ▲
▼
Hallo!

Mich würde interessieren, welche Erfahrungen von anderen bislang mit 
open source Toolchains für DSPs gemacht wurden.

Für die TI C6000 soll es ja inzwischen eine gcc-Implementierung geben. 
Wie schneidet die im Vergleich zum kostenlosen TI Compiler für die 
XDS100 Emulator ab? Gehe ich richtig davon aus, dass der Rest der 
Toolchain (Programmer, Debugger, ...) weiterhin nur in einer 
proprietären Version erhältlich ist?
Kennt jemand weiterführendes Material zum gcc-c6x Compiler? Aus dem 
linux-c6x Wiki, welches ich gefunden habe, werde ich nicht ganz schlau. 
Ich habe den Eindruck, dass dort in jedem Fall ein vollwertiges Linux 
auf den DSP gespielt wird. Ich dachte eher an eine 
Microkontroler-ähnliche Programmierung, also insbesondere ohne weitere 
Abstraktionsschicht.

Die andere hier oft genannte Alternative scheint der Blackfin zu sein. 
Wie sieht deren Leistung mit gcc Compiler aus? Ist die Toolchain 
einigermaßen benutzerfreundlich?

Was mich unter anderem bislang eher zum TI Produkt gelenkt hat, war 
deren Dokumentation/Marketingbabel, welches die Meinung vertrat, dass 
deren Compiler (in erster Linie natürlich der proprietäre) mit dem 
Pipeline Konzept der C6000er in 99% der Fälle besser zurechtkommt als 
ein Assemblerprogrammierer. Ich bin auch eher an der Leistung der 
Kombination C-Compiler/DSP interessiert, da ich mich eher weniger mit 
Handoptimierung herumschlagen möchte.

Für das SDR Projekt suche ich einen DSP, der Daten in der Größenordnung 
von 10Ms/s verarbeiten kann (FFT, Filterung, Demodulation, ...)
Weiß jemand, wie man die dafür benötigte Rechenkraft abschätzen kann?
Dies hängt sicher auch erheblich von der jeweiligen Implementation / zur 
Verfügung stehenden Bibliothek ab...

Über hilfreiche Antworten würde ich mich sehr freuen!
Gast #3274241
Lesenswert?
• ▲
▼
Hi,

>
> Die andere hier oft genannte Alternative scheint der Blackfin zu sein.
> Wie sieht deren Leistung mit gcc Compiler aus? Ist die Toolchain
> einigermaßen benutzerfreundlich?
>

Ich finde schon. Was nur nervt: Analog Devices behandelt die gcc-Sache 
erher stiefmütterlich und versucht tendentiell, ihre eher in Richtung 
'unsäglich' (meine persönl. Meinung) gehenden VDSP-Tools und teure 
Emulatoren zu verkaufen.
Gibt aber ein paar third parties, die da guten Support liefern.
Ich habe mit der GCC-Toolchain und einer Eclipse-Distribution gute 
Erfahrungen gemacht, bin aber wieder zurück zu reinen Makefiles und 
Entwicklung unter Linux.


> Was mich unter anderem bislang eher zum TI Produkt gelenkt hat, war
> deren Dokumentation/Marketingbabel, welches die Meinung vertrat, dass
> deren Compiler (in erster Linie natürlich der proprietäre) mit dem
> Pipeline Konzept der C6000er in 99% der Fälle besser zurechtkommt als
> ein Assemblerprogrammierer. Ich bin auch eher an der Leistung der
> Kombination C-Compiler/DSP interessiert, da ich mich eher weniger mit
> Handoptimierung herumschlagen möchte.
>

Ja, TI ist sicher gut darin, die Leistung ihrer Compiler zu verkaufen. 
Wenn es denn in der Praxis bloss so liefe..
Manche ganz spezielle Dinge klappen gut (eine komplexe Multiplikation 
wird erkannt), aber das mit den 99% würde ich als Marketingkäse 
bezeichnen.
Um eine clever designte DSP-Library kommt man eigentlich nie ganz rum. 
Das meiste liegt aber fertig vor..
Für SDR kommt man sicher mit den gängigen libdsp konsorten gut voran.
Ansonsten kriegt man auch in 1-3 Tagen ein paar spezifische Kernroutinen 
in Blackfin-Assembler (der recht gut lesbar ist) sehr effektiv zum 
Laufen.
Generell muss man halt etwas die Pipeline-Basics und Parallel-Ausführung 
studieren. Dito für den TI-DSP. Was mich an den etwas besseren TI-Chips 
immer gestört hat, ist die inhomogene Architektur (ARM und DSP). Das 
macht das Debugging eine echte Tortur.

> Für das SDR Projekt suche ich einen DSP, der Daten in der Größenordnung
> von 10Ms/s verarbeiten kann (FFT, Filterung, Demodulation, ...)
> Weiß jemand, wie man die dafür benötigte Rechenkraft abschätzen kann?
> Dies hängt sicher auch erheblich von der jeweiligen Implementation / zur
> Verfügung stehenden Bibliothek ab...
>

Für SDR gibt es zum Blackfin BF533 (etwsa in die Jahre gekommen) einige 
Referenzapplikationen. Am besten mal im ADI-Forum fragen..

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.