Hallo zusammen, in absehbarer Zeit werde ich mit meiner Bachelorarbeit beginnen, in welcher ich Multikanal Audioverarbeitung auf DSP und FPGA vergleichen möchte. Dafür steht mir von der Hochschule schon ein Critical Link MityDSP-L138F Development Board zur Verfügung, auf dem sollen die Algorithmen gerechnet werden. Und genau da soll auch die meiste Energie demnächst fließen. Nun wäre es aber auch schön eine Multikanal-Audioschnittstelle (mind. 32 Kanäle bidirektional, gerne auch bis zu 64) an dem Teil zu haben um - zuerst einmal vom PC aus - Audio rein und raus zu bekommen. Im besten Fall auf einem externen Board, welches mir auf der einen Seite eine Standardschnittstelle bietet und auf der anderen einen Pin Header mit einigen TDM Streams rein und raus. Dabei würde ich entweder gerne auf vorhandene Hardware (seien es nun Microcontroller oder FPGA) oder auf günstig erhältliche Entwicklungsboards zurückgreifen. Falls schon vorhandene Boards genutzt werden könnten, wären evtl. kostenpflichtige IP-Cores eine Überlegung. Vorhanden wären diverse Altera Boards mit Cyclone 4 und 5, sehr gut käme ich an ein Terasic SocKit und ein Arrow BeMicro CV (was mir aber erst mal Null Schnittstellen gibt). Auch an diverse Xilinx-Boards liegen an der ein oder anderen Stelle in der Hochschule rum und könnten eventuell auf Anfrage genutzt werden. Darüber hinaus komme ich an ein Logic PD Zoom™ OMAP-L138 Development Board und an einen haufen von TI Connected Launchpads - beides Boards mit einem Ethernet-Port. Ich komme ursprünglich selbst aus der Audio-Praxis, hab also einen ganz guten Überblick, welche Schnittstellen gerade so in der Pro Audio Welt angesagt sind. Ich würde gerne schildern, welche Gedanken ich mir schon gemacht habe und welche Lösungen ich schon angedacht habe: IP-Basierte Lösungen: Die bieten sich natürlich aufgrund der einfachen Anbindung an einen PC an. Außerdem haben viele Boards schon einen Ethernet Port. Jedoch scheint es herausfordernd, "mal eben" ein TCP/IP Stack und ein Audioprotokoll mit wenig Erfahrung in dem Bereich zu implementieren. Eine im besten Fall auf der verfügbaren Hardware schon einmal erfolgreich implementiere Lösung wäre also wünschenswert. Konkret habe ich folgende Optionen durchdacht: - Dante: Cooles Audionetzwerk, als End-User liebt man es einfach. Funktioniert nur in kombination mit Hardware von Audinate. Preise werden recht vertrauensvoll gehandhabt, ein Angebot für ein Product Development Kit hat auf jeden Fall gezeigt, dass sich das weit außerhalb des Finanzrahmens befindet und auch vielleicht etwas übers Ziel hinaus geschossen ist. - Ravenna/AES67: Im Gegensatz zu Dante halt offene Protokolle. Es scheint fertige IP-Cores für die Implementierung auf dem FPGA zu geben. Ich habe einen Anbieter dazu angefragt und bin gespannt auf die Antwort. Wird aber so oder so eine Ethernetschnittstelle am FPGA Board benötigen, bei SocKit hängt die leider aber am HPC und nicht am FPGA. - AVB: In der Pro Audio Szene irgendwie noch nicht so richtig angekommen, aber aktuell fast mein Favorit. Scheinbar hat XMOS da einiges für entwickelt. Mit deren Prozessoren habe ich zwar Null Erfahrung, aber es scheint ein vollständiges 32 Kanal AVB zu TDM Softwaredesign hier zu geben: http://www.xmos.com/support/appnotes/an00203 Mit diesem Board http://www.xmos.com/support/boards?product=18230 müsste ich mir ja genau meinen "Adapter" von AVB auf TDM an Pin Header bauen können? Ansonsten gibts ja noch OpenAVB, aber ich denke das implementiere ich trotzdem nicht eben schnell in einem ARM und habe da meine Audio Lösung fertig? Zuletzt habe ich auch gesehen, dass Xilinx im TEMAC Logic Core irgendeinen Audio AVB-Endpoint anbietet. Jemand damit Erfahrungen? - AES50: Mir nur aus der Midas/Behringer Welt bekannt. Soundkarten dafür gäbs von Lynx. Auch ein offenes Protokoll (sofern man AES Mitglied ist), scheint auch aufgrund der Point-to-Point struktur viel simpler als alles oben genannte zu sein. Habe aber kaum Infos darüber gefunden. Hat da schon jemand mit gearbeitet? Dann bleiben noch Lösungen wie MADI oder ADAT. Beides wurde schon mehrfach erfolgreich auf FPGAs umgesetzt, aber es erfordert den Bau von - relativ simpler - Hardware. Eigentlich würde ich das gerne vermeiden. Außer jemand hat einen Link zu einem so simpel zu implementierenden VHDL-Code für solch eine Schnittstelle, dass ich mir über diese Seite so wenig Gedanken machen müsste, dass ich mir die Zeit erlauben könnte, eine kleine Platine zu bauen. An ein entsprechendes Audiointerface wäre sicher zu kommen... Wer hat schon Erfahrungen mit diesen Themen? Gibts noch ganz andere Ideen oder Argumente? Ich freue mich auf Input! Grüße Janos
Ich habe ein wenig Erfahrung mit AVB auf XMOS. Die AVB-Implementierung von XMOS erschien mir sehr ausgereift, die Entwicklungsumgebung und Hardware ebenso. Das AVB Endpoint Kit kann aus der Kiste heraus 8x I2S in & out. Das heißt du schließt das per Ethernet an einen Mac an, und kannst sofort 8 Kanäle I2S streamen. Mit ein paar #defines und Neukompilierung auch TDM. Ich vermute mal dass es bei dem von dir verlinkten Kit ähnlich einfach ist. OpenAVB dagegen ist anscheinend noch weit von Plug & Play entfernt, und unterstützt m.W. nur Intel-Hardware. Sonstige IP-Cores und Software-Stacks sind für eine Bachelorarbeit vermutlich zu teuer und zu schwierig anzuwenden.
Okay, schön - dann scheint das ja echt so einfach zu sein, wie die Website vermuten lässt. Aktuell sehe ich das auch immer mehr als favoritisierte Lösung an - zumal ich auch ein MacBook besitze.
OpenAVB ist unfertig, da bekommst du wahrscheinlich nichts zum Spielen. Audinate setzt die Hürden bewusst hoch, weil sie keine Lust haben, jedem Bastler Support bieten zu müssen. AES67-Stacks hab ich mir noch nicht angesehen, da bin ich gespannt was dein Kontakt sagt. Könnte aber aufs gleiche rauslaufen wie bei Audinate. AES50 ist vergleichsweise simpel, wirst du in dem Rahmen aber auch nicht selbst machen wollen. Bevor Herr Ohringer alles zusammengekauft hat gabs IP von SonyOxford dafür, keine Ahnung, wie das heute ist. Beim Xilinx-Stack waren nur die unteren Ebenen implementiert als ich mir das angeschaut habe, 1722/1722.1 fehlten komplett, da kriegst du so schnell kein Audio drüber. MADI ist auf dem FPGA kein größeres Problem, aber trotzdem zu viel Aufwand zum Selbermachen, wenn der Focus der Arbeit auf etwas anderem liegt und du kein erfahrener HDL-Entwickler bist. Wenn du es IP-basiert machen willst, dann ist die XMOS-Implementierung das einzige, was im Rahmen einer Bachelorarbeit eine Chance auf Realisierbarkeit hat, zumal der Focus ja nicht auf dem Interface sondern auf den Algorithmen liegt. Die Implementierung ist offen und funktioniert out-of-the-box, die Evalkits sind bezahlbar. Mit dem Endpoint-Kit kommst du allerdings bei deinen Kanalzahlen nicht weit. Ob das mit dem Multichannel auf Mac-Seite wirklich so funktioniert solltest du vielleicht vorher noch mal verifizieren, da bin ich mir jetzt nicht sicher.
Janos B. schrieb: > Zuletzt habe ich auch gesehen, dass Xilinx im TEMAC Logic Core > irgendeinen Audio AVB-Endpoint anbietet. Jemand damit Erfahrungen? woher kommt diese Info?
Danke für euren Input. Aktueller Stand der Dinge ist der Folgende, ein freundlicher Hersteller aus der Pro Audio Ecke hat sich bereit erklärt eine passendes Entwicklungsboard aus seiner Entwicklungsabteilung auszuleihen. Dieses System wäre komplett vorkonfiguriert so dass es direkt eine Verbindung zwischen PC und TDM herstellen könnte und würde damit dann alles bieten was wir benötigen. Mit der ein oder anderen genannten Option werde ich mich in Zukunft dann auf jeden Fall noch mal beschäftigen, AVB hat irgendwie mein Interesse geweckt, auch weil ich z.B. die AVB basierten Avid Produkte wie das S3L oder auch die neueren Motu Interfaces spannend finde. Aber natürlich wäre auch eine Integration einer AVB Schnittstelle direkt in einem FPGA am spannendsten, wofür man erst mal grundsätzlich noch tiefer ins Thema Ethernet einsteigen müsste - vielleicht ein gutes Feld zum Einarbeiten während des Masters :) Holger B. schrieb: > Ob das mit dem Multichannel auf Mac-Seite wirklich so funktioniert > solltest du vielleicht vorher noch mal verifizieren, da bin ich mir > jetzt nicht sicher. Genau das funktioniert nach Berichten aus dem Web völlig einwandfrei. PC-Freak schrieb: > Janos B. schrieb: > >> Zuletzt habe ich auch gesehen, dass Xilinx im TEMAC Logic Core >> irgendeinen Audio AVB-Endpoint anbietet. Jemand damit Erfahrungen? > > woher kommt diese Info? Also erst einmal stieß ich durch googeln auf diesen Link: http://www.xilinx.com/products/intellectual-property/do-di-eavb-ept.html Da dort gesagt wird, dass es mit dem TEMAC Core zusammengefügt wurde, hab ich sehr flüchtig dieses pdf überflogen http://www.xilinx.com/support/documentation/ip_documentation/tri_mode_ethernet_mac/v9_0/pg051-tri-mode-eth-mac.pdf und bin irgendwie darauf gekommen, dass dort ein Audio Endpoint mit drin ist. Nach erneutem Lesen fällt mir nun aber auch auf, dass das offenbar falsch war. Holger B. schrieb: > Beim Xilinx-Stack waren nur die unteren Ebenen implementiert als ich mir > das angeschaut habe, 1722/1722.1 fehlten komplett, da kriegst du so > schnell kein Audio drüber. Das ist nämlich viel mehr Stand der Dinge ;)
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.