/media/sda-magnetic/david/Dok-15-2023-11-27/informatik/vhdl-2023-12-31/auswendig0057.txt


32x32 Registersatz
2 Lese und 1 Schreibport
5 Bit Addresse

2^5 = 32

32 Bit Bus
5 Bit Bus

r-typ
rs-Feld: Quelloperand
rt-Feld: Quelloperand
rd-Feld: Zieloperand

r-typ
i-typ
j-typ

ALU-Op

Opcode:
00      - add
01      - sub
10      - nutze das Func Feld
11      - n/a

Func-Feld:
100 000 - add 4 0
100 010 - sub 4 2
100 100 - and 4 4
100 101 - or  4 5
101 010 - slt - set less than 5 2

ALU-Operation
010 - add
110 - sub
000 - and
001 - or
111 - slt set less than

Einzyklus
Mehrzyklus
Pipelining

Datenkonflikt
Steuerflusskonflikt
Struktur und Ressourcen Konflikt

Echte Datenabhängigkeit: ED - RAW - Read after Write
Ausgabeabhängigkeit: AA - WAR - Write after Read
Gegenabhängigkeit: GA - WAW - Write after Write

Schaltnetz: Elektrische Schaltung, die Spannung als logische Variablen 0 und 1 interpretieren

Schaltnetz: DIN44300/93
Schaltunktion: DIN44300/87

Eingangsvektor
Schaltnetz
Ausgangsvektor

Eingangsvariablen: x0, x1, ..., xn
Eingangsvektor

Schaltalgebra/Boolesche Algebra

Schaltzeichen
Schaltfunktion
Wahrheitstabelle
Funktionsgleichung
Binäres Entscheidungsdiagramm
KV-Diagramm
Schaltplan

Gesetze:
    Neutrales Element
    Inverses Element
    Dualitätsprinzip
    De Morgansche Gleichungen oder Regeln
    Assoziativ
    Distributiv
    Kommutativ
    Absorbition

Verknüpfung
    Null
    Eins
    AND (Konjunktion)
    OR (Disjunktion)
    NAND
    NOR
    Äquivalenz
    Antivalenz
    Komplement
    Inverse
    Implikation
    Transfer


Codierer: Zurordnung eines Zeichen eines Zeichenvorrats zu derjenigen eines anderen Zeichenvorrats
Dekodierer: Codierer mit mehreren Ein und Ausgängen, die für jede Kombination von Eingangssignalen immer nur
je ein Ausgang ein Signal abgibt

Codierer: DIN44300/118
Dekoderier: DIN44300/121

Verknüpfungsglieder: DIN40700
Rechenelemente, Komperatoren: DIN40700

PLHS 18P8

Minimierung von Schaltfunktion
Binäräquivalente
Primimplikantentafel
Quine Mc Cluskey

....

Volladdierer
S = A XOR B XOR C
U = (A AND B) OR (A OR B) AND C

Befehlszähler
    Eingang: PC (t)
    Ausgang: PC (t+1)
Befehlsdekodierer:
    Eingang: OpCode
    Ausgang:
        MemToReg
        MemWrite
        Branch
        ALU-Src
        RegDst
        RegWrite
    Ausgang: ALU-Op
Funktionsdekodierer:
    Eingang:
        Func
        ALU-Op
    Ausgang:
        ALU-Operation

Befehlsdekodierer + 32 Bit Befehlswort: Bit 31 bis Bit 26
Func: Bit 5 bis Bit 0
rs-Feld: 26-21
rt-Feld: 20-16

Immidiate Werte - I-Typ Befehle: Bit 0 bis bit 15 (16 Bit) -> Vorzeichenerweiterungseinheit

1.) Befehlszähler PC (t)
2.) Befehlsspeicher
3.) Vorzeichenerweiterungseinheit
4.) 2 Bit Shifter
5.) Addierer
6.) DeMUX
7.) PC (t+1)

1.) Befehszähler PC (t)
2.) Befehlsspeicher
3.) Befehlszähler PC (t+1)


Addierer: +4

PC (t) -> Addierer + 4 -> PC (t+1)

I1: WB
I2: MEM
I3: EX
I4: ID
I5: IF

addi $t1, $t2, 2
add $t4, $t1, $t3
subi $t3, $t5, 3
subi $t3, $t6, 3

Einzyklus

I1: 0, IF, 1, ID, 2, EX, 3 MEM, 4 WB
I2: 5, IF, 6, ID, 7, EX, 8, MEM, 9 WB

Mehryzyklus Pipelining

I1: 0, IF, 1, ID, 2, EX, 3, MEM, 4 WB
I2: 0 - NIX, 1, IF, 2 ID, 3 EX 4 MEM, 5 WB

I1 schreibt in WB
I2 liesst in ID

Interlocking, Stalling

IF ID EX    MEM WB
            ID  ID EX MEM WB