lb, lbu
lh, lhu
lw
ld*
la*
li*
sb
sh
sw
sd*
move
add, addi, addiu
sub, subi
mult, multu
div, divu
and, andi
or, ori
xor, xori
rem, abs, neg, not
Datenbewegungsbefehle
arithmetisch logische Befehle
Schiebe und Rotationsbefehle
Gleitkommabefehle
Multimediabefehle
Programmsteuerbefehle
Synchronisationsbefehle
Systemsteuerbefehle
Dreiaddressformat
Zweiaddressformat
Einaddressformat
Nulladdressformat
Lade- und Speicherarchitektur
Speicher- Speicherarchitektur
Register- Speicherarchitektur
Stack und Kellerarchitektur
Akkumulatorarchitektur
8087 Intel, ATAM 862, Atmel
Big-Endian: Richtig rum
Little-Endian: Falsch rum
Einzelbit
Ganzzahl
Gleitkomma
Multimedia
Byte
Halbwort
Wort
Doppelwort
signed
unsigned
packed
unpacked
bcd
ascii
ieee-754-std
f = (-1)\^s * 1.m * 2\^(e-b)
32: Einfach
64: Doppelt
80: erweitert
Registeraddressierung
Unmittelbare Addressierung Absolute
Direkte Addressierung
Indirekte Addressierung
Indirekte Addressierung mit Verschiebung
Indirekte Adressierung mit Autoinkrement/Dekrement
Indizierte Addressierung
Indizierte Addressierung mit Verschiebung
Steuereinheit
1.) Befehlsdekodierer
2.) Funktionsdekodierer
Befehlsdekodierer
1.) MemToReg
2.) MemWrite
3.) Branch
4.) ALU-Src
5.) ALU-Op
6.) RegDst
7.) RegWrite
Befehlsdekodierer
Funktionsdekodierer
Registersatz
ALU
Datenspeicher
Befehlsspeicher
Befehlsz"ahler
4 x MUX
1 x AND
2 x Addierer
1 x 2 Bit Shifter
Befehlsdekodierer
1.) MemToReg
2.) MemWrite
3.) Branch
4.) ALU-Src
5.) ALU-Op
6.) RegDst
7.) RegWrite
Funktionsdekodierer
1.) Func
2.) ALU-Op
3.) ALU-Operation
Registersatz
- Lese-Daten-1
- Lese-Daten-2
- Schreibedaten
- Lese-Register-1
- Lese-Register-2
- Schreiberegister
- WE - RegWrite
Datenspeicher
- Leseaddresse
- Lesedaten
- Schreibedaten
- WE - MemWrite
Befehlsz"ahler
- PC (t)
- PC (t+1)
Befehlsspeicher
- Leseaddresse
- Lesedaten
ALU
- Ergebnis
- Null
AND
- PCSrc
ALU-Op Func ALU-Operation
00 x 010 - add
01 x 110 - sub
10 100 000 - add 010 - add
11 n/a
OpCode RegDst RegWrite Branch ALU-Src MemToReg MemWrite ALU-Op
r-typ 000 000 1 1 0 0 0 0 10
Verzweigungsbefehle
1.) Bedingt
2.) Unbedingt
eq - equal
ne - not equal
gt - greater than
ge - greater than equal
lt - less than
le - less than equal
1.) Absolut = Branch
2.) Befehlsz"ahlerrelativ = Jump
3.) Befehlsz"ahlerindirekt = Jump Register
JAL - Jump And Link - Speichern zus"atzlich die Addresse die dem Sprungbefehl folgt
PC_neu = PC_alt + (i << 2)
PC_neu = PC_alt \& 0xf000 0000 | (i << 2)
j, b, jr
jal, jalr
beq, bne
beqz, bnez
blt, ble
bltz, blez
bgt, bge
bgtz, bgez
Zustandselemente
1.) Befehlsz"ahler
2.) Befehlsspeicher
3.) Datenspeicher
4.) Registersatz
1.) Befehl holen
2.) Befehl dekodieren
3.) Operanden der ALU bereitstellen
4.) Operation in der ALU ausf"uhren
5.) Operanden in Architekturregister zur"uckschreiben
1.) IF = Instruction Fetch
2.) ID = Instruction Decode / Register Fetch
3.) EX = Execute / Address Calculation
4.) MEM = Memory Acceses
5.) WB = Write Back
1.) Statisches Schedelung: In Order Issue In Order Completion
2.) Dynamische Scheduling: Out Of Order Issue Out Of Order Completion
1.) Statische Sprungvorhersage durch die Hardware
1.1.) Predict Always Not Taken
1.2.) Predict Always Taken
1.3.) Predict Backward Taken, forward Not Taken
2.) Dynamisch
2.1) Ein Bit Pr"adiktor: Taken <-> Not Taken
2.2.) Zwei Bit Pr"adiktor: Strongyl / Weakly Taken / Not Taken
Schaltnetze
Schaltwerke
Komplexe Schaltwerke
Aufbau und Funktionsweise eines Computers
Schaltnetze
Boolesche Algebra
Definition der Booleschen Algebra
Schaltalgebra ein Modell der Booleschen Algebra
Schaltfunktionen
Definition
Darstellung
Minimierung
Kodierer
Schaltnetzentwurf f"ur die 8421-BCD- zu Siebensegment Umsetzung
Schaltnetzentwurf f"ur einen Addresskodierer
Addierglieder
Halbaddierer
Volladdierer
Paralleladdierer
Komperatoren
Multiplexer
ALU
Zahlendarstellung und Zweierkomplement
Addierer/Subtrahieher
Schaltnetze auf Programmierbaren Logikbausteinen
Schaltwerke
Modelle f"ur Schaltwerke
Implementierung von Schaltwerken
Synthese von Schaltwerken
Analyse von Schaltwerken
Komplexe Schaltwerke und Mikroprozessor
Speicherglieder
Transformation Mealy und Moore
Schaltwerke mit Bin"arcodierten Zustand
Komplexe Schaltwerke
Entwurf komplexer Schaltwerke
Aufbau komplexer Schaltwerke
RTL-Notation
ASM-Diagramme
Zustandsboxen
Entscheidungsboxen
Bedingte Ausgangsboxen
ASM-Block
Konstruktionsregeln f"ur Operationswerke
Entwurf des Steuwerks
Beispiel 1en Z"ahler
L"osung mit Komplexes Schaltwerk, Moore
L"osung Komplexes Schalwerk, Mealy
Entwurf des Operationswerks
Moore Steuerwerk als konventionelles Schaltwerk
Moore Steuwerk mit HotOne Kodierung
Mealy Steuwerk als konventionelles Schaltwerk
Mealy Steuerwerm mit HotOne Kodierung
Mikorpgraommierte Steuerwerk
Aufbau und Funktionsweise des Computers
Erweiterung komplexer Schaltwerke
Komponenten eines Computers
Rechenwerk
Leitwerk
Speicher
Ein und Ausgaben
Prozessorregister
Interne und Externe Busse
Anwendung des Stapelzeigers
Unterprogramme
Unterbrechungen (Interrupts)
Operationswerk
Daten und Addressregister
Datenpfade
Schiebemultiplexer
Arithmetische Operationen
Logische Operationen
Statusflags
Leitwerk