www.mikrocontroller.net

Forum: FPGA, VHDL & Co. AC97-VHDL-Sourcecode


Autor: Echo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

ich beschäftige mich grade mit meinem neuen Board "Atlys" von Digilent. 
Auf diesem ist ein AC97-Audiocontroller (LM4550 in diesem Fall) den ich 
gerne ansteuern würde. Leider gibt es anscheinend zu dem Board keinen 
mitgelieferten Sourcecode des Demoprogramms (in diesem werden über den 
AC97 Töne ausgegeben) das auf dem Board standardmäßig läuft...zumindest 
habe ich im Internet und bei Digilent keinen gefunden.
Das Datenblatt hab ich mir schon angeguckt und weiß auch ungefähr welche 
Signale er haben will, allerdings würde ich mir lieber den Sourcecode 
ansehen um zu gucken ob ich alles verstanden hab.
Kennt daher jemand nen Sourcecode zur Demomäßigen Ansteuerung des LM4550 
in VHDL? Gibt zwar teilweise Core dazu im Internet, aber die sind dann 
wieder in Verilog abgefasst.

MfG Echo

Autor: Echo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

hab mittlerweile mal versucht selber ein entsprechendes Programm zu 
schreiben um die diversen Register im LM4550 anzusprechen. Aber momentan 
komme ich nicht so recht weiter. Momentan wird einfach nur das 
Sync-Signal erzeugt (256Bit Periodendauer, 16Bit lang High) und versucht 
das Signal "Kommando" seriell über sdata_out zu schicken. Das funzt auch 
1 mal, allerdings lädt er "Kommando" nicht beim ersten entstehenden 
"Puls" wieder ins shift_reg und ich weiß nicht wieso...

Kommando stellt btw die ersten 3 Datenblöcke dar, die die Register im 
LM4550 ansprechen (Tag, Registeradresse, Registerwert).

Das Programm befindet sich im Anhang, VHDL, ISE-WebPack, Simulator bei 
mir: iSim.

MfG Echo

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast Du eine Testbench und ein Modell für den encoder?

Autor: IchUndDU (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist das der selber AC97, der auf dem Xilinx XUPV2Pro drauf ist?

Autor: Echo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

aufm XUPV2P-Board ist ein anderer Audio-IC als der LM4550. Momentan bin 
ich schon weiter mit dem Code, in der Simulation läuft alles wunderbar. 
Allerdings werden meine Signale in der Realität zeitlich verzögert, so 
stark das keine Register vernünftig gesetzt werden. Liegt wohl an 
irgendwelchen FFs die noch drin sind (obwohl es wie gesagt in der 
Simulation funzt...). Ich werd noch n bisschen weiter dran arbeiten um 
zu gucken woran das liegen kann.

Autor: Echo (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Bin bisher nicht weitergekommen beim Code...wie gesagt: inner simulation 
alles toll: er holt sich den vom LM4550 erzeugten Bit_Clock, gibt 
kontinuierlich n Sync-Signal aus und soll bei jedem Sync-Signal ein 
serielles Ausgangssignal liefern das die Register des LM4550 anspricht. 
Inner Realität wiederrum werden die Signale zwar erzeugt, aber diese 
weisen einen teilweise starken Zeitverzug auf...

Es treten keine Erros beim Synthetisieren auf, es gibt nur Warnings die 
sagen das Latches im Programm vorhanden sind, die so nicht vom Spartan6 
unterstützt werden.

Wäre sehr nett wenn mir jemand mit dem Code helfen könnte.

MfG Echo

Autor: Dimi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich hatte vor kurzem auch Probleme mit Ansteuerung eines AC97-Codecs.
Im Internet leider nicht viel zum Thema zu finden. Habe dann doe 
Intel-AC97-Spezifikationen v2.3 studiert 
(http://download.intel.com/support/motherboards/des...)
Danach war es mir klar wie das geht. Ganz simple Sourcecode für 
AC97-Codec habe ich auf meine Internetseite 
(http://speccyland.net/index.php?option=com_content...)

MfG aus Westerwald

Autor: Echo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

joa wie gesagt: In der Simulation funzt ja alles, ich weiß auch welche 
Register ich beschreiben muss usw. Momentan verwende ich folgenden 
Verilog-Beispielcode: 
http://www-mtl.mit.edu/Courses/6.111/labkit/verilo... 
Funzt auch wunderbar. Danke für den Beispielcode Dimi! Werde mir den ma 
angucken und dann versuchen mal ne Audioausgabe hinzukriegen die auf 
gespeicherten PCM-Dateien basiert.

MfG Echo

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.