Re: Aufgaben und Übungen,

lb, lbu
lh, lhu
lw
ld*
la*
li*
sb
sh
sw
sd*
add, addi, addiu
sub
mult, multu
div, divu
and, andi
or, ori
xor, xori
not, rem, abs*, neg*

Datenbewegungsbefehle
arithmetisch logische Befehle
Schiebe und Rotationsbefehle
Gleitkommabefehle
Multimediabefehle
Systemsteuerbefehle
Synchronisationsbefehle
Programmsteuerbefehle

Dreiaddressformat
Zweiaddressformat
einaddressformat
Nulladdressformat

Lade- und Speicherarchitektur
Speicher-Speicherarchitektur
Register-Speicherarchitektur
Stack- und kellerarchitektur
Akkumulatorarchitektur

Little-Endian
Big-Endian

signed
unsigned
packed
unpacked
bcd
ascii

byte
halbwort
wort
doppelwort

einzelbit
ganzzahl
Gleitkomma
multimedia

ieee-754-std
f = (-1)\^s*1.m*2\^(e-b)
32: einfach
64: doppelt
80: erweitert

Unmittelbare Addressierung
Absolute Addressierung
Register Addressierung
Direkte Addressierung
Indirekte Addressierung
Indirekte Addressierung mit Verschiebung
Indirekte Addressierung mit Autoinkrement/Dekrement
Indizierte Addressierung
indizierte Addressierung mit Verschiebung

Steuereinheit
1.) Befehlsdekodierer
2.) Funktionsdekodierer

MemToReg
MemWrite
Branch
ALU-Src
ALU-Op
RegDst
RegWrite

Befehlsdekodierer
Funktionsdekodierer
Registersatz
ALU
Datenspeicher
Befehlsspeicher
Befehlsz"ahler
Vorzeichenerweiterungseinheit
4 x MUX
1 x AND
2 x Addierer
1 x 2 Bit Shifter

Registersatz:
Lesedaten-1
Lesedaten-2
Schreibedaten
Lese-Register-1
Lese-Regiter-2
Schreiberegister
WE

Datenspeicher
Lesedaten
Schreibedaten
WE
Addresse

ALU:
- ALU-Ergebnis
- Null

AND: PC-Src

Funktionsdekodierer
Func
ALU-Op
ALU-Operation

Befehlsdekodierer
MemToReg
MemWrite
Branch
ALU-Src
Reg-Dst
Reg-Write

Befehlsspeicher
- Leseaddresse
- Lesedaten

Befehlsz"ahler
- PC (t)
- PC (t+1)

ALU-Op      Func            ALU-Operation
00          x               010 - add
x1          x               110 - sub
1x          100 000 - add   010 - add

            op-code     regdst  regwrite    branch alu-src memtoreg memwrite  mal-op
r-typ       000 000     1       1           0       0       0       0           10

Verzweigungsbefehle
1.) Bedingt
2.) Unbedingt

Absolute
Befehlsz"ahlrelativ
Befehlsz"ahlerindirekte

jal: jump and link: Speichern zus"atzlich die Addresse, die dem Sprungbefehl folgt

j: jump
jr: jump register

eq - equal
ne - not equl
gt - greater than
ge - greter than equal
lt - less than
le - less than equal

j, b*, jr
jal
jalr
beq, bne
beqz*, bnez*
blt*, ble*
bltz, blez
bgt*, bge*
bgtz, bgez

PC = PC_alt + (I << 2)
PC = PC_alt \&amp; 0xf000 0000 | (I << 2)

Datenkonflikte
Steuerflusskonflikte
Struktur und Ressourcenkonflikte

Zustandselemente
Befehlsz"ahler
Befehlsspeicher
Registersatz
Datenspeicher

Befehl holen
Befehl dekodieren
Operanden der ALU bereit stellen
Operation in der ALU ausf"uhren
Operanden in Architekturregister zur"uckschreiben

1.) IF - Instruction Fetch - Befehls Hole Phase
2.) ID - Instruction Decode / Register Fetch - Befehlsdekodier und Operandenbereitstellungsphase
3.) EX - Execute Address Calculation Ausf"uhrungsphase
4.) MEM - Memory Access - Speicherzugriffsphase
5.) WB - Write Back Resultatspeicherphase

1.) Statisches Scheduling: In Order Issue In Order Completion - VLIW Prozessor
2.) Dynamisches Scheduling: Out Of Order Issue Of Order Completion: OOE-Prozessor

1.) Statische Sprungvorhersage
1.1.) Predict Always Not Taken
1.2.) Predict Always Taken
1.3.) Predict Backward Taken forwar not taken
2.) Dnyamisch
2.1.) Ein bit pr"adiktor: Taken not taken
2.2.) Strongly weakly T/NT