Hallo, da ich noch nie irgendwas mit RAM "gemacht" habe wollte ich mir auf meinen FPGA Board mal eine Grafikkarte programmieren. Die Idee ist, dass ein Mikroproz Daten in den Ram schreibt und der FPGA diese Daten die ganze Zeit ausgibt und auch die Timings für das VGA Signal macht. Was mir Probleme bereitet sind die Speicherzugriffe. Wie regele ich wann wer schreiben/lesen darf?? Wie macht man so etwas? Gibt es noch andere kleine Projekte in denen man den Ram mal testen kann :-D Grüße Elko
@ Elko (Gast) >Was mir Probleme bereitet sind die Speicherzugriffe. Wie regele ich wann >wer schreiben/lesen darf?? Wie macht man so etwas? Am Anfang möglichst einfach. Deine Grafikkarte und deine CPU teilen sich den Zugriff abwechseln. Sprich, bei einem Takt bzw. Zyklus darf die Grafikkarte lesen, beim nächsten die CPU schreiben. Wenn die CPU nicht schreiben will, bleibt die Zeit ungenutzt. Eine State Machine reglet das Ganze. Ist einfacher als man denkt. MfG Falk
Falk Brunner schrieb: > Die Idee ist, dass ein Mikroproz Daten in den Ram schreibt und der FPGA > diese Daten die ganze Zeit ausgibt und auch die Timings für das VGA > Signal macht. Hallo, bei einem Video-RAM ist es zweckmässig, das RAM in den Austastlücken zu beschreiben. @Falk: "Ist einfacher als man denkt." Nur muss das RAM dann doppelt so schnell sein wie für die Video-Ausgabe an sich schon notwendig. Bei VGA ist der Pixeltakt 25 MHz, also müsste das System mit 50MHz takten. Bei grossen Displays wird's schwierig. Gruss Reinhard
2 Stück SRAM 256Kx16/10ns parallel (z.B. von ISSI), das sollte reichen: jeweils 15 ns Zugriffszeit, dazwischen 5 ns zum Umschalten macht 40 ns Gesamt oder 25 MHz Zugriffstakt. Wenn du 'nur' 16 Bit Farbe nimmst, dann ergibt das 50 MHz Pixeltakt. W.S.
W.S. schrieb: > Wenn du 'nur' 16 Bit Farbe nimmst, dann > ergibt das 50 MHz Pixeltakt. Da hast du was falsch verstanden. Der Zugriffstakt muss doppelt so hoch sein wie der Pixeltakt, nicht umgekehrt, bei 16Bit sogar vierfach: du must ja alle 40 ns 2 Bytes an das Display befördern und noch einen Schreibtakt dazwischenschieben. Warum glaubst du sonst haben Video-DACs Geschwindigkeiten weit jenseits von 100 MHz? Gruss Reinhard
Je nachdem wie schnell man schreiben will kann man auch im FPGA einen kleinen Puffer machen und der FPGA schreibt es rein wenn er gerade "dran vorbeikommt" anstatt den Wert zu lesen.
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.