Grundlagen Der Rechnerarchitektur at Bergische Universität Wuppertal | Flashcards & Summaries

Select your language

Suggested languages for you:
Log In Start studying!

Lernmaterialien für Grundlagen der Rechnerarchitektur an der Bergische Universität Wuppertal

Greife auf kostenlose Karteikarten, Zusammenfassungen, Übungsaufgaben und Altklausuren für deinen Grundlagen der Rechnerarchitektur Kurs an der Bergische Universität Wuppertal zu.

TESTE DEIN WISSEN

Was ist die Von-Neumann-Architektur?

Lösung anzeigen
TESTE DEIN WISSEN

Referenzmodell für Computer, wonach ein gemeinsamer Speicher sowohl Computerprogrammbefehle als auch Daten hält.

Lösung ausblenden
TESTE DEIN WISSEN

Was sind Structural Hazards, Data hazards und Control Hazards?

Lösung anzeigen
TESTE DEIN WISSEN

Risiken für Stalling (Unterbrechung der weiteren Pipelinefüllung))


Structural hazard

HW kann eine bestimmte Aufeinanderfolge von
Instruktionen nicht ausführen

wenn 2 oder mehr Instruktionen auf eine Hardwareeinheit zugreifen
Bsp. Ein Speicherblock wird von 2 fetch gelesen


Data hazards 

Operand(en) sind Ergebnisse vorheriger Schritte, die
noch nicht die Pipeline verlassen haben

Ergebnis aus vorheriger Berechnung steht noch nicht zur Verfügung
R1 = R2 + R3
R4 = R1 + R5


Control hazards 

Zwischen Einlesen (fetch) der Instruktion und Änderung des Kontrollflusses (branch) entsteht Verzögerung

Änderung der Kontrollflusses. Solange Sprungzielunklar ist, gibt es 2 mögliche Kontrollflüsse. Es ist unklar, wo das Programm fortsetzen muss.

Lösung ausblenden
TESTE DEIN WISSEN

Was ist ein Fork() Aufruf?

Lösung anzeigen
TESTE DEIN WISSEN

Systemaufruf, anhand dessen der aufrufende Prozess (Elternprozess) eine Kopie von sich selbst erzeugt, einen sog. Kindprozess. Der Kindprozess übernimmt dabei die Daten, den Code, den Befehlszähler und die Dateideskriptoren vom Elternprozess und erhält vom Kernel eine eigene Prozessnummer. 

Kindprozess-Verwaltung als eigenständige Instanz des Programms und Ausführung unabhängig vom Elternprozess.

Lösung ausblenden
TESTE DEIN WISSEN

Leistungssteigerung von CPU und Speicher klafft auseinander, das führt zu hohem Energiebedarf und hohen Ausgaben für den Speicher. Was kann man dagegen tun?

Lösung anzeigen
TESTE DEIN WISSEN

– Verwende relativ langsamen und preiswerten Hauptspeicher
– Ergänze diesen um schnelle Zwischenspeicher (Cache)

– Kann Daten aus dem Hauptspeicher nachladen, während Prozessor arbeitet

Lösung ausblenden
TESTE DEIN WISSEN

Beschreiben Sie das Prinzip einer Befehls-Pipeline.

Lösung anzeigen
TESTE DEIN WISSEN

Eine Befehls-Pipeline dient zur Paralleliesierung einzelner
Teilaufgaben mehrerer Befehle

Lösung ausblenden
TESTE DEIN WISSEN

Erläutern Sie die Begriffe Stalling, Bubble und (Pipeline-)Flush.

Lösung anzeigen
TESTE DEIN WISSEN

Im Falle eines der vorher genannten Konflikte (ressourcen-, Daten- oder Kontrollflusskonflikt) reagiert die CPU mit „Stalling“ (Unterbrechung der weiteren Pipelinefüllung).


Durch das warten der Pipeline entstehen Lücken (auch „Bubbles“) in der Pipeline. Dies führt dazu, dass die Pipeline nicht optimal ausgelastet ist und der Durchsatz sinkt.


Unter bestimmten Umständen muss ein „Flush“ (die komplette Leerung der Pipeline) durchgeführt werden. Z.B bei einem falsch vorhergesagten Sprung.

Lösung ausblenden
TESTE DEIN WISSEN

Welche Vor- und Nachteile haben die Varianten Direct Mapping und Fully associative in Bezug auf Nutzung des Cachespeichers
und Hardwareaufwand?

Lösung anzeigen
TESTE DEIN WISSEN

Fully associative


Vorteil:

+ Cache-Speicher wird optimal genutzt


Nachteil:

- Overhead (zuviel benötigte Arbeit)
- Übersetzungsaufwand durch parallele Abarbeitung
Es muss jeder Cache-Block überprüft
werden (belegt / frei)
→ Hardwareaufwand, da es nur in
angemessener Zeit parallel funktioniert



Direct-Mapping


Vorteil:

+ Sehr schnell, da es nur eine feste Zuordnung gibt
→ Man weis sofort, wo geladen
werden muss


Nachteil:

- Leere Cache-Blöcke können nicht genutzt werden, wenn
Hauptspeicherdaten nicht genau mit den Blöcken verbunden sind

Dadurch, dass jedem Memoryblock nur ein Cache-Block zugewiesen ist, können Daten teilweise nicht geladen
werden obwohl Cache-Speicher frei ist

Lösung ausblenden
TESTE DEIN WISSEN

In welcher Weise werden Harvard und Princeton Architekturen in modernen Rechnerarchitekturen mit mehrstufigen Caches realisiert?

Lösung anzeigen
TESTE DEIN WISSEN

Harvard:
→ Getrennter L1-Cache
→ gemeinsames Laden von Daten und Instruktionen


Princeton (von Neumann):
→ Gemeinsame L2-, L3-Caches
→  Gemeinsamer Speicher

Lösung ausblenden
TESTE DEIN WISSEN

Was versteht man unter Wait States?

Lösung anzeigen
TESTE DEIN WISSEN

Wartezyklus, angegeben in Taktzyklen, der
eingelegt werden muss, damit der langsamere Speicher die
angefragten Daten am Ausgang anliegen hat.

Der Begriff taucht immer dann auf, wenn eine schnellere
Komponente auf eine langsamere zugreifen (warten) muss

Lösung ausblenden
TESTE DEIN WISSEN

Ist die Implementierung von fork() mittels Copy-on-Write auf Systemen ohne MMU (z.B. in Embedded Systems) sinnvoll? Warum (bzw. warum nicht)?

Lösung anzeigen
TESTE DEIN WISSEN

Ohne MMU bzw. virtuellem Adressraum:
Es muss zwingend der physikalische Adressraum kopiert werden, falls keine MMU vorhanden ist.

Lösung ausblenden
TESTE DEIN WISSEN

Was ist ein linearer Speicher?

Lösung anzeigen
TESTE DEIN WISSEN

Speicher ist in gleichgroße Blöcke und Zellen
unterteilt und fortlaufend durchnummeriert (insb. Wichtig für
Adressierung und Programmausführung)

Lösung ausblenden
TESTE DEIN WISSEN

Welche Gründe haben bereits seit ca. 1970 zu einer Abkehr vom CISC-Design geführt?

Lösung anzeigen
TESTE DEIN WISSEN

– Speicher wurde schneller (Caches)
– Mikroprogramme wurden sehr komplex / aufwendig
– Komplexe Befehle wurden nur selten genutzt

Lösung ausblenden
  • 265885 Karteikarten
  • 2938 Studierende
  • 122 Lernmaterialien

Beispielhafte Karteikarten für deinen Grundlagen der Rechnerarchitektur Kurs an der Bergische Universität Wuppertal - von Kommilitonen auf StudySmarter erstellt!

Q:

Was ist die Von-Neumann-Architektur?

A:

Referenzmodell für Computer, wonach ein gemeinsamer Speicher sowohl Computerprogrammbefehle als auch Daten hält.

Q:

Was sind Structural Hazards, Data hazards und Control Hazards?

A:

Risiken für Stalling (Unterbrechung der weiteren Pipelinefüllung))


Structural hazard

HW kann eine bestimmte Aufeinanderfolge von
Instruktionen nicht ausführen

wenn 2 oder mehr Instruktionen auf eine Hardwareeinheit zugreifen
Bsp. Ein Speicherblock wird von 2 fetch gelesen


Data hazards 

Operand(en) sind Ergebnisse vorheriger Schritte, die
noch nicht die Pipeline verlassen haben

Ergebnis aus vorheriger Berechnung steht noch nicht zur Verfügung
R1 = R2 + R3
R4 = R1 + R5


Control hazards 

Zwischen Einlesen (fetch) der Instruktion und Änderung des Kontrollflusses (branch) entsteht Verzögerung

Änderung der Kontrollflusses. Solange Sprungzielunklar ist, gibt es 2 mögliche Kontrollflüsse. Es ist unklar, wo das Programm fortsetzen muss.

Q:

Was ist ein Fork() Aufruf?

A:

Systemaufruf, anhand dessen der aufrufende Prozess (Elternprozess) eine Kopie von sich selbst erzeugt, einen sog. Kindprozess. Der Kindprozess übernimmt dabei die Daten, den Code, den Befehlszähler und die Dateideskriptoren vom Elternprozess und erhält vom Kernel eine eigene Prozessnummer. 

Kindprozess-Verwaltung als eigenständige Instanz des Programms und Ausführung unabhängig vom Elternprozess.

Q:

Leistungssteigerung von CPU und Speicher klafft auseinander, das führt zu hohem Energiebedarf und hohen Ausgaben für den Speicher. Was kann man dagegen tun?

A:

– Verwende relativ langsamen und preiswerten Hauptspeicher
– Ergänze diesen um schnelle Zwischenspeicher (Cache)

– Kann Daten aus dem Hauptspeicher nachladen, während Prozessor arbeitet

Q:

Beschreiben Sie das Prinzip einer Befehls-Pipeline.

A:

Eine Befehls-Pipeline dient zur Paralleliesierung einzelner
Teilaufgaben mehrerer Befehle

Mehr Karteikarten anzeigen
Q:

Erläutern Sie die Begriffe Stalling, Bubble und (Pipeline-)Flush.

A:

Im Falle eines der vorher genannten Konflikte (ressourcen-, Daten- oder Kontrollflusskonflikt) reagiert die CPU mit „Stalling“ (Unterbrechung der weiteren Pipelinefüllung).


Durch das warten der Pipeline entstehen Lücken (auch „Bubbles“) in der Pipeline. Dies führt dazu, dass die Pipeline nicht optimal ausgelastet ist und der Durchsatz sinkt.


Unter bestimmten Umständen muss ein „Flush“ (die komplette Leerung der Pipeline) durchgeführt werden. Z.B bei einem falsch vorhergesagten Sprung.

Q:

Welche Vor- und Nachteile haben die Varianten Direct Mapping und Fully associative in Bezug auf Nutzung des Cachespeichers
und Hardwareaufwand?

A:

Fully associative


Vorteil:

+ Cache-Speicher wird optimal genutzt


Nachteil:

- Overhead (zuviel benötigte Arbeit)
- Übersetzungsaufwand durch parallele Abarbeitung
Es muss jeder Cache-Block überprüft
werden (belegt / frei)
→ Hardwareaufwand, da es nur in
angemessener Zeit parallel funktioniert



Direct-Mapping


Vorteil:

+ Sehr schnell, da es nur eine feste Zuordnung gibt
→ Man weis sofort, wo geladen
werden muss


Nachteil:

- Leere Cache-Blöcke können nicht genutzt werden, wenn
Hauptspeicherdaten nicht genau mit den Blöcken verbunden sind

Dadurch, dass jedem Memoryblock nur ein Cache-Block zugewiesen ist, können Daten teilweise nicht geladen
werden obwohl Cache-Speicher frei ist

Q:

In welcher Weise werden Harvard und Princeton Architekturen in modernen Rechnerarchitekturen mit mehrstufigen Caches realisiert?

A:

Harvard:
→ Getrennter L1-Cache
→ gemeinsames Laden von Daten und Instruktionen


Princeton (von Neumann):
→ Gemeinsame L2-, L3-Caches
→  Gemeinsamer Speicher

Q:

Was versteht man unter Wait States?

A:

Wartezyklus, angegeben in Taktzyklen, der
eingelegt werden muss, damit der langsamere Speicher die
angefragten Daten am Ausgang anliegen hat.

Der Begriff taucht immer dann auf, wenn eine schnellere
Komponente auf eine langsamere zugreifen (warten) muss

Q:

Ist die Implementierung von fork() mittels Copy-on-Write auf Systemen ohne MMU (z.B. in Embedded Systems) sinnvoll? Warum (bzw. warum nicht)?

A:

Ohne MMU bzw. virtuellem Adressraum:
Es muss zwingend der physikalische Adressraum kopiert werden, falls keine MMU vorhanden ist.

Q:

Was ist ein linearer Speicher?

A:

Speicher ist in gleichgroße Blöcke und Zellen
unterteilt und fortlaufend durchnummeriert (insb. Wichtig für
Adressierung und Programmausführung)

Q:

Welche Gründe haben bereits seit ca. 1970 zu einer Abkehr vom CISC-Design geführt?

A:

– Speicher wurde schneller (Caches)
– Mikroprogramme wurden sehr komplex / aufwendig
– Komplexe Befehle wurden nur selten genutzt

Grundlagen der Rechnerarchitektur

Erstelle und finde Lernmaterialien auf StudySmarter.

Greife kostenlos auf tausende geteilte Karteikarten, Zusammenfassungen, Altklausuren und mehr zu.

Jetzt loslegen

Das sind die beliebtesten StudySmarter Kurse für deinen Studiengang Grundlagen der Rechnerarchitektur an der Bergische Universität Wuppertal

Für deinen Studiengang Grundlagen der Rechnerarchitektur an der Bergische Universität Wuppertal gibt es bereits viele Kurse, die von deinen Kommilitonen auf StudySmarter erstellt wurden. Karteikarten, Zusammenfassungen, Altklausuren, Übungsaufgaben und mehr warten auf dich!

Das sind die beliebtesten Grundlagen der Rechnerarchitektur Kurse im gesamten StudySmarter Universum

Rechnerarchitektur

Hochschule Karlsruhe

Zum Kurs
Rechnerarchitektur

Hochschule Düsseldorf

Zum Kurs
Rechnerarchitektur

Duale Hochschule Baden-Württemberg

Zum Kurs

Die all-in-one Lernapp für Studierende

Greife auf Millionen geteilter Lernmaterialien der StudySmarter Community zu
Kostenlos anmelden Grundlagen der Rechnerarchitektur
Erstelle Karteikarten und Zusammenfassungen mit den StudySmarter Tools
Kostenlos loslegen Grundlagen der Rechnerarchitektur