Hardware Reference
In-Depth Information
Die maximale Anzahl an Befehlen, die in einem Taktzyklus geladen wer-
den kann: fetchmax .
Die maximal in einem Schritt ladbare Befehlsanzahl ist in der Praxis durch
die Schnittstelle zum Speicher beschrankt. Fur den PowerPC 970 gilt hier
der Wert acht, was 32 Byte entspricht.
Fur CISC-Prozessoren mit variabler Befehlswortbreite lasst sich gar keine
exakte Angabe uber die Anzahl an ladbaren Befehlen pro Takt machen. Der
Pentium 4 verfugt uber einen eigenen Cache-Speicher fur Mikrobefehle, den
Trace Cache [36]. Dieser Trace Cache kann aber nicht als eine Art von Fetch
Buffer angesehen werden. Befehle aus dem Trace Cache zu holen, spart le-
diglich die Schrittte, die zur Abbildung der Befehle auf Mikrobefehle notig
sind. Weiterhin speichert der Trace Cache fur einen komplexen Befehl nicht
alle seine Mikrobefehle ab, sondern nur den ersten davon. Den Rest erzeugt
ein so genannter Microcode Sequencer [36].
5.1.2 Ausfuhrungseinheiten
Prozessoren verfugen ublicherweise uber mehrere Ausfuhrungseinheiten, die
auf einzelne Operationen oder eine Gruppe von Operationen spezialisiert
sind. Gruppen von Operationen konnen etwa die ganzzahligen oder die Gleit-
kommaoperationen bilden. Die Ausfuhrungseinheiten konnen fur die Ausfuh-
rung einer Operation einen oder mehrere Taktzyklen benotigen [7]. In einem
Takt fertig gestellt werden konnen viele einfache Operationen fur ganze Zah-
len, wie Addition oder bitweise logische Operationen. Mehrere Takte sind
z.B. fur Multiplikation, Division und Gleitkommabefehle erforderlich. Realis-
tische Werte sind fur Multiplikation 3-40 Takte und fur die Division 18 bis
uber 100 (vgl. [15]). Dies gilt auch fur RISC-Prozessoren, z.B. PowerPC.
Typische Befehle bzw. Gruppen von Befehlen, die in der Praxis auf einer
Einheit ausgefuhrt werden konnen, sind etwa:
Ganzzahlige arithmetische und bitweise logische Befehle. Die entsprechen-
den Einheiten heißen oft ALU oder Integer Unit .
Alle Prozessoren verfugen uber Schiebebefehle, bei MMIX etwa die Befehle
SL und SR .Ausfuhrungseinheiten fur ganzzahlige Operationen ermoglichen
oft nur das Schieben um eine Stelle. Das Schieben eines Registerinhalts
um eine beliebige Anzahl von Stellen ist aufwandig und wird oft in einer
separaten Einheit realisiert, den so genannten Shiftern . Diese sind entwe-
der sehr komplex und erledigen das in einem Taktzyklus. Oder sie sind
recht einfach, benotigen aber mehrere Taktschritte mit Pipelining oder
ohne [4].
Search WWH ::




Custom Search