Vorlesung: Technische Informatik 3



Ähnliche Dokumente
Vorlesung: Rechnerstrukturen, Teil 2 (Modul IP7)

Tutorium Rechnerorganisation

Halbleiterspeicher. Halbleiterspeicher Michael Kuhfahl 1

Elektrische Logigsystem mit Rückführung

Asynchrone Schaltungen

Windows Server 2008 (R2): Anwendungsplattform

1 Aufgaben zu Wie funktioniert ein Computer?

Anleitung zur Nutzung des SharePort Utility

Teil VIII Von Neumann Rechner 1

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Mikrocontroller Grundlagen. Markus Koch April 2011

RO-Tutorien 3 / 6 / 12

Professionelle Seminare im Bereich MS-Office

mywms Vorlage Seite 1/5 mywms Datenhaltung von Haug Bürger

Zwischenablage (Bilder, Texte,...)

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Digital Design Entwicklung der DRAMs. Richard Roth / FB Informatik und Mathematik Speicher 1

Computeria Solothurn

4D Server v12 64-bit Version BETA VERSION

Anleitung über den Umgang mit Schildern

Anbindung des eibport an das Internet

Erweiterung von Adressraum und Bit Tiefe

13 Programmierbare Speicher- und Logikbausteine

Besprechung des 7. Übungsblattes Speicheraufbau Speichertypen DRAM Speicherbelegung

Staatlich geprüfter EDV-Führerschein

SSDs und Flash Memory. Matthias Müller 16.Juni 2010 Institut für Verteilte Systeme

Zeichen bei Zahlen entschlüsseln

2.2 Rechnerorganisation: Aufbau und Funktionsweise

1CONFIGURATION MANAGEMENT

Wie man Registrationen und Styles von Style/Registration Floppy Disketten auf die TYROS-Festplatte kopieren kann.

Guide DynDNS und Portforwarding

Projekt 2HEA 2005/06 Formelzettel Elektrotechnik

Computer: PC. Informationstechnik für Luft-und Raumfahrt Aerospace Information Technology

Lichtbrechung an Linsen

Einführung in die Systemprogrammierung

Windows 7 ist da! Der Nachfolger von Vista kommt noch vor dem Sommer

Step by Step Webserver unter Windows Server von Christian Bartl

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

icloud nicht neu, aber doch irgendwie anders

Die Mikroprogrammebene eines Rechners

C:\WINNT\System32 ist der Pfad der zur Datei calc.exe führt. Diese Datei enthält das Rechner - Programm. Klicke jetzt auf Abbrechen.

Viele Bilder auf der FA-Homepage

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Anwenderdokumentation AccountPlus GWUPSTAT.EXE

Persönliches Adressbuch

OPERATIONEN AUF EINER DATENBANK

Zugriff auf Daten der Wago über eine Webseite

Einteilung der Kippschaltungen (Schaltwerke) (=Flipflops)

9 Auto. Rund um das Auto. Welche Wörter zum Thema Auto kennst du? Welches Wort passt? Lies die Definitionen und ordne zu.

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

Einfügen von Bildern innerhalb eines Beitrages

Statuten in leichter Sprache

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

10.1 Auflösung, Drucken und Scannen

Powermanager Server- Client- Installation

Eine Anleitung, wie Sie Mozilla Thunderbird 2 installieren und konfigurieren können. Installation Erstkonfiguration... 4

Systeme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss

ABB i-bus KNX. Software-Information. Melde- und Bedientableau. Typ: MT 701.2

Cisco AnyConnect VPN Client - Anleitung für Windows7

Formular»Fragenkatalog BIM-Server«

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Rechnerstrukturen. 5. Speicher. Inhalt. Vorlesung Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1.

Benutzerhandbuch bintec R4100 / R4300 Configuration Management. Copyright 17. Juli 2006 Funkwerk Enterprise Communications GmbH Version 1.

Erstellen einer in OWA (Outlook Web App)

VIDA ADMIN KURZANLEITUNG

Rechnerorganisation. 1. Juni 201 KC Posch

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

AN025. Application Note 025 zu MODULAR-4 (ML3 und ML5) Messen der CPU-Auslastung im Echtzeitbetrieb

Konzepte der Informatik

Übungen zu C++ Kapitel 1

Empfehlungen zur Nutzung der CD zum Buch: Klee & Wiemann: Beweglichkeit und Dehnfähigkeit. Schorndorf: Hofmann,

Microsoft PowerPoint 2013 Folien gemeinsam nutzen

CdsComXL. Excel add-in für Bearbeitung und Auswertung der CDS-daten. ComXL-020/D, Spur Spur Spur Spur

mit SD-Karte SD-Karte Inhalt

Intranet Moodle

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager

.NET Code schützen. Projekt.NET. Version 1.0

Versuch 3: Sequenzielle Logik

Ein Scan basierter Seitenangriff auf DES

Softwarelösungen: Versuch 4

Kurzübersicht. Version 9.0. Moving expertise - not people

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Wenn keine Verbindung zwischen den Computern besteht, dann bist du offline.

Einrichten des Elektronischen Postfachs

Lizenz Verwaltung. Adami Vista CRM

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Tapps mit XP-Mode unter Windows 7 64 bit (V2.0)

Lizenz-Server überwachen

Mehrere PDF-Dokumente zu einem zusammenfügen

Konvertieren von Settingsdateien

Einrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Excel Pivot-Tabellen 2010 effektiv

Transkript:

Rechnerarchitektur und Betriebssysteme zhang@informatik.uni-hamburg.de Universität Hamburg AB Technische Aspekte Multimodaler Systeme zhang@informatik.uni-hamburg.de

Inhaltsverzeichnis 4. Computerarchitektur........................235 Pipeline-Hazards..........................235 Pipeline Zusammenfassung......................251 5. Die Speicherhierarchie.......................257 SRAM-DRAM............................260 zhang@informatik.uni-hamburg.de

Abschnitt: Pipeline-Hazards Datenabhängigkeiten System Jede Operation hängt vom Erebnis der vorhergehenden ab Seite 235

Abschnitt: Pipeline-Hazards Daten Hazards Resultat-Feedback kommt zu spät für die nächste Operation Pipelining ändert Verhalten des gesamten Systems Seite 236

Abschnitt: Pipeline-Hazards Datenabhängigkeiten: 3 Nops (No Operation) Seite 237

Abschnitt: Pipeline-Hazards Datenabhängigkeiten: 2 Nops Seite 238

Abschnitt: Pipeline-Hazards Datenabhängigkeiten: 1 Nops Seite 239

Abschnitt: Pipeline-Hazards Datenabhängigkeiten: No Nop Seite 240

Abschnitt: Pipeline-Hazards Stalling für Datenabhängigkeiten Wenn die Anweisung zu dicht auf eine andere folgt, die in das von der aktuellen Anweisung benutzte Register schreibt, dann verzögere Anweisung Halte Anweisung im Decode-Status Füge nop dynamisch in Execute Stage ein Seite 241

Abschnitt: Pipeline-Hazards Feststellen der Stall Bedingung Seite 242

Abschnitt: Pipeline-Hazards Stalling X3 Seite 243

Abschnitt: Pipeline-Hazards Was passiert beim Stalling? Verzögerte Instruktion wird im Decode -Status gehalten Folgende Anweisung verbleibt im Fetch Status (Befehl-holen-Status) Bubbles werden in Execute Stage eingefügt Wie dynamisch generierte nops Bewegen sich durch spätere Stufen (stages) Seite 244

Abschnitt: Pipeline-Hazards Data Forwarding Naive Pipeline Register wird erst nach Vollendung der Write-back Phase (stage) geschrieben Source-Operanden werden aus der Registerbank während der Dekodierungsphase gelesen Müssen zu Beginn der Phase in der Registerbank sein Beobachtung Ergebnis wird während der Execute Stage oder der Memory Stage generiert Trick Leite den Wert direkt von der generierenden Anweisung in die Dekodierungsphase Muss zum Ende der Dekodierungsphase verfügbar sein Seite 245

Abschnitt: Pipeline-Hazards Beispiel für Data Forwarding irmovl in der Write-back Phase Seite 246

Abschnitt: Pipeline-Hazards Zielwert im W Pipeline Register Weiterleiten als valb in die Dekodierungsphase Seite 247

Abschnitt: Pipeline-Hazards Beispiel für falsche Sprungvorhersage Sollte nur die ersten 8 Anweisungen ausführen Seite 248

Abschnitt: Pipeline-Hazards Trace einer falschen Sprungvorhersage Fälschliche Ausführung zweier Anweisungen am Sprungziel Seite 249

Abschnitt: Pipeline-Hazards Behandlung einer falschen Sprungvorhersage (Branch Misprediction) Sprung wird vorhergesagt Holt die nächsten 2 Anweisungen am Sprungziel Abbruch bei falscher Vorhersage Erkenne den nicht ausgeführten Sprung in der Execute -Phase Im folgenden Zyklus, ersetze die in der Execute -Phase befindliche Anweisung und fülle Dekodierungsphase mit Bubbles auf Es sind noch keine Seiteneffekte aufgetreten Seite 250

Abschnitt: Pipeline Zusammenfassung Pipeline Zusammenfassung Data Hazards Meist durch Forwarding umgangen Kein Performance Verlust Load/Use Hazards erfordern Verzögerung um einen Takt Control Hazards Breche Anweisungen ab, wenn ein falsch vorghergesagter Sprung entdeckt wird Zwei Taktzyklen verschwendet Verzögere Fetch Stage während ret durch die Pipeline wandert Drei Taktzyklen verschwendet Seite 251

Abschnitt: Pipeline Zusammenfassung Control Kombinationen Müssen sorgfltig analysiert werden Erste Version hat einen schwer erkennbaren Bug Trat nur bei unüblicher Kombination von Befehlen auf Seite 252

Abschnitt: Pipeline Zusammenfassung Ausnahmen Bedingungen, unter denen Pipeline normalen Ablauf nicht fortsetzen kann Ursachen Halt Anweisung Ungültige Adresse für die Anweisung oder Daten Ungültige Anweisung Pipeline Kontrollfehler Erforderliches Vorgehen Einige Anweisungen vollenden Entweder aktuelle oder vorherige (hängt von Ausnahmetyp ab) Andere verwerfen Exception handler aufrufen Wie unerwarteter Prozeduraufruf Seite 253

Abschnitt: Pipeline Zusammenfassung PentiumPro Operation Übersetzt Anweisungen dynamisch in µops 118 Bits breit Enthält Operation, zwei Quellen und Ziel Führt µops mit Out of Order Maschine aus µop ausgeführt wenn Operanden verfügbar sind Funktionelle Einheit verfügbar ist Ausführung wird durch Reservation Stations kontrolliert Beobachtet die Datenabhängigkeiten zwischen µops Teilt Ressourcen zu Seite 254

Abschnitt: Pipeline Zusammenfassung Pentium 4 Eigenschaften Trace Cache Ersetzt die traditionelle Anweisungscache Nimmt Anweisungen in dekodierter Form in die Cache auf Reduziert die benötigte Rate für den Anweisungsdecoder Double pumped ALUs (2 Operationen pro Taktzyklus) Simple Anweisungen (hinzufügen) Sehr große Pipeline 20+Zyklus Branch Penalty ermöglicht sehr hohe Taktfrequenzen Langsamer als Pentium III mit gleicher Taktfrequenz Seite 255

Abschnitt: Pipeline Zusammenfassung Prozessor Zusammenfassung Designtechnik Benutzung eines einheitlichen Frameworks für alle Anweisungen Ermöglicht den Anweisungen, die Hardwareressourcen untereinander zu teilen Kontrolllogik steuert Hardwareressourcen Operation Zustand wird in Speichern und Registern gehalten Berechnung wird von kombinatorischer Logik durchgeführt Takten der Register/Speicher kontrolliert das allgemeine Verhalten Leistungssteigerung Pipelining erhöht den Datendurchsatz und verbessert die Ressourcennutzung Muss sichergehen, dass ISA Verhalten beibehalten wird Seite 256

Kapitel: Die Speicherhierarchie Die Speicherhierarchie Themen Speichertechnologien und Trends Lokalität der Referenzen Caching in der Speicherhierarchie Seite 257

Kapitel: Die Speicherhierarchie Random-Access Memory (RAM) Hauptmerkmale RAM ist als Chip gepackt Grundspeichereinheit ist eine Zelle (ein Bit pro Zelle) Viele RAM Chips bilden einen Speicher Statischer RAM (SRAM) Jede Zelle speichert Bits mit einer 6-Transistor Schaltung Behält Wert unbegrenzt solange er mit Energie versorgt wird Relativ unanfällig für Störungen wie elektrische Brummspannungen Schneller und teurer als DRAM Dynamischer RAM (DRAM) Jede Zelle speichert Bits mit einem Kondensator einem Transistor Der Wert muss alle 10-100 ms aufgefrischt werden Seite 258

Kapitel: Die Speicherhierarchie Anfällig für Störungen Langsamer und billiger als SRAM Seite 259

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM SRAM gegen DRAM Zusammenfassung Seite 260

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Konventionelle DRAM Organisation d x w DRAM: dw Summe aller Bits organisiert als d Superzellen mit w Bits Seite 261

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Lesen der DRAM Superzelle (2,1) Schritt 1(a): Row Access Strobe (RAS) wählt Zeile 2. Schritt 1(b): Zeile 2 wird aus dem DRAM Array in den Zeilenpuffer ( Row Buffer ) kopiert. Seite 262

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Lesen der DRAM Superzelle (2,1) Schritt 2(a): Column Access Strobe (CAS) wählt Spalte 1. Schritt 2(b): Superzelle (2,1) wird aus dem Buffer ausgelesen und auf die Datenleitungen gelegt. Von dort gelangen die Daten zurück in die CPU Seite 263

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Erweiterte DRAMS Alle erweiterten DRAMS sind um den konventionellen DRAM Kern herum aufgebaut Fast Page Mode DRAM (FPM DRAM) Greift auf den Inhalt einer Speicherzeile zu mit [RAS, CAS, CAS, CAS, CAS] anstatt mit [(RAS, CAS), (RAS, CAS), (RAS, CAS), (RAS, CAS)]. Extended Data Out DRAM (EDO DRAM) Erweiterter FPM DRAM mit schneller aufeinanderfolgenden CAS Signalen Synchroner (taktgesteuerter) DRAM (SDRAM) Betrieben mit steigender Taktflanke statt mit asynchronen Kontrollsignalen Double Data-Rate Synchronous DRAM (DDR SDRAM) Seite 264

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM SDRAM-Erweiterung die beide Taktflanken als Kontrollsignal benutzt Video RAM (VRAM) Wie FPM DRAM, aber Output wird durch Verschieben des Row Buffer hergestellt Zwei Ports (erlauben gleichzeitiges Lesen und Schreiben) Seite 265

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Nichtflüchtige Speicher DRAM und SRAM sind flüchtige Speicher. Informationen gehen beim Abschalten verloren Nichtflüchtige Speicher speichern Werte selbst wenn sie abgeschaltet sind Allgemeiner Name ist Read-Only-Memory (ROM) Irreführend, da einige ROMs gelesen und verändert werden können Arten von ROMs Programmmierbarer ROM (PROM) Erasable Programmable ROM (EPROM) (Löschbarer, programmierbarer ROM) Electrically Eraseable PROM (EEPROM) (Elektrisch löschbarer PROM) Flash Speicher Seite 266

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Firmware Programm wird in einem ROM gespeichert Boot Zeitcode, BIOS (basic input/output system) Grafikkarten, Festplattencontroller Seite 267

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Typische Busstrukturen zur Verbindung von CPU und Speicher Ein Bus ist eine Sammlung paralleler Drähte die Adressen, Daten und Kontrollsignale übertragen. Busse werden üblicherweise von mehreren Geräten genutzt. Seite 268

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Speicherlesevorgang (1) CPU legt Adresse A auf den Speicherbus. Seite 269

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Speicherlesevorgang (2) Hauptspeicher liest A vom Speicherbus, ruft das Wort x ab und legt es auf den Bus. Seite 270

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Speicherlesevorgang (3) CPU liest Wort x vom Bus und kopiert es ins Register %eax. Seite 271

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Speicherschreibvorgang (1) CPU legt die Adresse A auf den Bus. Der Hauptspeicher liest sie und wartet auf die Ankunft des entsprechenden Datenworts. Seite 272

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Speicherschreibvorgang (2) CPU legt Datenwort y auf den Bus. Seite 273

Kapitel: Die Speicherhierarchie Abschnitt: SRAM-DRAM Speicherschreibvorgang (3) Hauptspeicher liest Datenwort y vom Bus und speichert es unter Adresse A ab. Seite 274