/media/sda-magnetic/david/Dokumente-15/fernuni-hagen/cs-i-ii/old-cs-2-01/informatik2/bash-programming/lex-yacc-bash-etc/new00002.txt


Pipeline
Pipeline-Stufe = Pipeline-Segment
Pipeline-Register
Pipeline-Maschinentakt
Pipeline-Durchsatz

IF - Instructions Fetch - Befehlsholephase
ID - Instruction Decode - Befehlsdekodierphase
EX - Execute/Adress Calculation - Ausführungsphasen 
MEM - Memory Access - Speicherzugriffsphase
WB - Write Back - Resultatsspeicherphase

Befehlsholestufe
Befehlsdekodierstufe
Operanden
Operationen innerhalb der ALU
Speicherzugriffsphase

Pipeline-Konflikte
Pipeline-Hemmnisse = Pipeline-Hazards

1. Datenkonflikte
2. Struktur- und Ressourcenkonflikte
3. Steuerflusskonflikte

Datenkonflikte:
1. Echte Datenabhängigkeit - Lese-nach-Schreibkonflikte - Read after Write - RAW
2. Gegenabhängigkeit - anti dependence - Schreibe-nach-Lesekonflikte - WAR
3. Ausgabeabhängigkeit - output dependence - Schreibe-nach-Schreibekonflikte - WAW

Behandlung:
1. Statisch durch den Compiler
2. Pipeline-Sperrung - Erkennung durch Hardware - Interlocking - Stalling

Steuerflusskonflikte
Steuerflussabhängigkeiten
Steuerflussänderungen 

BTAC - Branch Target Adress Cache - Sprungziel-Adress-Cache
BTB - Branch Target Buffer

Branch Adress Cache - Sprungziel-Cache

Statische Sprungvorhersagen:
1. Predict always not taken 
2. Predict always taken 
3. Predict backward taken, forward not taken 

1-Bit-Prädiktor
1. Genommen - T - taken 
2. Nicht genommen - NT - Not taken 

2-Bit-Prädiktor
1. predict strongly not taken 
2. perdict weakly not taken 
3. predict weakly taken 
4. predict strongly taken 

arsort($array)
asort($array)
implode($array, $key)
explode($array, $key)
count ($array)
natsort ($array)
natcasesort ($array)
...


body
head
title
meta
base
links