Forum: FPGA, VHDL & Co. Leute für Audio-Projekt gesucht


von TheMason (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich mache mal einen neuen Thread auf, da ich das ganze mal anders 
aufziehen möchte.
Ich möchte erstmal die Software (FPGA) stehen haben und dann im Anschluß 
ein Erweiterungs-Board (mit AD/DA Wandlern und Schnittstellen) machen.
Auch möchte ich die Anforderungen bzw. Möglichkeiten etwas einschränken.
Vielleicht finden sich so mehr Leute.

Meine Idee :

Einen Audio-Prozessor bauen, der erstmal nur Mischen und Filtern kann. 
Dafür aber in seiner Funktion frei konfigurierbar ist.
Das soll heißen : man kann beliebig Filter/Mischer verschalten.

Ein Block-Schaltbild des Prozessors habe ich mal angehängt.

Es soll erstmal der SDSP-Core (Small DSP, beschrieben in 
sdsp_core_struct.bmp) laufen.
Zentrales Element des DSP-Kernss ist die MAC-Einheit.
An diese MAC-Einheit ist ein Audio-Speicher (BlockRAM) und ein 
Koeffizienten-Speicher (auch BlockRAM) angeschlossen.
Die beiden BlockRAMs werden addressmässig von einem Adress-Generator 
versorgt (bzw. gesteuert).
Alle Signale (Enable, Multiplexer und sonstige Signale) werden über ein 
weiteres BlockRAM (Microcode) generiert.

Dieser Kern wird in einen "Rahmen" (dap_struktur.bmp) eingehängt.
Dieser Rahmen sorgt lediglich dafür das der SDSP-Kern, welcher nur einen 
Kanal besitzt, mit einem Stereo-Signal (also 2 Eingänge und 2 Ausgänge) 
betrieben werden kann.
Das Programm welches der DAP ausführt, steht in dem PMEM BlockRAM.
Das Programm bestimmt welcher Opcode im DAP mit welchem 
Eingangs/Ausgangs Kanal, sowie der Adresse für den Audio- und 
Koeffizienten Speicher ausgeführt wird.
Der Rahmen soll später noch weitere SDSP-Kerne oder auch andere Kerne 
enthalten mit denen Audio-Signale verarbeitet/erzeugt werden können.

Dies ist grob umrissen meine Idee.
Ich habe selbst auch schon eine erste Version des Audio-Prozessors 
fertiggestellt. Allerdings habe ich da noch Probleme für die ich keinen 
Lösungsansatz habe. (Vielleicht ergibt sich da ja was, wenn man für ein 
solches Projekt genügend Leute zusammen hat).

Es würde mich freuen Leute für ein solches Projekt zu finden, weil es 
alleine wenig Spaß macht, und man durch andere Leute auch auf andere 
Ideen kommt.

Gruß
Rene

von T.M. (Gast)


Lesenswert?

In paar Wochen ist meine DA fertig, dann könnt ich mitmachen, davor wird 
es allerdings nichts. Sieht aber interessant aus. Auf was für nem Target 
sollte das denn eigentlich laufen? (S3 / Virtex..)

T.M.

von TheMason (Gast)


Lesenswert?

hallo t.m.

ich hatte ursprünglich die wahnwitzige idee die plattform egal sein zu 
lassen, lasse das egal sein aber nun sein. ich denke das xilinx am 
besten ist (zumal ich auch mit einem spartan 3 board arbeite).

mit dem design das ich bisher fertig habe komme ich bei meinem 
spartan3-200 auf eine ausnutzung von knapp 38%. es sind also noch 
reserven offen.
ich muß allerdings direkt betonen das ich nicht so fit in vhdl bin. ich 
habe erst vor 1 1/2 jahren angefangen mich intensiver mit vhdl zu 
beschäftigen (hatte vor 8 jahren schonmal was mit vhdl gemacht, aber das 
war nur für eine studien-arbeit). also themen wie timing-constraints 
sind mir noch etwas fremd. aber ich denke die anforderungen sind nicht 
so hoch gesteckt als das man für die ersten schritte unbedingt solche 
constraints aufsetzen muß (ich will ja keine high-speed-GHZ übertragung 
oder so machen).
es soll ja ein offenes projekt sein, und kein fertiges optimiertes 
produkt dabei rauskommen.
ansonsten freut es mich das du mit machen möchtest.
ich werde am wochenende mal etwas code hier rein stellen.

gruß
rene

von T.M. (Gast)


Lesenswert?

Spartan 3 ist gut, da hab ich was zH davon ;-)
Die Constraints haben ja nichts mit VHDL an sich zu tun...

Man könnte ja mal nen Wiki dafür aufmachen, oder? Entweder direkt hier, 
oder woanders. Ich hab schon eins unter http://editthis.info/freefpga
Sowas is fix eingerichtet...

Mit Audeioverarbeitung an sich hatte ich noch nichts weiter zu tun, aber 
digitale Filter und dergleichen sind mit nicht fremd ;-)

T.M.

von TheMason (Gast)


Lesenswert?

ich habe vor nem jahr hier in der artikel-sammlung ein projekt 
aufgemacht.
wir könnten/sollten dies nutzen, und wenn sich entsprechend noch leute 
finden könnte man auch gut ein wiki einrichten. aber ich möchte erstmal 
warten. vielleicht finden sich ja doch nicht so viele leute und es war 
dann nachher umsonst. muß ja auch nicht sein.
zu dem projekt in der artikel-sammlung sei gesagt das ich es 
überarbeiten werde und entsprechend dem thread bzw. dem was ich da 
angedacht habe ändern werde. ich denke mal am wochenende werde ich wohl 
etwas zeit dafür finden, und auch ein paar bildchen und source-codes 
hochladen.

schön das du ahnung von der materie (filter/fpga) mitbringst. das macht 
die ganze sache in sofern einfach als das man sich gut ergänzen kann.

gruß
rene

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.