wswbln
Registrierter Benutzer
Beiträge: 2
|
Erstellt: 04.12.11, 20:26 Betreff: Re: 640x480 VGA Monitor Bitmaske in Sram
drucken
weiterempfehlen
|
|
|
...schon ein paar Tage her, Deine Frage und mit etwas Nachdenken bist Du sicher schon weitergekommen - oder?
Da Du ja genug Speicher hast, würde man es so einrichten, dass jedes Pixel eine eigene Adresse bekommt, die man durch 2-er Potenzen darstellen kann. Packt man also immer ein Pixel (à 3 Bit) in ein Nibble (4 Bit), so passen 8 Pixel in ein 32-Bit Speicherwort. Davon hast Du 640/8 in einer Zeile - macht 80 Worte. Hier rundest Du auf und "spendierst" 128 Worte für jede Zeile.
Zur Adressierung verwendest Du dann die untersten 3 Bit um ggf. den Muxer zu steuern, der ein bestimmtes Pixel innerhalb eines Wortes auswählt, die nächsten 7 Adressbits sind dann Dein 8er-Pixel-Zähler für die Zeilenlänge (mit genügend Reserven falls Du damit auch gleich DE, Sync und Porches erzeugen willst), und die nächsten 9 Bits ergeben Deinen Zeilenzähler.
So funzt die Ansteuerung ganz ohne verquere Adress-Arithmetik.
Zitat:
Adresse im Speicher = ((y-position)*80)+((x-pos)/8) |
...Du bist Hochsprachen-Programmierer, der jetzt den Einstieg auf VHDL wagt - nicht wahr? ;-)
[editiert: 04.12.11, 20:29 von wswbln]
|
|