21.07.2013 Aufrufe

DIPLOMARBEIT - FG Mikroelektronik, TU Berlin

DIPLOMARBEIT - FG Mikroelektronik, TU Berlin

DIPLOMARBEIT - FG Mikroelektronik, TU Berlin

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Technische Universität <strong>Berlin</strong><br />

Institut für <strong>Mikroelektronik</strong><br />

Lukas Bauer<br />

Diplomarbeit<br />

Hochleistungs-Grafikprozessor in Speedchart-VHDL<br />

Abschnitt 6.3<br />

Seite 50<br />

Da S HI LW und S LO LW mit Nullen aufgefüllt werden, ist ein Zusammenfügen der Langworte<br />

aus dem Quellbereich im Lese-Puffer einfach möglich, indem die Werte aus S LO LW in den Lese-<br />

Puffer geschrieben und die Werte aus S HI LW mit dem Inhalt des Lese-Puffers oder-verknüpft<br />

werden (Abb. 34, Mitte).<br />

Ist der Bit-Offset SBOS L im Quellbereich größer als der im Zielbereich, tritt wie in der Abbildung<br />

der Fall ein, daß die Daten aus S HI LW beim ersten Langwort keine gültigen Daten enthalten.<br />

Somit müssen die Daten aus S LO LW an die erste Position des Lese-Puffers geschrieben werden.<br />

Anderenfalls müssen die Daten aus beiden Langworten an den ersten beiden Positionen eingetragen<br />

werden.<br />

Das Kopieren der Daten aus dem Lese-Puffer in den Zielbereich kann nun auf Langwortbasis<br />

geschehen. Falls die Bereichsgrenzen mit Byte-Grenzen zusammenfallen, kann auf ein Lesen,<br />

Ausmaskieren und Zurückschreiben der Randdaten, wie es in Abbildung 34 oben dargestellt ist,<br />

verzichtet werden, da die Randdaten dann über die CAS-Signale byteweise ausmaskiert werden<br />

können.<br />

Zielbereich:<br />

Lese-Puffer:<br />

Quellbereich:<br />

DBOS ✛✲<br />

L ✛DBOS ✲R<br />

0 ... 0 1 ............................... 1 1 ................ 1 0 ................... DBMASK L DBMASK R<br />

0<br />

✻<br />

❄<br />

DATA OUT DATA OUT<br />

✻ ✻ ✻ ✻<br />

<br />

✻ ✻ ✻<br />

✻<br />

(or) (or) (or)<br />

✻<br />

( DBOS L – SBOS L )<br />

✲<br />

✛ SBOS L<br />

✻<br />

✻ ✻<br />

Langwort-Multiplexer, 2 Langworte auf 2 aus 9 (hier 2 aus 4) Positionen<br />

✲<br />

<br />

✻<br />

<br />

<br />

✻<br />

<br />

0 ....................... 0 0 ........... 0 S HI LW / S LO LW<br />

✻<br />

BIT SHIFT, Bit-Multiplexer,<br />

32 Bit auf 32 aus 64 Positionen<br />

✻<br />

DATA OUT<br />

✻RAM-Lese-Daten<br />

Abbildung 34: Beispiel für den Datenfluß beim Kopieren einer Zeile mit dem PixBlT-Befehl, wobei Quell- und<br />

Zieldaten an unterschiedlichen Positionen relativ zum Langwort-Anfang beginnen<br />

✻<br />

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!