welchen DSP für einen VA Musik-Synthesizer ?

#2202652
Lesenswert?

Hallo Zusammen

Ich möchte gerne einen digitalen Synthesizer (Virtuel Analog) 
entwickeln.
Meine Motivation: learning by doing DSP oder FPGA Technologie und 
natürlich
mein allgemeines Interesse an HW-Synthesizern !

Nun nach vielen Fragen stellen und googeln scheint für diesen zweck
eine DSP-Plattform die geeignetere als eine FPGA-Plattform zu sein.

Welche DSP-Plattform könnt Ihr mir empfehlen ?

1. Freescale DSP56k (alte Familie dafür gratis Symphonie SDT).
scheint mehrheitlich in Assembler programmiert zu werden 
(FreescaleSuit56) ?

2. Analog Device Sharc (Visual DSP++) 90T Eval ansonsten 4300$
4300$ für ein Hobbyprojekt tu ich mir nicht an !!!!
Gibt es da Gratis-Tools ?

3. TI TMS320C6713 Marktführer (CCStudio 30T Eval ansonsten gleich 
schweinisch Teuer wie bei AD !! Oder gibt es da auch free Tools ?

Von der Toolchain-Situation her scheint es keine alternativen zu den in 
die
Jahre gekommenen freescale Audio-DSP's 56k zu geben.?
Auch der soeben gestartete DSP-Kurs im Elrad setzt auf den DSP56 mit 
einer
Assembler Toolchain !!! Erstaunt mich schon, den eigentlich wollte ich 
die Sache in C Programmieren.

Hat mir da jemand einen Tip ? oder sogar selber mal so ein Synthesizer 
mit einem DSP realisiert ?

Gruss
Roger
Gast #2202780
Lesenswert?

Motorola 56000:
Gut in Assembler zu programmieren. Für C wegen der 3-fach 
Harvard-Architektur (P,X,Y) eher schwierig.
Von der Leistungsfähigkeit für einen kompletten Synthie eher zu schwach.
Da wird man dann wohl mehrere nehmen müssen.

TI TMS320C6713:
Deutlich leistungsfähiger. Wie gut sich DSP-Algorithmen von C effektiv 
auf die Architektur abbilden lassen ist mir unbekannt.
Ansonsten ist er bei TI abgekündigt.
Damit wäre er bei mir in der Auswahl raus.
Gast #2203417
Lesenswert?

Moin,

für den SHARC gibt's einen GCC, sogar selbst von Analog Devices, man 
findet ihn irgendwo versteckt auf deren FTP-Server.
Da aber ADI zu den üblichen Verdächtigen gehört, die gerne aus 
OpenSource Nutzen ziehen, aber beim Einhalten der Gnu-Lizenz etwas 
systematische Nachlässigkeit zeigen, ist letzterer nicht wirklich gut zu 
gebrauchen, das Programm auf den SHARC zu kriegen und zu debuggen ist 
nochmal ein anderes Thema.
Die GNU-Toolchain für den Blackfin wird deutlich besser unterstützt, 
aber der Blackfin ist vom Assembler-Befehlssatz für 24 Bit-Audio weniger 
effizient, zumindest gehen da die tollen parallel-Multiply-Accumulate 
nicht (nur 1.15 fixkomma). Aber reicht vollauf, wenn man kein 
High-End-Gerät machen muss/will.
Sonst würde ich solche Operationen tendentiell auf FPGAs auslagern.
Bin mit dem Gespann Blackfin & Xilinx-Spartan 3(E)-FPGA bisher prima 
gefahren.
Bist du dir denn im Klaren, was das System an Algorithmen bewältigen 
soll? Falls du mit Linux arbeitest, kannst du schon relativ viel auf dem 
PC Vorarbeit leisten und dann u.U. die Programme nur noch portieren. Nur 
dran denken: viele DSPs haben keine FPU, also musst du 
Fixpoint-Arithmetik emulieren.

Gruss,

- Strubi
Gast #2204140
Lesenswert?

Gast #2204411
Lesenswert?

Strubi schrieb:
> Bist du dir denn im Klaren, was das System an Algorithmen bewältigen
>
> soll? Falls du mit Linux arbeitest, kannst du schon relativ viel auf dem
>
> PC Vorarbeit leisten und dann u.U. die Programme nur noch portieren. Nur
>
> dran denken: viele DSPs haben keine FPU, also musst du
>
> Fixpoint-Arithmetik emulieren.

Vielen Dank mal für Eure Inputs !

Also das System sollte folgendes verarbeiten können:
1. Min. 5 Stimmen a 2 Oscillatoren (Sägezahn und Rechteck) d.h 10 
Oscillatoren.
2. 1 Filter mit Env.Gen (Moog emulation) pro Stimme also 5.
3. VCA (DCA) mit Env.Gen (ADSR Hüllkurve)
4. 2 LFO (1 Für Filter und 1 Für VCA)

Halt ein klassischer Subtraktiver Synth (5-fach Polynom)

Gruss
Yello
Gast #2205445
Lesenswert?

Andreas Schwarz schrieb:
> Muss es ein DSP sein? Wir wär's mit einem Cortex-M3, der ist von der
> Entwicklungsumgebung her leichter zu handhaben. Zur Rechenleistung: bei
> einer Abtastrate von 44.1 kHz und 80 MHz Takt kannst du > 300
> Multiply-Accumulates pro Sampletakt ausführen. Das sollte für 5 Stimmen
> reichen.

Tja das hab ich mich auch schon gefragt ? Ich hätte sogar ein Eval-Board
STM32F103ZE.
Sobald Audio ins Spiel kommt schreien halt alle nach DSP !
Aber je länger ich mich umschaue desto eher bekomme ich das Gefühl dass 
die
Tage des DSP's gezählt sind ? Da gibt es ja mittlerweile uP mit DSP oder
FPU units integriert und bei wirklich schnellen Anwendungen kommt ein 
FPGA zum Einsatz.
Aber hat der DSP nicht doch den Vorteil dass die ganze Datenverarbeitung
bei 24Bit (+Overhead) Auflösung bleibt und ich somit keine 
Datenwandlungen
hin und her machen muss ?

Gruss
Yello
Gast #2205767
Lesenswert?

Hallo,

ich bin gerade sowas am programmieren! Zur zeit habe ich: DCO (pll mit 
wavetable), DCA, DCF (einfachen Lowpass) und einen Mixer der alles mixen 
kann. Zusätzlich sind die Eingänge und Ausgänge alle normalisiert und 
nicht direkt miteinander verbunden, sondern können über einen (ich 
nennne in Patcher) verbunden werden. Also quasi digital modularer 
synthesizer ;)
Wenn du magst post ich dir mal ein bissel code zum anfixen...

P.S. den Lfo kannste dir sparen, ist ja nichts anderes wie langsamer 
DCO, evtl. hier halt sinus als Wellenform mit anbieten...

>Muss es ein DSP sein? Wir wär's mit einem Cortex-M3, der ist von der
>Entwicklungsumgebung her leichter zu handhaben. Zur Rechenleistung: bei
>einer Abtastrate von 44.1 kHz und 80 MHz Takt kannst du > 300
>Multiply-Accumulates pro Sampletakt ausführen. Das sollte für 5 Stimmen
>reichen.

Genau, ich bin dafür auch vom AVR Lager kurzweilig ins ARM lager 
gewechselt, genauer gesagt benutze ich ein LPCExpresso. Denn das kann 
ich als USB-Audio Interface bentzen und bekomme so den Sound kristall 
klar aus dem Synthesizer raus -  ansonsten hast du da auch noch eine 
Aufgabe vor dir?! :)

Allerdings sollte man die Leistung auch nicht so überbewerten denn:
Bei 44.100 Khz Samplingfrequenz und angenommen 8-fachen Oversampling für 
die moog-filter (minimum) wirds echt eng...


gruß jonas
#2205873
Lesenswert?

jonas biensack schrieb:
> Wenn du magst post ich dir mal ein bissel code zum anfixen...

Das wäre natürlich super !!!!!!!!
Ich bin nicht so der Programmier-Krack komme eher von der
HW-Seite und tue mich desshalb schwer.

Von daher wäre es eine echte Hilfe !(Reverse Engineering)

Meine Motivation zu diesem Projekt ist auch so eine Art
learning by doing.

Ich kann dich nicht finden da Du nur als Gast eingelogt bist.
Kannst Du mir eine PN senden ?

Gruss
Yello
Gast #3128590
Lesenswert?

Mr. Z schrieb:
> AV Musiksynthesizer.
VA-Synthesizer = Virtuell Analoger Synthesizer

roger schrieb:
> einem Cortex M3 oder M4
Darüber habe ich auch bereits nachgedacht, zumal ich mit Cortex 
entwickle. Wie weit ist Dein Projekt gediehen?

Klaus L. schrieb:
> Hier machen das welche mit einem PIC
Sehr schönes Projekt, vom Optischen her, allerdings ist das meiner 
Meinung nach wegen des limitierten Chips zum Scheitern verurteilt - auch 
wenn sich auf diesem Geldgeber-Pool offenbar $30,000 eingefunden zu 
haben scheinen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren