/media/sda-magnetic/david/Dok-15-2023-11-27/fernuni-hagen/cs-i-ii/old-cs-2-01/exrcs-2021-08-01/all30001.txt


1. PLD
1.1. Typen
- PLD = Programmable Logic Device
- PLA = Programmable Logic Array
- PAL = Programmable Array Logic 
- FPGA = Field Programming Gate Array
- LCA = Logic Cell Array
- CPLD = Complex Programmable Logic Device 

PLA: Programmierbare UND-Matrix, gefolgt von programmierbarer ODER-Matrx
PROM: Fest verdrahtete UND gefolgt von programmierbarer ODER
PAL: Programmierbare UND

1.2. Hersteller
- Xilinx
- Altera
- Lattice
- Actel
- Cypress
- QuickLogic
- Atmel

1.3. Kirchhoffsche Regeln 

a) Jeder Knoten in dem mehr als zwei Zweige zusammen laufen nennt man einen Knotenpunkt
b) Knotenregel: In jedem Punkt ist die Summe der zufließenden Ströme, gleich die Summe der abfließenden 
c) Maschensatz: In jeder Masche ist beim gleichseitigen Umlaufen, die Summe aller Spannungen einer Masche gleich 0

1.4. Halbleiter
1.4.1. Thrystor
- Triode 
- Thrystor
- Triac
- Vierschichtdiode
- Symmetrische Vierschichtdiode 

LASER = Light Amplification of Stimulated Emission of Radiation 


1.4.2. 
- FET: Field Effect Transistor 
- Source, Drain, Gate, Bulk 
- Quelle, Senke, Tor 

- MOSFET: Metal Oxid Semiconductor FET 
- MISFET: Metal Insulated Gate FET 
- MESFET: Schottky Übergang 
- IGFET: Insulated Gate FET 
- SFET: Sperrschicht FET 
- JFET: Junction  FET 
1.4.3. Bipolare Transistoren
- Baumformen: Exitaxie-Planar-Transistor, Mesa-Transistor, HF-Hochleistungstransistor, Hochspannungstransistor
- Kennlinien
a) Arbeitspunkteinstellung
b) Übersteuerungsgrenze
c) Sättigungsspannung
d) Kleinsignalverhalten
e) Stromverstärkungsgrupen
f) Restströme
- Gehäuse-Bauformen:
a) TO-39
b) TO-92
c) TO-
d) SOT-32
e) SOT-9...
f) ...

1.4.4. Dioden
a) Gleichrichterdioden 
b) PIN- und PSN-Dioden
c) Schottky-Dioden
d) Hetero-Dioden
e) Tunnel-Dioden
f) Backward-Dioden 
g) Z-Dioden 

2. VHDL

a) Blöcke = Zähler, Multiplexer, Dekoder, ... (1.) Blöcke, (2.) Signale - Blöcke sind über Signale miteinander verbunden 
b) Zuweisung: 
c <= a or b;
c <= a;

Kommentare: Doppelter Bindestrich
Es wird nicht zwischen Groß und Kleinschreibung unterschieden. 

Streng typisierte Sprache 

boolen: true, false
bit: 0, 1
std_logic: 0, 1, z, -, u, l, h, x, w

0: starke 0
1: strake 1
z: hochohming
-: fehler
x: don't care
u: unbekannt 
l: schwache 0
h: schwache 1
w: schwaches x

<signalname>: <richtung> <typ>;
<signalname>: <richtung> <typ>

<signalname>: <richtung> <typ>_vector (<lower> to <upper>);
<signalname>: <richtung> <typ>_vector (<upper> downto <lower>);

richtung: in, out, inout 

a: in bit;
b: in boolean;

a: in bit_vector (0 to 3);
b: out bit_vector (7 downto 0);

1. Bibliotheks- und Packagebeschreibung
2. Entity
3. Architecture

entity <blockname> is 
port 
(

);
end; 

entity multiplexer is 
port
(
    b3, b2, b1, b0: in bit;
    a3, a2, a1, a0: in bit;
    s: in bit;
    y3, y2, y1, y0: out bit 
);
end; 

entity counter is 
port 
(
    clk: in bit;
    rst: in bit;
    y3, y2, y1, y0: out bit;
);
end;

architecture <verhalten> of <blockname> is
begin 

end <verhalten>;

architecture VERHALTEN of Multiplexer is 
    signal a, b, c: bit_vector (3 downto 0);
begin 
    a <= (a3, a2, a1, a0);
    b <= (b3, b2, b1, b0);
    
    c <= a when (s = '0') else b;
    
    y3 <= c(3);
    y2 <= c(2);
    y1 <= c(1);
    y0 <= c(0);
end VERHALTEN;
    
3. Speicher
a) Register
b) Level-1-Cache
c) Level-2-Cache
d) RAM 
e) Festplatte
f) CDROM 

SRAM: Flip Flop
DRAM: Kondensator
Flash: Floating Gate MOS FET 

Six-Device-Zelle 

SSD: Solid State Disk, auf Basis, Flash 

Cache: 

1. Inhaltsaddressiert: Cache 
2. Ortsaddressiert: RAM

Zeitliche Lokalität: Temporale Lokalität: Auf gleichen Code bzw. Daten wird immer wieder zugegriffen
Örtlich: Elemente einer Matrix 

1. Vollassoziativ
2. n-Wege-Satzassoziativ
3. Direkt abgebildet

Cache-Zeile = Cache-Line
Cache-Block
Satz

1. Anzahl der Sätze pro Block: n
2. Anzahl der Sätze insgesamt: m
3. Anzahl der Blöcke: m/n

Dirty-Bit: d-bit 
Valid-Bit: v-Bit 

Daten, Tag, Zugriffsverwaltungsinformation 

Hit-Rate: T
Miss-Rate: M = 1-T

Cache-Treffer = Cache-Hit 
Cache-Fehlzugriff = Cache-Miss 

Vollassoziativ: Tag, Byte-Auswahl 


4. Technische Informatik

1. Technische Information
2. Schaltnetze
3. Schaltwerke
4. Komplexe Schaltwerke 
5. Aufbau und Funktionsweise eines Computers 

Schaltnetze:

1. Boolesche Algebra, Schaltalgebra 
2. Analyse von Schaltnetzen
3. Synthese von Schaltnetzen 
4. Kodierer
- 8247-BCD- zu Siebensegment-Umsetzung
- Addresskodierer
5. Multiplexer
6. Addierer
7. ALU
8. Komeratoren

1. Distributivgesetz
2. Kommutitativgesetz
3. Assoziativgesetz
4. Absorbtionsgesetz
5. De Morgen 

1. Konjunktion 
2. Disjunktion 
3. Inhibition
4. Transfer
5. Antivalenz
6. Null 
7. NOR-Verknüpfung 

...

Halbaddierer

C = A and B
S = (A AND NOT B) OR (NOT A AND B) = A XOR B

Volladdierer

COUT = (A AND B) OR (A AND CIN) OR (B AND CIN)
S = A XOR B XOR CIN

Schaltwerke

Latch: Flip Flop: RS-Latch: Reset R - Set S

Wirkintervall, Kippintervall
Wirkzeit = Setup Time, Haltezeit = Hold Time 

Automat: FSM - Finite State Machine 

Mealy
Moore 

<I, S, O, s0, f, g>

I: Eingabezeichen
S: Zustände
O: Ausgabezeichen
s0: Starzugang
f: Ausgangsfunktion 
g: Übergangsfunktion 

f: SxI->O (Mealy)
f: I->O (Moore)
g: SxI->S

5. Prozessorarchitektur
5.1. Befehle 

lb, lbu: Laden, Byte
lh, lhu, Halbwort
lw, Wort
ld*, Doppelwort
la*, Addresse
li*, Immidiate
sb, Byte
sh, Halbwort
sw: Wort
sd*: Doppel 

add 
addi
addiu
sub 
mult 
multu 
div 
divu 
rem*
abs*
not*
and 
andi 
or
ori
xor
xori
not*

Load-and Store Architecture 
Register-Speicher 
Speicher-Speicher 
Stack 
Akkumulator 

1. Datenbewegungsbefehle
2. Arithmetische Logische Befehle
3. Schiebe und Rotationsbefehle
4. Gleitkommabefehle
5. Multimediabefehle
6. Programmsteuerbefehle
7. Systemsteuerbefehle 

byte
halbwort
wort 
doppelwort 

bit 
ganzzahl
gleitkomma 
multimedia 

signed
unsigend
packed
unpacked

ieee-754-Std: f = (-1)^s*1.m*2^(e-b)

Direktwertaddressierung
Registeraddressierung
Unmittelbare Addressierung
Registerindirekte Addressierung
Registerindirekte Addressierung mit Verschiebung 
Registerindirekte Addressierung mit Autoinkrement
Indizierte Addressierung
Indizierte Addressierung mit Verschiebung 

$a
$t
$v
$s
$k
$0
$at
$fp
$sp
$gp



6. MIPS-Struktur

1. Befehlsdekodierer
2. Funktionsdekodiere

Befehlsdekodierer:
- RegDst
- RegWrite 
- ALUSrc
- Branch
- MemToReg
- MemWrite
- ALUOp

Funktionsdekodierer:
- ALUSrc
- Func
- ALUOp

1. Befehlsdekodierer
2. Funktionsdekodierer
3. ALU
4. Registerblock
5. Datenspeicher
6. Befehlsspeicher
7. Befehlszähler
8. Vorzeichenerweiterungseinheit 
9. AND 
7. 2 x Addierer
8. 4 x MUX 
9. 1 x 2 Bit Shifter 

Registerblock:
- Leseregister-1
- Leseregister-2
- Schreiberegister
- Lese-Daten-1
- Lese-Daten-2
- Schreibedaten
- WE
- CLK

Datenspeicher:
- Schreibedaten 
- Lesedaten
- Addresse 
- WE 

ALU:
- Null
- Ergebnis 

Befehlsspeicher:
- Lesedaten
- Schreibedatein 

Befehlszähler:
- PC (t)
- PC (t+1)

ALUOp       Func            ALUSrc
00          000000 - add    010 - add
1X                          110 - sub
X1
        
        Operation   RegDst  RegWrite    ALUSrc  Branch  MemToReg    MemToWrite  ALUOp
r-Typ   000000      1       1           0       0       0           0           10