DSP-Empfehlung für Anfänger [geschlossen]


17

Ich überlege mir ein Projekt mit einem fairen Anteil an digitaler Signalverarbeitung. Soweit ich weiß, sind die digitalen Signalprozessoren der beste IC-Typ, der dafür geeignet ist. Ich habe noch nie mit ihnen gearbeitet - können Sie mir ein Modell empfehlen, das für Anfänger einfach genug ist? Das Projekt beinhaltet das Filtern von digitalem HiFi-Audio (44100 Hz, 16-Bit-Stereo) auf verschiedene Arten.

Benötige ich auch eine zusätzliche Benutzerschnittstelle, um beispielsweise eine Benutzerschnittstelle mit einem LCD-Panel und einigen Tasten zu steuern, oder kann der DSP dies bei seiner Signalverarbeitungsaufgabe erledigen?

Antworten:


11

Ein paar gute DSPs für Anfänger sind der C5505 DSP von TI und der C6713 ebenfalls von TI. Ich mag die erste, weil sie nur 55 USD kostet, und die zweite, weil ganze Bücher auf dem Chip geschrieben sind (Digitale Signalverarbeitung und Anwendungen mit dem C6713 und C6416 DSK). Die meisten DSP-Evaluierungskarten unterstützen LCDs.


Ti hat sich auch wieder ein paar nette Entwickler ausgedacht processors.wiki.ti.com/index.php?title=Ezdsp
XTL

14

Die Mikrocontroller der Serie dsPIC30F von Microchip sind hervorragende DSPs für den Einstieg. Sie sind in C oder Assembly auf die gleiche Weise programmiert wie andere PICs, enthalten jedoch DSP-Bibliotheken, die beim Filtern usw. helfen. Sie verfügen über alle erforderlichen Peripheriegeräte für die meisten Projekte (ADC, DAC, serielle Kommunikation, Timer, die Liste geht weiter und weiter). Sie sind ziemlich billig (nicht mehr als 10 US-Dollar), können in Durchsteckverpackungen getestet und mit Standard-PIC-Programmierern und -Debuggern programmiert werden.


8

Wenn Sie sich für einen der dsPIC-Teile entscheiden, können Sie sowohl Schnittstelle als auch Verarbeitung in einem haben (die MCUs eignen sich auch hervorragend für allgemeine Zwecke). Sie sind in SOIC- und DIP-Paketen erhältlich, die das Prototyping vereinfachen, und einige der dsPIC 33-Modelle sind fast alle Pins wiederbelegbar, wodurch das Routing eines Boards zum Kinderspiel wird.


Hardware ist großartig, aber die Entwickler-Tools von Microchip sind schrecklich.
Jason S

4
Das haben wir aus dem letzten Kommentar herausgefunden, den Sie hinterlassen haben. :)
Adam Lawrence

8

Lesen Sie die DSP-Seite für analoge Geräte .

Und die kostenlosen Entwicklungswerkzeuge .

Keine Programmierung erforderlich, einfach GUI-Objekte ziehen und ablegen.


Die Entwicklerwerkzeuge sind kostenlos wie in Bier, nicht wie in Freiheit. Auch Drag-and-Drop-Programmierung ist nicht automatisch eine gute Sache - einige von uns bevorzugen die altmodische Methode und haben einen guten Grund dafür! Das heißt, AD hat gute DSPs. Ich habe gesehen, wie ihre SigmaDSPs mit gutem Erfolg zur Rauschentfernung und Digitalisierung in Kfz-Mikrofonen verwendet wurden, aber sie haben mehrere Leitungen für verschiedene Märkte.
Kevin Vermeer

Beachten Sie, dass dies beispielbasierte Prozessoren sind, die keine blockbasierten Operationen wie FFT ausführen können. dsprelated.com/showmessage/131569/1.php
Endolith

6

Sie brauchen wirklich, wirklich, keinen DSP, um selbst erweiterte Audiofilterung bei einem 44,1-kHz-16-Bit-Stereosignal durchzuführen.

Ein ARM-Kern ist für das Filtern und Ausführen der LCD / Tasten ausreichend.

Ich würde mir nur ein Beagleboard schnappen , RT Linux darauf werfen und es haben. Wenn Sie wirklich verzweifelt nach Leistung verlangen, ist auch ein TI 64x + DSP an Bord des SoC.

Es gibt nur sehr wenige Anwendungen, für die ein DSP benötigt wird, insbesondere in der Audiowelt. Wenn Sie es mit 32 Kanälen mit 192-kHz-24-Bit-Audio zu tun haben, die für die Latenz kritisch sind, entscheiden Sie sich für den DSP. Aber was Sie damit arbeiten, gehört zu den Fähigkeiten moderner Mikrocontroller.


5

Ich suche das Gleiche. Dieser Thread hat einige Vorschläge.

Es gibt auch das TAS3202 System-on-a-Chip von TI, das anscheinend alles bietet, was Sie zum Filtern von Stereo-Audio benötigen. Konverter und alles sind eingebaut. Der Chip selbst kostet ungefähr 5 US-Dollar, aber das Evaluierungsboard kostet ungefähr 500 US-Dollar . Meine Güte.

(Sie können ein einzelnes TAS3204 für etwa 10 US-Dollar erwerben. TAS3202 kann ich nicht einmal in geringen Mengen finden.)

Es gibt auch das AK7742 , das eine sehr praktische Benutzeroberfläche hat , aber Sie müssen das Evaluierungsboard kaufen.

Ich würde gerne ein Open-Source-DSP-Board finden, das sich ausschließlich dem Hobby widmet, wie zum Beispiel den BASIC Stamp, Arduino, Chameleon usw.

Um die Grundlagen von DSP zu erlernen, sollten Sie zunächst mit Ihrem Computer beginnen und Tools wie MATLAB oder die kostenlosen Klone Scilab , Octave , Freemat usw. verwenden, um Simulationen durchzuführen . Ich habe in letzter Zeit viel mit SciPy gespielt . Auf diese Weise können Sie das theoretische Material erlernen, ohne sich von den Implementierungsdetails abkoppeln zu lassen.


3
+1 MATLAB-Vorschlag. Es ist viel besser, es in MATLAB zum Laufen zu bringen, bevor es auf einen tatsächlichen DSP portiert wird.
Ajs410

1

Um den zweiten Teil Ihrer Frage zu beantworten, benötigen Sie wahrscheinlich einen Universal-Mikrocontroller für die Bedienung Ihrer Benutzeroberfläche. DSPs sind dedizierte Prozessoren: Sie machen eine Sache sehr gut (Signalverarbeitung), machen aber nichts anderes.


1
??? DSPs und Mikrocontroller unterscheiden sich heutzutage kaum noch. Sie sind zwar für die Hochleistungs-DSP-Verarbeitung optimiert, aber es gibt keinen Grund, warum Sie keine allgemeinen Aufgaben ausführen können, es sei denn, Sie müssen sich mit viel Speicher befassen, und selbst dann müssen Sie nur einen DSP mit einem externen finden Daten- / Adressbus.
Jason S

Das einzige, was ein DSP heutzutage nicht hat, sind zirkuläre Adressierungsmodi. Ansonsten sind sie im Grunde dasselbe. Möglicherweise hat eine typische uC mehr E / A- und DMA-Kanäle, aber die Blackfin-Familie von Analog Devices macht dies ebenfalls zu einer ziemlich veralteten Annahme.
mtrw

1
Das Hinzufügen zufälliger Funktionen zur Last des DSP kann mit gewissen Risiken verbunden sein, sie sollten jedoch durchaus für allgemeine Zwecke geeignet sein, z. B. Anzeigen / Tasten / Kommunikationsleitungen.
XTL

1

Sie können auch ein BeagleBoard verwenden, das für nur 150 US-Dollar von sparkfun erhältlich ist


1
Das Problem mit dem Beagleboard ist, dass Sie keinen Zugriff auf digitale Audio-E / A erhalten. Die D / A-Wandler sind verkabelt. Russ White von Twisted Pear Audio hat es gehackt, um mit den Buffalo-D / A zu arbeiten, aber mir wurde gesagt, dass es nicht so einfach ist.
Terrasse

0

Zwei alternative Optionen könnten ebenfalls einen Blick wert sein:

Mikrocontroller mit gemischten Signalfähigkeiten wie MSP430. 44k * 2 * 2 ist eine Menge Samples, so dass Sie möglicherweise nicht viel Zeit haben, um sie mit den Geschwindigkeiten zu verarbeiten, in denen diese ausgeführt werden.

Standalone PC, PDA oder so. Sie erhalten wahrscheinlich mehr oder weniger HI-FI (und aufrüstbare) AD / DA- und Audio-Komponenten und verfügen über eine enorme CPU-Leistung und Anzeigefähigkeit. Gute Entwickler-Software ist oft kostenlos und Hardware kann billig oder sogar kostenlos sein. Die Latenzen könnten jedoch hoch sein, und Sie müssten mit einer großen, stromhungrigen, ineffektiven Maschine arbeiten.


Das Problem dabei ist, dass der Overhead des laufenden Betriebssystems nahezu jede Art von Anwendung beendet. Der Stromverbrauch steht in keinem Verhältnis zu dem, was Sie mit einer Art DSP finden würden. Kurz gesagt, es wird funktionieren, aber die eigenständige PC-Option ist sehr ineffizient.
Wouter Simons
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.