Sie sind auf Seite 1von 8

Gib die Hierarchie der Ebenen fr RISC und CISC an. Was ist der Unterschied?

Was sind die Vor- und Nachteile der jeweiligen Architektur?

Anwendungsebene
Ebene der hheren Programmiersprachen
Assemblerebene
Betriebssystemebene
Maschinenspracheebene
Mikroprogrammebene
Hardwareebene

RISC und CISC haben fast die selbe Hierarchie der Ebenen, jedoch hat RISC keine
Mikroprogrammebene.

RISC CISC
Ausfhrungszeit 1 Datenpfadzyklus 1 Datenpfadzyklus
Instruktionsanzahl Klein Gro
Intruktionsformat Einfach Variabel
Steuerung ber Handware Mikroprogramm
Hauptspeicherzugriffe LOAD/STORE Keine Einschrnkung
Pipelining Einfach mglich Aufwendig
Verlagerung der Komplexitt Compiler Hardware

Erklre den Unterschied von Compiler und Interpretern. Was ist ein Vollcompiler?

Interpreter: ein Maschinenprogramm welches ein Programm Anweisung fr Anweisung ausfhrt

Compiler: ein Maschinenprogramm welches ein ganzes Programm in eine andere Sprache
transformiert

Vollcompiler: Ein Maschinenprogramm welches ein anderes Maschinenprogramm ausgibt

Interpreter Compiler
Quick and Dirty Schnell
Einfacherere Implementierung Codeoptimierung mglich
gut fr Prototypen
Fehler werden sofort erkannt
Systemunabhngig

Gib den Aufbau eines von Neumannschen Rechner an.


Eigenschaften
Trennung zwischen Datenpfad und Speicherkomponente
Interne Speicherung der Programme in einer Speicherkomponente
Gemeinsamer Speicher fr Daten und Befehle
Fetch - Decode - Execute - Arbeitszyklus

Wie ist die Organisation eines Arbeitsspeichers/CPU

Was ist ein Synchroner/Asynchroner Bus?

Synchrone Datenbertragung: bertragung der Daten findet nur zu festen Zeitpunkten statt,
welche durch ein gemeinsames Taktsignal definiert werden.

Asynchrone Datenbertragung: bertragung der Daten erfolgt durch Handshaking (i.e.


Synchronisationleitungen teilen den Teilnehmern mit, dass gltige Daten auf dem Bus liegen).

Synchrone Datenbertragung Asynchrone Datenbertragung


Schnell Billig da keine lokale Speicherung bentigt
Permanenter Takt erfordert keine Einfachere Implementierung
Neusynchronisation
Mehr bertragungsprotokolle Mehr Aufwand wegen Handshaking
grere Dateien fehlerfrei bertragen Programmierung
Automatisch anpassbar da Sender/Empfnger
reagieren
Eventuelle Notwendigkeit von separaten
Taktleitungen

Gib einige Klassen von Assemblerbefehlen an.

Lade- und Speicherbefehle


Arithmetische Befehle vom Register-Typ
Arithmetische Befehle vom Immediate-Typ
Logische Befehle
Sprungbefehle

Was sind Vor- und Nachteile von Assembler bzw. Hheren Sprachen

Vorteile Nachteile

Was ist Pipelining? Nenne den Beschleunigungsfaktor, der durch Pipelining erzielt
werden kann.

Ziel: Steigerung der Rechnerperformanz durch parallelisieren von Phasen der Befehlsabarbeitung

Voraussetzung: gleichartige Befehle

Maximale Beschleunigung: Bmax (k )=k wobei k = # der Phasen

km
Maximalen Geschwindigkeitsgewinn: speedup k = wobei k = # der Phasen und m= #
k +( m1)
der auszufhrende Instruktionen

Was sind Hazards? Welche Typen von Hazards gibt es? Wie kann man sie vermeiden?

Hazard: Konflikte beim Pipelining

Control Hazard: Unklar welcher Befehl als nchstes dran kommt

Lsungen:
Einfgen von NOPS (Software)
Branch Prediction (Hardware)

Branch Prediction: durch intelligentes Raten der nchsten Instruktion das wahrschenlich nchste
Ziel in die Pipeline geladen; Effektiv bei hufig gleichen Verzweigungen (Schleifen); Falls falsche
Entscheidung getroffen, muss Pipeline geleert werden

Data Hazard: Datenabhngigkeiten zwischen aufeinanderfolgenden Instruktionen

Lsungen:
Einfgen von NOPS (Software)
Umsortieren der Maschinenbefehle (Software)
Forwarding (Hardware)

Forwarding: Zusatzhardware erkennt Datenabhngigkeiten; Falls Ergebnis am Ausgang der ALU


liegt, wird dieses direkt wieder zum Eingang gefhrt
Speicherhierarchie?

Speicherhierarchie: die Verwendung mehrerer, verschiedenartiger Speicher

Zugriffsgeschwindigkeit Grenordnung
Schnell / Teuer Register Byte
Caches Kilobyte
Arbeitsspeicher Mega - Gigabyte
Massenspeicher (Festplatte) Giga - Terabyte
Langsam / Billig Wechseldatentrger Giga - Terabyte

Was ist ein Cache? Wozu Caches? Was ist ein Assoziativcache?

Cache: (franz. verstecken) soll die Performanzlcke zwischen Register und Hauptspeicher fllen;
software-transparent

Es gibt zwei Arten:


on-chip cache (innerhalb der CPU)
second level cache (auerhalb der CPU)

Rechner hat zwei getrennte Cache:


Instruktionscache
Datencache

Cache besteht aus zwei Speichereinheiten:


Adressspeicher
Datenspeicher

Lokalittsprinzip: zu jedem Zeitpunkt whrend eines Programmablaufs werden bestimmte


Speicherzellen bevorzugt und wiederholt angesprochen

Vollassoziativer Cache (FA): die entsprechende Adresse wird mit allen Verglichen

Direktabgebildeter Cache (DM): feste Abbildung der Hauptspeicheradressen auf die Cache
Adressen (dmc); Arbeitsspeicher in Dekoder und Tag unterteilt

n-fach Satz-Assoziativer Cache: Kombination aus DM und FA; dmc speichert einen Block mit n
Cacheadressen; die Blcke mssen intern als FA organisiert sein.

Vollassoziativer Cache Direktabgebildeter Cache


Speicherort im Cache fr Frei whlbar Durch dmc fest vorgegeben
Hauptspeicherzellen
Verdrngungsstrategien Ja Nicht bentigt
Lokalisierung von Daten Paralleler Vergleich mit allen Dekodierung und ein Vergleich
im Cache gespeicherten von zwei Adressen
Adressen

Vollassoziativer
Vorteile Nachteile
Schnell, hohe Performanz (solange Cache nicht Groe, teure und aufwendige Logikschaltung fr
zu gro) parallelen Vergleich bentigt (ab gewissen
Gre)
Speicherort im Cache fr Hauptspeicherzellen Langsam (umso mehr Cachezellen, umso lnger
frei whlbar braucht der Vergleich)
Problemlose bernahme von Daten aus dem # der Cache miss, Trefferrate und Performanz
Hauptspeicher (solange Cache nicht voll) hngen von dem zu verdrngenden Datum ab
Paralleler Vergleich ist aufwendig

Direktabgebildeter

Vorteile Nachteile
Wenig Hardware und somit gnstig Trefferrate kann nicht erhht werden (keine
Verdngungsstrategien)
Schnell durch vereinfachte Suche
Keine Verdrngungsstrategien weil dmc
bestimmt
geringer Realisierungsaufwand
keine gegenseitige Verdrngung

Nenne gngige Verdrngungsstrategien? Wie funktionieren Sie?

Least Recently Used (LRU): das mit dem am lngste zurckliegende Zugriffsdatum wird
verdrngt

Least Frequently Used (LFU): das mit dem am seltensten benutzten Datum wird verdrngt

First in, First out (FIFO): das mit dem am lngsten zurckliegende Datum wird verdrngt

Die FIFO-Strategie ist einfach zu realisieren und LRU / LFU-Strategie bercksichtigen das
Geschehen in der Vergangenheit besser.

Warum werden beim Direct Mapped Cache die niederwertigen Bits zur Adressierung
an den Hauptspeicher verwendet?

Nenne die in den Folien benannten Schreibzugriffsverfahren.

Write Through (WT)


Write Back (WB)
Write Allocation (WA)

Vorteile Nachteile
WT Konsistenzprobleme in der Entstehung Zeitaufwendig durchs zugreifen auf den
durch aktualisieren verhindert Hauptspeicher
hohe Belastung des Bus
WB / WA Braucht keinen sofortigen Kosistenzprobleme wenn andere
Hauptspeicherzugriff (auer WB bei cache Komponenten auf den Hauptspeicher
miss) zugreifen knnen
Belastung fr Bus kleiner Aufwand
Schnell da kein Wartezyklus vorhanden
Bei WB muss bei cache miss auf den
Hauptspeicher zugegriffen werden

Was ist virtueller Speicher?

Virtueller Speicher: Hauptspeicher aus Anwendersicht

Der virtuelle Speicher schliet die Lcke zwischen den Anforderungen des Anwenders und den
Kapazittsgrenzen. Dem Anwender wird vermittelt, dass solange der Adressraum nicht voll ist, alle
Daten und Programme im Hauptspeicher abgelegt werden knnen. Das heit, dass dieser den
ganzen Hauptspeicher mit den kompletten Adressraum benutzen kann.

Was ist Paging?

Paging: der Inhalt vom virtuellen Speicher wird komplett auf dem Sekundrspeicher abgelegt

Was ist Segmentierung?

Der virtuelle Speicher wird in verschieden groe Segmente unterteilt welche unterschiedliche
Zwecke zugeordnet sind (zB Stack, Programmcode). Das Betriebssystem sorgt dafr, dass die
Segmente im Hauptspeicher liegen und nicht verdrngt werden.

Was sind Multiprozessor/Multicomputer? Welche Typen gibt es?

Multiprozessor: mehrere Prozessoren mit einem Speicher; Kommunikation ber Speicher; evlt.
Performanz-Probleme

Multicomputer: mehrere Rechner ohne gemeinsamen Speicher Jeder Prozessor hat eigenen
Speicher; Nachrichtenaustausch; evtl. hoher Aufwand wegen Nachrichten

Klassifikation nach Flynn:

Single Instruction Stream, Single Data Stream (SISD)


Single Instruction Stream, Multiple Data Stream (SIMD)
Multiple Instruction Stream, Single Data Stream (MISD)
Multiple Instruction Stream, Multiple Data Stream (MIMD)

SISD SIMD MISD MIMD


PCs Vektorprozessor Multiprozessor
Workstations Arrayprozessor Multicores
Multicomputer

Nenne ein Paar Verbindungsstrukturen? Was sind Grad und Durchmesser?


Vollstndiger Verbindungsgraph
Durchmesser: 1
Grad: n-1
zu teuer
Stern
Durchmesser: 2
Grad: n-1
versagt bei groen Datentransfer (Flaschenhalsproblem); Model fr Bus

Ring
n
Durchmesser:
2
Grad: 2
Token Ring (ein Token/Packet kreist und Rechner darf nur Senden wenn er Token
besitzt)

Hypercube
Durchmesser: log 2 n
Grad: log 2 n
keine Wartezeiten

Durchmesser: die maximale Lnge des krzesten Pfades

Grad: # der Kanten an einem Knoten

Was ist ein Code? Was sind die Distanz eines Codes?

Binrer Code: Abbildung des Alphabets auf eine Menge von Bitfolgen

Hamming Distanz zwischen zwei Wrtern: # Stellen an denen sich x und y unterscheiden

Hamming Distanz zwischen zwei Codes: kleinste Hamming Distanz zwischen zwei Codewrtern

zB:
Fehler erkennender Code: d hamming (c )k +1
Fehler korrigierende Code: d hamming (c )2k +1

Was ist ein Parity-Check?

Die Parity-berprfung ist ein fehlererkennender Code welcher bestanden ist, falls die Anzahl der
auf 1 gesetzten Bits gerade ist. Dabei werden Parity Bits verwendet um die Codelnger zu erhhen,
sodass der Code den Test besteht.

Was ist der Hamming-Code?

Der Hamming-Code ist ein 1-fehlererkennender Code. Hierbei wird der Code zuerst um r Bitstellen
erweitert. Die Bitstellen sind 20 , 21 , ... ,2r wobei nur bis 2 r1 zur berprfung benutzt werden.

Was ist IEEE 754?

Das ist ein Standard fr normalisierte Gleitkommazahlen ( 1Mantisse<2 ). Es gibt zwei


Genauigkeiten: einfach (32 Bit) und doppelt (64 Bit).

Der IEEE 754 Standard hat folgende Eigenschaften:


Darstellung normalisierter Zahlen sind eindeutig
Zahlen sind dichter aneinander desto nher die bei 0 sind
Assoziativ- und Distributivgesetz gelten nicht (Zwischenergebnisse nicht darstellbar)

Was ist eine denormalisierte Zahl?

Eine Zahl die kleiner ist als die kleinste normalisierte Zahl.

Was ist ein Implikant, was ein Primimplikant?

Implikant:
ein Teilwrfel mit nur markierten Knoten

Primimplikant: Terme einer Disjunktion von Konjunktionstermen die nicht mehr verkrzt werden
knnen; krzesten Konjunktionsterme
ein maximaler Teilwrfel
Erlutere den Algorithmus von Quine-McCluskey.

Programm: http://www.dbhunter.de/php/include.php?path=content/content.php&contentid=94
Applet: http://www-ihs.theoinf.tu-ilmenau.de/~sane/projekte/qmc/embed_qmc.html

- Wie lst Du ein Matrix-berdeckungsproblem?

- Besteht die zugehrige Funktion zu einem reduzierten OBDD ausschlielich aus


Primimplikanten?