Hallo! Kennt sich vielleicht jemand von euch mit dem Xilinx EDK aus? Habe mir hier etwas SDRAM an mein Spartan Starter Kit gebastelt und wollte jetzt mal ein wenig Linux laufen lassen. Dazu hätte ich gerne ein kleines TFT Display an den VGA Port angehängt. Leider habe ich im EDK keinen CORE gefunden der etwas mit VGA / TFT zu tun hätte. Im internet hab ich gesehen da wurden verschiedene Cores benutzt z.B. plb_tft_cntlr_ref. Den gibt es bei mir aber leider nicht. Kann das sein das das daran liegt das ich nur eine Testversion habe? Oder sind in der 9.1 version keine VGA/TFT cores mehr dabei? Gruß, Manuel
Dafür brauchste eigentlich keinen Core... VGA-Signale lassen sich ganz einfach erzeugen. Aber wenn Du einen suchst, schau mal bei www.opencores.org Die haben einen. Habe ihn allerdings net probiert.
Ach so... Net richtig gelesen... Wie das mit der Linux-Anbindung ist, kann ich Dir nicht sagen...
So, habe jetzt herausgefunden das beim EDK kein VGA IP dabei ist. Die VGA Specs. sehen ja nicht so problematisch aus und es gibt jede menge dazu im netz. Das Problem ist jetzt wie das ganze implementiert werden muss damit es auch mit dem EDK läuft. Ich hab mir das jetzt so überlegt: SRAM als Framebuffer - und zwar gleich 2x. Auf der 1. seite wird gelesen und auf der zweiten geschrieben. Das ganze wird dann beim VSYNC geändert. 1. seite schreiben 2. seite lesen. So jetzt "nur" noch die anbindung an den OPB und die integration ins EDK. Hat sowas schon mal jemand gemacht und kann mir vielleicht etwas unter die Arme greifen? Gruß, Manuel
Also ich habe sowas mit dem Spartan3 Starterkit gemacht. Ich kann Dir sagen, dass der Zugriff auf das Ram der schwierige Teil ist, weil du ja für den Zugriff immer wechseln musst zwischen Prozessor Core und VGA Core. Beim Spartan3 Starterkit war das noch relativ einfach, weil dieses ein normales SRam hat. Ich habe das dann den Zugriff zeitgemultiplext, so dass abwechselnd 32 bit (=4 Pixel mit 8Bit Auflösung) gelesen werden und dann 3 Mal für den Prozessor die Möglichkeit besteht, in das Ram zu schreiben. Der VGA Core hängt bei mir an einem FSL Bus, so dass der Prozessor im Prinzip ein eine FiFo schreibt woraus sich der VGA Core dann bequem die Daten holen kann, wenn er Zeit zum Schreiben hat. Das klappt gut. Ich hatte mich gegen den OPB Bus entschieden, weil mir dieser zu langsam ist. Wenn ich mich recht erinnere braucht er für einen normalen Zugriff schnell mal 5 oder sogar 10 Takt Zyklen (und mehr). Andererseits wüsste ich jetzt nicht, wie ich das mit SDRam als Grafik Speicher auf einfache Art und Weise ohne OPB lösen würde, weil der Zugriff auf ein SDRam deutlich aufwendiger als auf ein SRam ist. Daher wäre wohl da der normale OPB SDRam Controller die einfachste Lösung. Dann müsstest du aber deine OPB Grafikkarte als OPB Busmaster auslegen, so dass diese auch ohne den Prozessor direkt auf das SDRam zugreifen kann. Ob das dann zeitlich auch so klappt, kann ich dir aber nicht sagen - es könnte ein Problem geben, weil die Daten vom Ram nicht schnell genug kommen. Im Endeffekt wäre wohl der beste Weg der, dass man sich einen eigenen SDRam Controller für den VGA Core bastelt, der es dann auch erlaubt abwechselnd darauf zuzugreifen. Das ist aber keine einfache Sache. Vielleicht gibt es auch einen passenden Core Generator, der dir einen SDRam Core generieren kann, den du dann nutzen könntest. Gruß, Thomas
Ja, ich hab eigentlich vor den SRAM als VGA Puffer zu verwenden. Der SDRAM ist dann als Programmspeicher gedacht. (Soll ja uCLinux laufen, da hab ich mir mal 16MB an A2 gebastelt). Ich hab also vor es genau so wie du zu machen. Das mit dem FSL bus ist schon mal eine gute Idee, muss ich mir gleich mal anschauen. Und mehr als 6 Bit/Pixel brauch ich eigentlich auch nicht; 64 Farben sollten reichen. Gruß, Manuel
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.