Einführung. Einführung in die Technische Informatik Falko Dressler und Stefan Podlipnig Universität Innsbruck

Ähnliche Dokumente
Einführung. Motivation Komponenten eines Rechners Historische Entwicklung Technologische Grundlagen

B Einführung. 1 Historische Entwicklung. 1 Historische Entwicklung (3) 1 Historische Entwicklung (2)

Technische Informatik I

Technische Informatik I, SS 2001

B Einführung B.2 B.4. 1 Zielsetzung. 2 Analoge und digitale Rechner. 1 Zielsetzung (2) Verständnis zum Aufbau und der Arbeitsweise von Rechnersystemen

Verständnis zum Aufbau und der Arbeitsweise von Rechnersystemen

1. Übung - Einführung/Rechnerarchitektur

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

Einführung in die Informatik

Brückenkurs / Computer

Informatik Mensch Gesellschaft. Historische Entwicklung der Informationstechnik (von Anfang bis Heute)

Informatik - Lehrgang 2000/2001 GRUNDLAGEN

Mikrocontroller Grundlagen. Markus Koch April 2011

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

Algorithmus, siehe (1)

Grundlagen der Rechnerarchitektur

Wichtige Rechnerarchitekturen

Brückenkurs / Computer

Teil VIII Von Neumann Rechner 1

Im Original veränderbare Word-Dateien

Mikroprozessor als universeller digitaler Baustein

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

Die Mikroprogrammebene eines Rechners

Computer-Architektur Ein Überblick

Geschichte der Informatik

Dipl. Ing. (FH) Ehrenfried Stuhlpfarrer

Software, die die Welt zusammenhält

Grundlagen der Rechnerarchitektur. Einführung

1Computergrundlagen = 1*16 + 0*8 + 1*4 + 1*2 + 0*1

HISTORISCHES INFORMATIK-MUSEUM DER UNIVERSIDAD POLITECNICA DE MADRID

Computerarithmetik ( )

Allgemeine Informatik Thema 1 Informatik; Konzepte (II)

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

Einführung in die Systemprogrammierung

Zahlendarstellungen und Rechnerarithmetik*

Binäre Gleitkommazahlen

Die Geschichte des Computers

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Johann Wolfgang Goethe-Universität

Kapitel 4A: Einschub - Binärcodierung elementarer Datentypen. Einschub: Teile aus Kapitel 2 in Küchlin/Weber: Einführung in die Informatik

Einführung in die Programmierung

Ein kleiner Einblick in die Welt der Supercomputer. Christian Krohn

Rechner Architektur. Martin Gülck

5. Übung: Binäres Rechnen und Fließkommazahlen Abteilung Verteilte Systeme, Universität Ulm

2. Negative Dualzahlen darstellen

1. Das dekadische Ziffernsystem (Dezimalsystem) Eine ganze Zahl z kann man als Summe von Potenzen zur Basis 10 darstellen:

Facharbeit Informatik. Thema:

Prozessor HC680 fiktiv

C. BABBAGE ( ): Programmgesteuerter (mechanischer) Rechner

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Kernkompetenzen eines Wirtschaftsinformatikers heute und morgen

Lösung 1. Übungsblatt

Daten verarbeiten. Binärzahlen

Elektromechanische Computer

5. Was ist ein CPU, wie wird die Geschwindigkeit angegeben? 6. Nennen Sie 4 Elemente die sich direkt auf einem Mainboard befinden.

Computersysteme. Kommunikation. Echtzeitsysteme. Grundstudium Technische Informatik I + II. Verteilte Systeme. Robotik.

Installationsvoraussetzungen

3 Rechnen und Schaltnetze

GESCHICHTE DER COMPUTERTECHNIK

Zahlensysteme. von Christian Bartl

Grundlagen der Informatik (BSc) Übung Nr. 5

Grundlagen der Informatik

N Bit binäre Zahlen (signed)

2.2 Rechnerorganisation: Aufbau und Funktionsweise

Binär Codierte Dezimalzahlen (BCD-Code)

Grundlagen der Betriebssysteme

Daten, Informationen, Kodierung. Binärkodierung

Grundlagen der Informatik

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

Die Geschichte der Taschenrechner

Übung -- d002_ampelsteuerung

Vorlesung Programmieren. Inhalt. Funktionsweise von Computern. Ein Blick zurück. 1. Ein Blick zurück. 2.

Vorlesung Programmieren

Binärdarstellung von Fliesskommazahlen

Computer-Generationen

Lösungsvorschlag zur 4. Übung

Zahlensysteme: Oktal- und Hexadezimalsystem

Im Original veränderbare Word-Dateien

Aufbau und Funktionsweise eines Computers

Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird.

Versuch Nr. 8c Digitale Elektronik I

Angewandte Informatik

Das Rechnermodell von John von Neumann

Einführung in die Informatik I

Binär- und Hexadezimal-Zahl Arithmetik.

Binäre Division. Binäre Division (Forts.)

Anleitung zur Nutzung des SharePort Utility

Technische Informatik 2 Adressierungsarten

Systeme 1. Kapitel 10. Virtualisierung

1 Aufgaben zu Wie funktioniert ein Computer?

Asynchrone Schaltungen

1 Einleitung. 1.1 Aufgaben und Grobstruktur. Was ist ein Betriebssystem?

L3. Datenmanipulation

Von Perimeter-Security zu robusten Systemen

A1 Desktop Security Installationshilfe. Symantec Endpoint Protection 12.1 für Windows/Mac

Technische Informatik - Eine Einführung

4. Übungsblatt zu Mathematik für Informatiker I, WS 2003/04

Teil 1: Digitale Logik

Transkript:

Einführung Einführung in die Technische Informatik Falko Dressler und Stefan Podlipnig Universität Innsbruck

Überblick Motivation Komponenten eines Rechners Historische Entwicklung Technologische Grundlagen Einführung 2

MOTIVATION Einführung 3

Rechnerarchitektur Rechnerarchitektur beschäftigt sich mit dem Aufbau von Rechnern, der Hardware/Software-Schnittstelle, der maschinennahen Programmierung und der Arbeitsweise von Rechnern, d.h. wie werden Maschinenprogramme abgearbeitet. Kenntnisse in Rechnerarchitektur sind z.b. notwendig zum Entwurf neuer Rechner, zur Entscheidung, was bei der Entwicklung neuer IT Systeme in Hardware und was in Software zu realisieren ist, zur effizienten Programmierung moderner Systeme und zur Auswahl eines zur Problemlösung geeigneten Systems. Einführung 4

Ebenen der Rechnerarchitektur System- Architektur Beschreibt externen Systembus, Organisation des Arbeitsspeichers, Peripheriebus,... Instruktionssatz- Architektur (ISA) Legt Instruktionen, Registersatz und Adressierungsarten fest. Stellt die Schnittstelle zwischen Hard- und Software dar. Mikroarchitektur (µa) Beschreibt die Struktur eines Rechners mit Registern, ALU, Steuerwerk, interne Bussysteme, Ein- /Ausgabeeinheit. Digitale Logik Beschreibt Implementierung der Komponenten mit Gattern. Einführung 5

Rechnerarchitektur - Rechnerorganisation In der Literatur wird auch oft vereinfachend nur zwischen Rechnerarchitektur und Rechnerorganisation unterschieden: Einführung 6

Beispiel Beispiel: C/C++ Programm: int a, b, summe;... summe = a + b;... Assemblerbefehle: add r0, r1, r2; Hardware: Einführung 7

Klassen von Rechnersystemen Heute gibt es im Wesentlichen nur noch drei Klassen von Rechnersystemen: 1. Desktop oder Arbeitsplatzrechner: 500 bis 2500 Euro je System, 50 bis 500 Euro für CPU Gutes Preis/Leistungsverhältnis, gute Grafikmöglichkeiten 2. Server: 2000 bis 100000 Euro je System, 200 bis 10000 Euro für CPU Hohe Zuverlässigkeit, hoher Durchsatz, gute Skalierbarkeit 3. Eingebettetes System: 10 bis 10000 Euro je System, 0.1 bis 100 Euro für CPU Geringe Stromaufnahme, ausreichende Leistung für Anwendung Früher gab es weitere Klassen: Mainframe, Minicomputer, Workstation Einführung 8

Welche Klasse hat den meisten Zuwachs? Mobiltelefone (und andere eingebettete Systeme)! Anzahl hergestellter Produkte (in Millionen): Einführung 9

KOMPONENTEN EINES RECHNERS Einführung 10

Innenansicht eines modernen PCs Einführung 11

Aktuelles Motherboard RAM-Steckplätze Stromanschluss PCI-Steckplatz Sockel für Prozessor Peripherie-Anschlüsse Einführung 12

Beispiel - Macbook Pro 15 Einführung 13

CPU Hauptkomponente eines jeden Rechners ist die CPU (Central Processing Unit). In jedem Befehlszyklus wird eine Instruktion aus dem Speicher geholt, im Steuerwerk dekodiert, und im Rechenwerk ausgeführt. Als Operanden benötigte Daten werden ebenfalls aus dem Speicher geladen. Einführung 14

CPU Beispiel (AMD Barcelona 4 Cores) Einführung 15

Intels neue "Sandy Bridge"-Generation Einführung 16

HISTORISCHE ENTWICKLUNG Einführung 17

Historische Entwicklung (1) 8500 v. Chr.: Zählsysteme In vielen Kulturen benutzt Häufig 5 oder 10 als Basis 3000 v. Chr.: Abakus Älteste mechanische Rechenhilfe Ursprung in Babylonien Noch heute in Asien benutzt 2 Zonen: heaven, earth Einfache Algorithmen nötig 1642: Pascaline Entwickelt von B. Pascal Auf Zahnrädern basierend Addition von zwei bis zu 8-stelligen Dezimalzahlen Automatischer Übertrag Subtraktion mittels Komplementzahlen Einführung 18

Historische Entwicklung (2) 1673: Stepped Reckoner Entwickelt von G.W. Leibniz Neuartige Staffelwalze für Multiplikation, Division 1804: Lochkarte Entwickelt von Jacquard zur Steuerung eines Webstuhls Unterschiedliche Webmuster durch unterschiedlich gelochte Holzbrettchen Erster Nur-Lese-Speicher (ROM = Read- Only Memory) Einführung 19

Historische Entwicklung (3) 1822: Difference Engine Entwickelt von C. Babbage Auf Dezimalsystem basierend Entworfen zur Tabellierung von Werten eines Polynoms: f(x) = a n x n + a n 1 x n 1 +... + a 1 x + a 0 Idee: Berechnung nur mit Addition möglich (bei geeigneten Startwerten) Beispiel: f(x) = 2x 2 + 3x + 1 x f(x) diff1 diff2 1 6 2 15 9 3 28 13 4 4 45 17 4 5 66 21 4 Erster Rechner mit automatischer Mehrschrittoperation! Einführung 20

Historische Entwicklung (4) 1830: Analytical Engine Entwickelt von C. Babbage Leitwerk, programmierbar mit Lochkarten Rechenwerk ( Mill ) Speicher ( Store ) für 1000 Dezimalzahlen aus 50 Stellen Ein-/Ausgabe mit Lochkarten Verzweigungen möglich Lady Ada Augusta Lovelace als erste Programmiererin Erster universeller Rechenautomat Einführung 21

Historische Entwicklung (5) 1941: Z3 Entwickelt von K. Zuse 10 Hertz Taktfrequenz Basierend auf 2200 Relais davon 600 für Rechenwerk, 1400 für Speicher 22-stellige Binärzahlen Im Gleitkomma-Format! Dezimale Ein-/Ausgabe Tasten oder Lochstreifen, Lampen Speicher mit 64 Worten Steuereinheit mit Sequenzer Addition in 3 Takten, Multiplikation in 16 Takten Einführung 22

Historische Entwicklung (6) 1945: Von-Neumann Architektur (John von Neumann) Speicherwerk enthält Programme und Daten Rechenwerk mit ALU und Registern Zentrales Steuerwerk mit fetchdecode-execute Instruktionszyklus Ein-/Ausgabe-Werk mit Datenumwandlung Binäre Kodierung Zentrale Eigenschaft ist der gemeinsame Speicher für Daten und Programme, Auch als Von-Neumann Flaschenhals bezeichnet. Einführung 23

Historische Entwicklung (7) 1946: ENIAC 18000 Röhren, 1500 Relais 130 m 2, 30 Tonnen, 140 kw Dezimale Kodierung ca. 5000 Additionen je Sek. 20 Akkumulatoren, 1 Multiplizierer, 3 Funktionstabellen (0.2 ms für Addition, 2.8 ms für Multiplikation) Programmiert durch Kabel- Verbindungen E/A mittels Lochkarten Gebaut für ballistische Berechnungen Einführung 24

Historische Entwicklung (8) 1961: PDP-1 Gebaut von DEC Transistortechnik Magnetischer Kernspeicher für 4096 18-Bit Worte 200 khz Taktfrequenz CRT, 512 x 512 Pixel Grafik Erster Minicomputer Es folgten: PDP-8 mit Omnibus (erstes Bussystem, 1965), PDP-11 (erster 16-Bit Rechner, 1970) Einführung 25

Historische Entwicklung (9) 1965: IBM System/360 Erste Rechnerfamilie mit gleichem Instruktionssatz Mehrprogrammbetrieb Mikroprogammierung Verwendung von integrierten Schaltkreisen (ICs) 32-Bit Worte 16 Mbyte Adressraum Typischer Großrechner Auch als Mainframe bezeichnet Einführung 26

Generationen seit 1950 Generation Zeitspanne Charakterisierung 1 1950-1960 Elektronenröhren als Schaltelemente Speicher von wenigen hundert Maschinenwörtern 2 1960-1970 Transistorschaltkreise Ferritkern, Band, Trommel und Plattenspeicher 3 1965-1970 Teilweise integrierte Schaltkreise 4 1970-1980 Überwiegend hochintegrierte Schaltkreise Ein Prozessor auf einem Chip 8-Bit-Architektur 5 Ab 1980 Hochintegrierte Schaltkreise Mehrerer Prozessoren mit vielen Millionen Transistoren auf einem Chip Arbeitsspeicher mit Millionen von Speicherplätzen 16 Bit- und 32-Bit-Architekturen 6 Ab 1990 RISC-Architekturen 64-Bit-Architekturen Einführung 27

Historische Entwicklung (10) Weitere Meilensteine der Computer-Hardware: 1971 : Intel 4004 (erster Mikroprozessor) 1976: Cray-1 (erster Vektorrechner) 1978: Intel 8086 (x86-architektur) 1985: MIPS (erster RISC-Mikroprozessor) 1987: Connection Machine (erster massiv paralleler Rechner mit 65536 Prozessoren) 1992: DEC Alpha 21064 (erster RISC-Mikroprozessor mit 64-Bit CPU) 1997: Supercomputer ASCI Red liefert eine Rechenleistung von mehr als 1 TFlops 2000: erster Mikroprozessor mit 1 GHz Taktfrequenz Einführung 28

TECHNOLOGISCHE GRUNDLAGEN Einführung 29

Technologische Grundlagen (1) Maß für die technologische Entwicklung ist die technologische Strukturgröße (Feature Size). Kann vereinfachend als Kantenlänge eines Transistors angesehen werden. Strukturgröße konnte in den letzten Jahrzenten von 10 µm (Intel 4004, 1971) auf 32 nm (Intel Core I7, 2009) reduziert werden! Jährliche Wachstumsraten: Transistordichte ~ 35% Chipfläche: ~ 15% Anzahl Transistoren je Chip ~ 55% CPU Taktrate: ~ 30% Einführung 30

Technologische Grundlagen (2) Das Gesetz von Moore (1965) besagt, dass sich die Anzahl der Transistoren je Chip alle 18 Monate verdoppelt: Einführung 31

Technologische Grundlagen (3) [Shacham 2010] Einführung 32

Technologische Grundlagen (4) Speicherentwicklung (DRAM-Chips) Einführung 33

LITERATUR Einführung 34

Literatur [Shacham 2010] O. Shacham et al., Rethinking Digital Design: Why Design Must Change, IEEE Micro, Nov/Dec 2010 Einführung 35