Rechnerarchitektur. Prof. Dr. Rolf Drechsler Institut für Informatik Universität Bremen



Ähnliche Dokumente
Teil VIII Von Neumann Rechner 1

Johann Wolfgang Goethe-Universität

1. Übung - Einführung/Rechnerarchitektur

Brückenkurs / Computer

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)

Brückenkurs / Computer

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Im Original veränderbare Word-Dateien

Mikroprozessor als universeller digitaler Baustein

L3. Datenmanipulation

1 Aufgaben zu Wie funktioniert ein Computer?

Rechner Architektur. Martin Gülck

Proseminar Rechnerarchitekturen. Parallelcomputer: Multiprozessorsysteme

Kap.2 Befehlsschnittstelle. Prozessoren, externe Sicht

Die Mikroprogrammebene eines Rechners

Das Rechnermodell von John von Neumann

2004, Thomas Barmetler Automatisierungstechnik - Einstieg. Das EVA-Prinzip

Daten verarbeiten. Binärzahlen

2.2 Rechnerorganisation: Aufbau und Funktionsweise

Mikrocontroller Grundlagen. Markus Koch April 2011

C. BABBAGE ( ): Programmgesteuerter (mechanischer) Rechner

TO-220 TO-202 TO-92 TO-18. Transistoren mit verschiedenen Gehäusen

IT für Führungskräfte. Zentraleinheiten Gruppe 2 - CPU 1

FHZ. K01 Geschichte des Computers. Lernziele. Hochschule Technik+Architektur Luzern. Inhalt

N Bit binäre Zahlen (signed)

SJ OFFICE - Update 3.0

Mikrocomputertechnik. Adressierungsarten

Grundbegriffe der Informatik

Updatehinweise für die Version forma 5.5.5

Zahlensysteme: Oktal- und Hexadezimalsystem

Computerarithmetik ( )

Angewandte Informatik

Konzepte der Informatik

Nutzung von GiS BasePac 8 im Netzwerk

Tutorium Rechnerorganisation

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC

Computeria Urdorf. Treff vom 16. Januar Was ist ein Computer?

Computer-Architektur Ein Überblick

Kap 4. 4 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.

Übungen zur Softwaretechnik

1 Mathematische Grundlagen

Facharbeit Informatik. Thema:

Technische Informatik 2 Adressierungsarten

Technische Informatik. Der VON NEUMANN Computer

Grundbegriffe der Informatik

Basisanforderungen: EVA-Prinzips. Erweiterte Anforderungen: wirtschaftlichen und privaten Alltag.

Wie arbeiten Computer?

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = Euro ergeben.

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

EasyWk DAS Schwimmwettkampfprogramm

SCHRITT 1: Öffnen des Bildes und Auswahl der Option»Drucken«im Menü»Datei«...2. SCHRITT 2: Angeben des Papierformat im Dialog»Drucklayout«...

Inbetriebnahme Profinet mit Engineer. Inhaltsverzeichnis. Verwendete Komponenten im Beispiel:

Historical Viewer. zu ETC5000 Benutzerhandbuch 312/15

ISA Einrichtung einer DFUE VErbindung - von Marc Grote

Fax einrichten auf Windows XP-PC

RFID Lösungen Fragebogen über Ihr RFID Projekt

Theoretische Informatik SS 04 Übung 1

Dienstleistungen Externer Datenschutz. Beschreibung der Leistungen, die von strauss esolutions erbracht werden

Technische Informatik - Eine Einführung

PC-Umzug: So ziehen Sie Ihre Daten von Windows XP nach Windows 8 um

Anleitung zur Nutzung des SharePort Utility

Grundlagen der Rechnerarchitektur

AZK 1- Freistil. Der Dialog "Arbeitszeitkonten" Grundsätzliches zum Dialog "Arbeitszeitkonten"

2. Negative Dualzahlen darstellen

Inhatsverzeichnis. 1.Einleitung. Lehrgang: NMM Informatik: Der Computer. Lehrer: Spahr Marcel. Name: E L E M E N T E D E S C O M P U T E R S Datum:

Wie Sie mit Mastern arbeiten

Kurz-Anleitung zum Erstellen eines HotPot-Test

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

- Strukturentwurf elementarer Rechenwerke - Grund-Flipflop (RS-Flipflop) - Register, Schieberegister, Zähler

1 Informationelle Systeme begriffliche Abgrenzung

Technische Informatik

Computergruppe Heimerdingen Basiskurs. Karlheinz Wanja & Richard Zeitler

Anlegen eines virtuellen http Server unter Exchange 2003 mittels HOSTNAME

Erfahrungen mit Hartz IV- Empfängern

Zentrale Installation

K. Hartmann-Consulting. Schulungsunterlage Outlook 2013 Kompakt Teil 1

EOS Utility WLAN Installation

Zeichen bei Zahlen entschlüsseln

Installationsanleitung

Internet online Update (Internet Explorer)

9.0 Komplexe Schaltwerke

Zwischenablage (Bilder, Texte,...)

Einführung in. Logische Schaltungen

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 18

2. Installation unter Windows 8.1 mit Internetexplorer 11.0

Auswahl alter Klausuraufgaben aus einer ähnlichen Vorlesung Maßgeblich für die Prüfung sind die Vorlesungsinhalte!

Neuerungen PRIMUS 2014

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Formular»Fragenkatalog BIM-Server«

Netzwerkeinstellungen unter Mac OS X

Grundlagen der Technischen Informatik. Sequenzielle Netzwerke. Institut für Kommunikationsnetze und Rechnersysteme. Paul J. Kühn, Matthias Meyer

Datenblatt. Text-to-PDF Mailer 1.0 für Tobit David

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP

Whitepaper. Produkt: combit Relationship Manager / address manager. Dateiabgleich im Netzwerk über Offlinedateien

Kapitel 1: Einführung. Was ist Informatik? Begriff und Grundprobleme der Informatik. Abschnitt 1.1 in Küchlin/Weber: Einführung in die Informatik

Daten Sichern mit dem QNAP NetBak Replicator 4.0

Programmiersprachen und Übersetzer

Programmierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4.

Transkript:

Rechnerarchitektur Prof. Dr. Rolf Drechsler Institut für Informatik Universität Bremen

Ansprechpartner und Organisation Rolf Drechsler 3. Flur, Zi. 3510 drechsle@informatik.uni-bremen.de Montag, 15:15 h - 16:45 h: Vorlesung Dienstag, 13:15 h - 14:45 h: Vorlesung/Übung

Vorschlag für Scheinvergabe Übungszettel ca. alle drei Wochen dienen der Selbstkontrolle nicht relevant für Scheinvergabe Schein durch (Fach-)Gespräch in letzter Semesterwoche bzw. nach Vereinbarung Dauer ca. 10-20 Minuten

Literatur Patterson/Hennessy: Computer Organization and Design - The Hardware/Software- Interface, Morgan Kaufmann, 1998 Hennessy/Patterson: Computer Architecture - A Quantitative Approach, Morgan Kaufmann, 1996 Hayes: Computer Architecture and Organization, McGraw-Hill, 1998 Bähring: Mikrorechnersysteme, Springer- Verlag, 1991 Märtin, Rechnerarchitektur, Fachbuchverlag Leibzig, 2001

Motivation (1)

Motivation (2) Erste frei programmierbare Rechner 1934-41 Zuse Z1, Z3 1946 ENIAC Pentium VI

Motivation (3)

Motivation (4) Thomas Watson (IBM): I think there is a world market for maybe five computers. Popular Mechanics: Computers in the future may weigh no more than 1.5 tons. 1943-50

Motivation (5) ENIAC on a chip Laptop = alle Rechner der Welt von 1950

Motivation (6)

Motivation (7) Moore s Law Verdopplung der Transistor-Dichte alle 18 Monate (Gordon Moore, Mitbegründer von Intel, 1965)

Motivation (8) kein Gesetz, sondern Voraussage, was technologisch möglich

Motivation (9) Mars Pathfinder Mission Ariane 5... Pentium Bug

Motivation (10) Pentium Bug Fehler in FP-Unit Imageverlust 475 Millionen $

Motivation (11) Pentium Bug x = 4195835 y = 3145727 z = x - (x/y) y z = 256!!

Motivation (12) Was tun mit all den Transistoren? Architekturkonzepte Wie entwerfen? VLSI CAD

Überblick Einleitung v. Neumann-Modell, Entwurfsprozess Befehlsschnittstelle Mikroarchitektur Speicherarchitektur Ein-/Ausgabe Multiprozessorsysteme,...

Geschichte des Rechners (1) Altertum: griechische Zahnräder, römisches Rechenbrett Rechenmaschine von Schickard Lochkartenmaschine (um die Jahrhundertwende) Differentialanalysator (Bush, 1930)

Geschichte des Rechners (2) Theoretische Abhandlungen: Turing (1936): On Computable Numbers Shannon (1936): Verbindung zwischen symbolischer Logik und elektrischen Schaltungen Binäre Addiermaschine (Stibitz, 1937) Allzweck-Computer (Zuse, 1941)

Geschichte des Rechners (3) Colossus (1943): Knacken von Geheimcodes von Neumann beschreibt wesentliche Elemente eines Computersystems (1945) ENIAC (1946): erster (großer) elektronischer Digitalrechner

Geschichte des Rechners (4) Erfindung des Transistors (1947) durch Bardeen, Shockley und Brattain LEO (1951): erster Rechner für kaufmännische Zwecke Computergestützte Wahlprognose in USA (1952) Erster Magnetspeicher (Forrester, 1953), zuvor Elektronenröhrenspeicher

Geschichte des Rechners (5) IBM 650 (1954): in 15 Jahren 1500mal verkauft Transistoren auf Silizium (Teal, 1954) TRADIC (1955): erster Transistor- Computer der Bell Labs mit 800 Transistoren Integrierte Schaltungen und MOS (metal oxide semiconductors)

Geschichte des Rechners (6) PDP-8 (DEC, 1965): erster Minicomputer mit kommerziellem Erfolg (20.000 Dollar) Intel 4004 (Hoff, 1971): Chip, mit Zentraleinheit als wesentlichen Bestandteil Altair (Roberts, 1974): Bausatz eines Mikrocomputers für 397 Dollar

Geschichte des Rechners (7) BASIC für Altair (Gates, Allen, 1975) PCs für den Massenmarkt (1977), z.b. Apple II, Radio Shack TRS-80, Commodore PET VisiCalc (1979): erste kaufmännische Software für PC IBM PC (1981)

Klassifikation von Rechnern Anforderungen Leistung Fehlersicherheit Programmierfreundlichkeit... Methoden zur Einordnung

Kiviat Graphen (1) Seit 1978 Allgemeines Bewertungsmaß Graphische Darstellung Bewertung des Gesamtsystems Acht messbare Größen aus vier Gruppen

Kiviat Graphen (2) Prozessorleistung Pc[access/sec] verarbeitete Bytezugriffe des Prozessors auf den Speicher pro Sekunde Hauptspeicher Kapazität Mp[byte] Zugriffszeit Mp speed[byte/sec]

Kiviat Graphen (3) Peripheriespeicher Kapazität Ms[byte] Zugriffszeit Ms speed[byte/sec] Übertragungsrate auf Peripherie für menschliche I/O T.human[byte/sec] Rechner-Rechner Verbindungen T.communication[byte/sec] weitere externe Geräte T.external[byte/sec]

Kiviat Graphen (4) Abtragen auf kreisförmiger logarithmischer Skala Pc Mp Mp speed Ms Ermöglicht schnellen Überblick Ms spe T.human T.external T.communication

Kiviat Graphen (5) Eigenschaften: allgemeines Bewertungsmaß Bewertungsgrundlage für Gesamtsystem Überprüfung der Amdahl-Regeln leicht möglich Aussage über Systembalance innere Struktur des Rechners wird nicht weiter bewertet

Amdahl-Regeln Die Kapazität des Hauptspeichers in Byte sollte mindestens der Anzahl der auszuführenden Instruktionen pro Sekunde entsprechen. Die I/O-Übertragungsrate in Bit pro Sekun-de sollte mindestens der Anzahl der auszuführenden Operationen pro Sekunde entsprechen.

Klassifikation durch Flynn (1) Seit 1972 Einfache Klassifikation Hoher Abstraktionsgrad Grundlage ist Unterscheidung nach Befehlsstrom und Datenstrom

Klassifikation durch Flynn (2) SISD=single instruction stream - single data stream Rechner mit einfachem Befehls- und Datenstrom MISD=multiple instruction stream - single data stream Rechner mit mehrfachem Befehls- und einfachem Datenstrom

Klassifikation durch Flynn (3) SIMD=single instruction stream - multiple data stream Rechner mit einfachem Befehls- und mehrfachem Datenstrom MIMD=multiple instruction stream - multiple data stream Rechner mit mehrfachem Befehls- und Datenstrom

Klassifikation durch Flynn (4) Beispiele SISD: klassische Rechner SIMD: ILLIAC IV, STARAN, Vektorrechner, Feldrechner MISD: (Pipelinerechner) MIMD: Parallelrechner, Transputernetze

Verfeinerung von Higbie Seit 1973 Verfeinerung der Klasse SIMD in: Feldrechner Assoziativrechner Assoziative Feldrechner Orthogonalrechner

Klassifikation nach Shore Rechner werden nach vier Basiskomponenten klassifiziert: Kontrolleinheit ALU Datenspeicher Befehlsspeicher Typ 1: wortseriell/bitparallel Typ2: wortparallel/bitseriell...

Operationsprinzip-Struktur- Matrix nach Giloi Unterteilung eines Rechners in Operationsprinzip Informationskonzept Kontrollkonzept Struktur Hardware-Betriebsmittel und ihre Struktur Nur anwendbar auf Rechner mit zentralisierter Kontrolle

Überblick Einleitung v. Neumann-Modell, Entwurfsprozess Befehlsschnittstelle Mikroarchitektur Speicherarchitektur Ein-/Ausgabe Multiprozessorsysteme,...

von Neumann-Architektur Zentraleinheit Speichereinheit RAM/ROM Steuerbus Adressbus Datenbus Ein-/Ausgabeeinheit

Überblick Einleitung v. Neumann-Modell, Entwurfsprozess Befehlsschnittstelle Mikroarchitektur Speicherarchitektur Ein-/Ausgabe Multiprozessorsysteme,...

Hardware-Beschreibung und Entwurf Spezifikation Funktionale Simulation Testbench Logiksynthese Gate-Level Simulation Formale Verifikation Scanpath Placeand and Route

Mikroprozessorsysteme (1) Viele Anwendungen, z.b. Textverarbeitung, Lohnabrechnung,... Steuerung von Maschinen im Haushalt (Waschmaschine, Geschirrspülautomat,...) sicherheitskritische Anwendungen (ABS, medizinische Anwendungen)

Mikroprozessorsysteme (2) MPs sind komplexe Schaltwerke MPs bearbeiten Sequenz von Steuerungsschritten (Programme) in Abhängigkeit von Daten Universell Einsetzbar Änderungen/Erweiterungen einfach Anpassung an neue Umgebung möglich/unproblematisch

Mikroprozessorsysteme (3) Wir unterscheiden im folgenden: Programmdaten (Befehle), die die Art der Verarbeitung festlegen (Operationen) Rechendaten, das sind die Daten, die verarbeitet werden (Operanden) Programm ist Folge von Befehlen Abarbeitung in fester Reihenfolge Pro Verarbeitungsschritt ein Befehl

Grundarchitekturen (1) Kernstück ist Zentraleinheit Speicher, in denen Daten abgelegt werden Ein- und Ausgabebausteine, mit denen Kommunikationen mit Außenwelt hergestellt wird

Grundarchitekturen (2) Harward-Architektur RAM/ROM Zentraleinheit Programmspeicher Datenspeicher RAM Steuerbus Adressbus Datenbus Ein-/Ausgabeeinheit

Grundarchitekturen (3) Princeton-(von Neumann-)Architektu Zentraleinheit Speichereinheit RAM/ROM Steuerbus Adressbus Datenbus Ein-/Ausgabeeinheit

Grundarchitekturen (4) Komponenten durch Busse verbunden Vorteile: Verringerung der Anzahl der Leitungen Erweiterbarkeit/Skalierbarkeit Probleme bei bidirektionalen Bussen zu jedem Zeitpunkt nur ein Zugriff Harward-Architektur hier überlegen

Grundarchitekturen (5) Zentraleinheit besteht aus zwei Teilen: befehlsverarbeitend datenverarbeitend Speicher beinhalten Daten und Programme Princeton: Es muss Mechanismus geben, um zwischen Daten und Befehlen zu unterschieden.

Grundarchitekturen (6) Zweiphasensystem: Befehl aus Speicher holen und interpretieren Speicherinhalt holen und Befehl verarbeiten und Folgeadresse berechnen Bussystem kann zum Flaschenhals (bottleneck) eines MPs werden

Zentraleinheit Auch Mikroprozessor oder CPU (=central processing unit) Aufgaben: Steuerung Holen und Interpretieren von Befehlen Ausführen von Befehlen Organisation des Datenaustauschs mit der Umwelt

Architektur einer Zentraleinheit Komponenten: Steuerwerk Operationswerk Steuerwerk für Befehlsverarbeitung Operationswerk für Datenverarbeitung Ausführung eines Befehls: Holphase Ausführungsphase

Steuerwerk (1) Steuerwerk ist endlicher Automat Steuert und überwacht interne und externe Funktionen des MPs Befehl wird zerlegt in Folge von Elementarbefehlen

Steuerwerk (2) Befehlsbearbeitung Laden des Befehlszählers Entschlüsselung des Befehlsregisters (Befehlsdekodierung) und Einstellen des Programmzählers Laden weiterer Operanden Ausführen des Befehls Abspeicherung der Ergebnisse

Steuerwerk (3) Man unterscheidet festverdrahtetes Steuerwerk mikroprogrammiertes Steuerwerk

Steuerwerk (4) Festverdrahtetes Steuerwerk: Ablauf fest vorgegeben Mikroprozessor leicht handhabbar kompakter und schneller Aufbau des MPs es existieren umfangreiche Programmentwicklungs- und Optimierungswerkzeuge Befehle werden in mehreren Taktphasen ausgeführt

Steuerwerk (5) Mikroprogrammiertes Steuerwerk: Satz von Grundbefehlen (Mikrobefehle) flexible Gestaltung des Befehlssatzes Emulation anderer MPs möglich Anpassung an Anforderungen möglich erhöhter Hardwareaufwand es existieren weniger Entwicklungswerkzeuge, da z.b. selbstdefinierte Befehls-sätze nicht unterstützt werden müssen

Operationswerk (1) Durchführung von Operationen: logische arithmetische Bekannte Operationen: Addition, Konjunktion, Negation, Vergleich, Inkrementieren, Schieben,... Je nach Operation ein oder zwei Operanden

Operationswerk (2) Schaltnetz kombinatorisches Netzwerk (ALU=arithmetic logical unit) Registerbank Abspeicherung der Operanden und Ergebnisse Diverse Register Statusinformationen, Programmzähler, etc.

Operationswerk (3) 1. Operand ACC A ACC B 2. Operand Funktionsauswahl ALU F=f(A,B) Erg.Reg Status.R

Maschinenzyklus (1) Komponenten des Steuerwerks: Befehlszähler (PC=program counter) enthält immer die Adresse des nächsten im Speicher folgenden Befehlswortes Befehlsregister (IR=instruction register) dient zur Zwischenspeicherung des (ersten) Befehlswortes Adressregister (AR) beinhaltet die auf das erste Wort eines Befehls folgende Operandenadresse

Maschinenzyklus (2) Steuerlogik des Steuerwerks dekodiert Operationscode eines Befehls Steuerlogik ist für Befehlsausführung verantwortlich Ansteuerungssignale für ALU, interne Daten-, Adress- und Steuersignale werden erzeugt Signale für externen Systembus (angeschlossene Funktionseinheiten, z.b. Quittierung für Datentransport)

Maschinenzyklus (3) Rechenwerk umfasst: ALU Registerspeicher haben Register innerhalb des Registerspeichers gleiche Funktionalität, so nennt man sie auch allgemeine Register Pufferregister am Eingang der ALU durch Pufferspeicher unterstützte ALU heißt auch Register ALU (RALU) vor Verknüpfung der Operanden sind diese in Pufferregister zu laden

Maschinenzyklus (4) Prozessorientiertes Bussystem als Verbindung zwischen Registerspeicher, den einzelnen Registern, ALU und externem Systembus Datenbus Adressbus Steuerbus Signale zur Auswahl der Register im Registerspeicher

Maschinenzyklus (5) Abarbeitung eines Befehls erfolgt in einem Befehlszyklus Zeittakt für Mikrooperation liefert Taktgenerator Maschinenzyklus ist Verarbeitungsab-lauf innerhalb eines Taktes Beispiel: 50 ns bei 20 MHz-Takt

Maschinenzyklus (6) Transport des Befehls vom Speicher in Befehlsregister, Erhöhen des Befehlszählers Transport des ersten Operanden vom Speicher oder einem allgemeinen Prozessorregister in das Rechenwerk Transport des zweiten Operanden vom Speicher oder einem allgemeinen Prozessorregister in das Rechenwerk Ausführen der Operation durch Verknüpfen der Operanden Transport des Resultats vom Rechenwerk in den Speicher oder in ein allgemeines Prozessorregister

Registerfunktionen (1) Akkumulator-Register (ACCU) speichert einen Operanden unterstützt Ausführung von Schieben Programmzähler (Befehlszähler) erzeugt durch Inkrementieren aufeinanderfolgende Programmadressen bei Sprungbefehlen neuen Wert laden

Registerfunktionen (2) Instruktionsregister nimmt den aus dem Speicher gelesenen Befehl auf Notizblockregister temporäre Speicherung von Daten, Operanden, Statusinformationen,... Statusregister Informationen, die aus Operationen resultieren (Überlauf, Übertrag, Vorzeichen)

Registerfunktionen (3) Stack-Register (Stapel-Register) aktueller Stand des Stackpointers Verwaltung von Rücksprungadressen und lokalen Variablen bei Unterprogrammen Indexregister Ein-Ausgaberegister Adressregister