Hardware Reference
In-Depth Information
Solche Befehle hat AMD unter dem Namen 3DNow! in seine Prozessoren
eingebaut. Bei MMIX gibt es solche Befehle ausschließlich fur die saturierte
Addition der genannten Vektoren: BDIF , WDIF, TDIF und ODIF .Diesistzu-
sammen mit Beispielen beschrieben in [1]. Solche Befehle sind insbesondere
bei der Bildbearbeitung und Bildverarbeitung von Bedeutung, wo Bildpunk-
te durch einzelne Grauwerte oder durch Farbwerte nach einem Farbmodell
(RGB bzw. CMYK) mit vier unabhangigen Bytes je Wert reprasentiert wer-
den.
Vektorbefehle fur Vektoren von Gleitkommazahlen werden in Mikroprozesso-
ren seit 1999 eingebaut. Intel hat damit begonenn, seine Prozessoren mit den
so genannten Internet Streaming SIMD Extensions (ISSE) auszustatten 5 .Bei
den PowerPC-Prozessoren werden Vektorbefehle unter dem Namen AltiVec
eingesetzt. In Anwendungen, bei denen komplexe Zahlen oder Raumkoordi-
naten eine Rolle spielen, konnen diese auf solche Vektoren abgebildet werden.
Komplizierte Operationen auf diesen Vektoren konnen dann einfach progam-
miert und sehr schnell ausgefuhrt werden. Bei MMIX finden wir solche Befehle
nicht vor.
Befehle fur digitale Signalverarbeitung
Fur Aufgaben der digitalen Signalverarbeitung werden oft spezielle Prozes-
soren eingesetzt, so genannte Digitale Signalprozessoren, kurz DSP.
Signalprozessoren verfugen meistens uber spezielle komplizierte Hardware,
die eine Multiplikation in nur einem Taktzyklus ausfuhren kann. Haufig kann
diese Multiplikation auch mit einer Addition verbunden werden. Man spricht
von Multiply-and-Accumulate. Damit lassen sich beispielsweise Skalarpro-
dukte schnell berechnen, die in Algorithmen zur digitalen Signalverarbeitung
eine große Rolle spielen.
Ubung 1.3.4 Auf welche der hier genannten Befehle kann nicht verzichtet
werden, obwohl sie dem RISC-Prinzip widersprechen?
1.3.4
1.3.8 Parallelverarbeitung auf Ebene des Befehlssatzes
Ein Ansatz, Befehlssatze zu implementieren, besteht darin, mehrere Befehle
in ein Befehlswort zu kodieren. Diese Befehle konnen vom Prozessor paral-
lel ausgefuhrt werden. Ein Programmierer oder Compiler gibt also explizit
vor, welche Befehle parallel ausgefuhrt werden konnen. Da die entstehen-
5 Die Abkurzung SIMD steht dabei fur Single Instruction Multiple Data ,also
Befehle, die (als einzelner Befehl) mehrere Daten/Operanden bearbeiten konnen.
Gewohnliche Befehle waren demgegenuber vom Typ SISD - Single Instruction Sin-
gle Data .
Search WWH ::




Custom Search