Einen einfachen DSP zum Starten

Hallo,

ich bin jetzt an eine Anwendung geraten, bei der ich 2 Kanal Stereo mit

16Bit, 44Khz samplen muss (oder höher), das gesampelte digital aufbereiten will (z.B. Dynamic Compressor, Equalizer, ...) und das dann wieder in Analog umwandeln will.

Ich hab viel Erfahrung mit normale Microcontroller, möchte aber diese Gelegenheit nutzen, um mich in die Welt der DSPs einzuarbeiten.

Um Antworten wie "Mach das doch analog" zu vermeiden, sag ich gleich ich WILL es digital machen ;-)

Meine Frage ist, ob es noch relativ hantliche DSPs gibt, die über A/D und D/A (min 16 Bit) verfügen, für die es vielleicht auch freie C Compiler gibt.

Bedanke mich im Voraus :-)

Thomas Pototschnig

Reply to
Thomas Pototschnig
Loading thread data ...

In MaWins FAQ bin ich auf folgende Seite gestoßen:

formatting link

ist ein sehr interessantes Buch rund um die DSPs, das man auch frei downloaden kann - sehr interessant.

Mittlerweile hab ich auch rausgefunden, dass zum Beispiel Texas Instruments einen 24x DSP hat, den es in PLCC68 Bauform gibt - allerdings kann das Ding nur 20MHz.

Mir fehlt leider die Erfahrung mit DSPs um einschätzen zu können, ob mir die Leistung ausreicht - aber ich kann mir vorstellen, dass ich für meine Zwecke keinen Leistungsstärkeren DSP brauche ...

Freie C-Compiler hab ich allerdings noch nicht gefunden ...

"Thomas Pototschnig" schrieb im Newsbeitrag news: snipped-for-privacy@uni-berlin.de...

Analog

gibt.

Reply to
Thomas Pototschnig

Von AD gab es vor einiger Zeit mal ziemlich günstige Evaluation-Boards mit Stereo I/O on board, über die Serielle Programmierbar und natürlich mit Flash. Nur ein kleines Netzteil brauchte man noch dazu. Ich weiß nicht mehr was das genau für Chips waren, aber sie waren genau für diese Zwecke geeignet. Ich hätte mir seinerzeit beinahe eine gekauft, bin aber dann nicht dazu gekommen. Ist vielleicht ein Ansatzpunkt zum Suchen.

Marcel

Reply to
Marcel Müller

Ich bin mir jetzt sowieso nicht sicher, inwiefern DSP mit C Spass macht. Das wenige HW DSP, das ich bislang gemacht habe war in ASM und da sind teilweise so spezielle Sachen dabei, dass ich nicht wüsste wie man die in C abbilden soll. Höchstens per inline funktion, die dann diese ASM Konstrukte beinhaltet.

Aber da ist man dann eher auf ensprechende Bibliotheken angewiesen und inwiefern die frei erhältlich sind ist dann auch noch abzuklären.

Wo ich erfahrung habe, ist die Programmierung von SW DSP, immerhin hat das Soundsystem meiner 3D Engine (die hoffentlich bald fertig wird) ein solches eingebaut um Umgebungseffekte unahbängig von HW und Treiberunterstützung zu ermöglichen. Sollte gleichwertige ( => EAX3 oder besser ) Unterstützung seitens der HW vorhanden sein, wird natürlich der Performanz zu liebe auf diese Umgeschaltet.

Wolfgang

Reply to
Wolfgang Draxinger

Also - DSP macht "Spaß" mit C. Spezielle Sachen (z.B. FFT o.ä.) nimmt man doch immer aus Libraries, die von TI (oder welchem Fabrikat auch immer) meistens zum Download angeboten werden. Diese Libraries sind ja meist auch in Assembler, und für spezielleres kann man im C-Code ja auch Assembler-Code einbinden. Ich denke, wirklich speziellere Sachen sind ohne C "spaßlos". Natürlich geht Assembler schneller usw... - die allte Diskussion eben. Aber Optimieren kann man immer noch, sobald man muß bzw. weiß, wie der Compiler was umsetzt, das kann man ja auch nachvollziehen.

Ich habe eine Zeitlang mit dem F2812 von TI gearbeitet, für den gibt es ein Starterboard (eZdsp) um rund 200?. Der Prozessor läuft auf 30 Mhz und hat eine interne Taktvervielfachung auf

150MHz. Ist also gut zu gebrauchen. Ich hab aber leider keine Erfahrung mit selbstgebauten DSP-Boards. Zu solchen Fragen wissen wahrscheinlich die bei comp.dsp mehr (allerdings kann man da ganz schön lange warten, bis jemand antwortet, da können wir alle ganz glücklich sein mit der de.sci.electronics-newsgroup! :) danke an alle hauptposter ;-))

Vielleicht hilft auch die comp.dsp FAQ

formatting link
Unter Punkt 3 schreiben sie auch was von "free C compiler".

Hoffe, das hilft!

LG Simone

>
Reply to
Simone Winkler

"Thomas Pototschnig" schrieb im Newsbeitrag news: snipped-for-privacy@uni-berlin.de...

Instruments

Ding

Hallo Thomas, mit 16bit DSPs auf 16bit Genauigkeit zu kommen ist bei Filtern eine Qual. Da mußt du nämlich gleich mit doppelter Genauigkeit(32bit statt 16bit) rechnen. Da es dafür dann keine direkten Befehle gibt, muß man das per Software erschlagen. Das bedeutet, daß man die versprochene Leistung(bei

16bit) für 32bit gleich mal durch 10 teilen kann. Also z.B. statt 40MIPS dann 4 MIPS. Das wird also nix mit 24xx für 16bit Audio.

Früher gabe es da noch Motorola mit 24bit DSPs, aber irgendwie wurden die wohl von den Fließkomma-DSPs aus dem Audio-Segment verdrängt. Am einfachsten wäre also sicher ein DSP mit Fließkomma(floating point) zu programmieren. Da geht dann 16bit rein und du kannst sicher sein, daß auch die 16bit Auflösung wieder herauskommen.

ADSP21065?

formatting link

Von TI gäbe es dann entsprechend C67xx

Vielleicht weiß ja jemand wo man da bezahlbare Eval-Boards mit Software bekommt.

Gruß Helmut

Reply to
Helmut Sennewald

Das dürfte das EZ-Kit Lite

formatting link
gewesen sein; wird leider nicht mehr hergestellt, wenn man's trotzdem noch irgendwo findet ist es aber recht brauchbar. Es gibt sogar einen (ca. 10 Jahre alten) GCC dafür.

Und dann gab es vor ein paar Monaten auch noch ein Blackfin-Kit für 99$, da war ein 600 MHz-Fließkomma-DSP drauf und ein zeitbeschränkter C-Compiler dabei.

Reply to
Andreas Schwarz

Thomas Pototschnig schrieb:

Ich weiß, was aktuell an günstigen DSP Einsteigerkits vertrieben wird, aber sowas ist in der Regel die beste Variante, damit anzufangen. Das gibts/gabs von Motorola, TI, AnalogDevices. Einige Kits als klassische Audio-Module mit A/D-DSP-D/A.

Die Motorola 56K waren mal sehr verbreitet im Audiobereich, es gab auch Unmengen von üblichen Audiostandardsourcen dafür. Leider hat Motorola das nicht so richtig weiterbetrieben, und AD und TI führen da deutlich,

- Carsten

--
Audio Visual Systems                          fon: +49 (0)2234 601886
Carsten Kurz                                  fax: +49 (0)2234 601887
Von-Werth-Straße 111                   email: audiovisual@t-online.de
50259 Pulheim / Germany               WGS84:N50°57'50.2" E06°47'28.5"
Reply to
Carsten Kurz

Thomas Pototschnig schrieb:

Die Taktfrequenz ist da erstmal relativ irrelevant. In der Regel haben die Hersteller bestimmte Performancebeispiele in den Produktdatenblättern angegeben.

Wenn Du partout C machen willst, wirst Du um einen leistungsstarken DSP kaum herumkommen. Die kleineren Dinger in Assembler programmiert schaffen die üblichen Audioalgorithmen mit links.

- Carsten

--
Audio Visual Systems                          fon: +49 (0)2234 601886
Carsten Kurz                                  fax: +49 (0)2234 601887
Von-Werth-Straße 111                   email: audiovisual@t-online.de
50259 Pulheim / Germany               WGS84:N50°57'50.2" E06°47'28.5"
Reply to
Carsten Kurz

|> Wenn Du partout C machen willst, wirst Du um einen leistungsstarken DSP |> kaum herumkommen. |> Die kleineren Dinger in Assembler programmiert schaffen die üblichen |> Audioalgorithmen mit links.

Wenn man die Algorithmen aber selber schreibt und nicht auf fertige Makros zurückgreifen kann, kann es je nach Architektur übel werden.

Der 56k war ja ganz nett für alles, was sich in a=a+b*c pressen lässt, aber alles andere (Viterbi etc.) wird grauslich. Der C6x ist zwar an sich von Befehlen und Registern her ein Universalprozessor und damit theoretisch leicht in Assembler zu programmieren, "dank" VLIW und der unzähligen zu beachtenden Pipelineabhängigkeiten möchte man das aber eigentlich auch nur gegen Schmerzensgeld...

--
         Georg Acher, acher@in.tum.de
         http://wwwbode.in.tum.de/~acher
         "Oh no, not again !" The bowl of petunias
Reply to
Georg Acher

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.