12.07.2015 Aufrufe

Technische Grundlagen der Informatik - Westfälische Hochschule

Technische Grundlagen der Informatik - Westfälische Hochschule

Technische Grundlagen der Informatik - Westfälische Hochschule

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz____________________________________________________________________________________________________________Inhaltsverzeichnis1. Einführung2. Zahlendarstellung, Konvertierungs- und arithmetische Algorithmen3. Boolsche Schaltalgebra4. <strong>Technische</strong> Realisierung von Schaltfunktionen, Transistoren undGatter5. Kombinatorische Schaltkreise, Schaltnetze6. Speicherelemente, Flip-Flops, sequentielle Schaltungen7. Endliche Zustandsautomaten und Steuerwerke8. Operationswerke9. Komplexe Schaltwerkea) Aufgabenspezifische Mikroprozessorenb) Universelle Mikroprozessoren10. Speicher und <strong>der</strong>en Realisierung11. Rechnerarchitekturen12. ComputerperipherieSeite 0 - 1© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________1 Einführung1.1 Was ist <strong>Technische</strong> <strong>Informatik</strong>, was ist ein Computer?Eine allgemeine Definition dessen was man unter <strong>Informatik</strong> verstehtlautet: „ <strong>Informatik</strong> ist die Wissenschaft von <strong>der</strong> algorithmischenDarstellung, Erkennung, Verarbeitung, Speicherung undÜbertragung von Information.“ Zur Erfüllung dieser Aufgaben istspezielle Hardware notwendig. Die <strong>Technische</strong> <strong>Informatik</strong> beschäftigtsich mit dem Entwurf, <strong>der</strong> logischen Struktur und <strong>der</strong> technischenRealisierung dieser Computer-Hardware. Sie bildet eine <strong>der</strong> vierKernsäulen <strong>der</strong> <strong>Informatik</strong>. Diese vier Kernsäulen <strong>der</strong> <strong>Informatik</strong> sind inAbbildung 1.1 dargestellt. Neben <strong>der</strong> <strong>Technische</strong>n <strong>Informatik</strong> gibt esnoch die Theoretische <strong>Informatik</strong>, die Praktische <strong>Informatik</strong>, und dieAngewandte <strong>Informatik</strong>. Die Theoretische <strong>Informatik</strong> ist eng verknüpftmit <strong>der</strong> <strong>Technische</strong>n <strong>Informatik</strong>, weil viele <strong>der</strong> dort entwickeltenKonzepte z. B. aus <strong>der</strong> Codierungstheorie, <strong>der</strong> Logik und dem Gebiet <strong>der</strong>Endlichen Automaten als mathematisches Fundament zur Beschreibungvon Computer-Hardware dient.Die <strong>Technische</strong> <strong>Informatik</strong> ist für folgende Personen von beson<strong>der</strong>emInteresse bzw. sogar notwendig:1.) Entwickler von Computer-Hardware.2.) Hardwarenahe Programmierer, d.h. Programmierer speziellerMikroprozessoren in z. B. Eingebetteten Systemen ( EmbbededSystems ).3.) Programmierer in höheren Programmiersprachen, sie benötigenzwar keine detaillierten Hardwarekenntnisse, Kenntnisse <strong>der</strong>selbenversetzen sie jedoch in die Lage in einem breiterenAnwendungsfeld <strong>der</strong> <strong>Informatik</strong> zu arbeiten, und unter Umständenauch effizientere Programme zu schreiben.Der hier angebotene Kurs <strong>der</strong> <strong>Technische</strong>n <strong>Informatik</strong> ist daher relevantfür die Studiengänge <strong>Technische</strong> <strong>Informatik</strong>, Praktische <strong>Informatik</strong> undMedieninformatik.Was ist ein Computer?Der Begriff Computer steht für Rechner, genauer gesagt elektronischeRechenmaschine. Was jedoch zeichnet einen Rechner aus? WelcheAufgaben kann er lösen? Wie funktioniert er? Wie ist er aufgebaut?Seite 1 - 1© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. LatzAbbildung 1.1: Darstellung <strong>der</strong> vier Kernsäulen <strong>der</strong> <strong>Informatik</strong> mit ihren wesentlichen Arbeitsgebieten und Darstellung <strong>der</strong>Gebiete, die in den Vorlesungen <strong>Technische</strong> <strong>Informatik</strong> mehr o<strong>der</strong> weniger ausführlich behandelt werdenSeite 1- 2© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________Je nachdem wie weit man bei <strong>der</strong> Betrachtung <strong>der</strong> Funktionsweise einesRechners von <strong>der</strong> eigentlichen physikalischen Realisierung einesRechners abstrahiert, unterscheidet man verschiedeneAbstraktionsebenen. Diese Abstraktionsebenen sind in folgen<strong>der</strong>Abbildung dargestellt.LeistungsmaßAbbildung1.2: Darstellung <strong>der</strong> verschiedenen Abstraktionsebenen eines Rechners undAngabe des Leistungsmaßes für einige EbenenAuf <strong>der</strong> Ebene <strong>der</strong> Anwendung sieht <strong>der</strong> Benutzer des Rechners nur dieAnwendung. Er kümmert sich nicht um Details des Ablaufs im Rechnerson<strong>der</strong>n betrachtet nur den Ablauf innerhalb seiner Anwendung.Auf <strong>der</strong> Ebene <strong>der</strong> Höheren Programmiersprachen, wie z. B. C,C++,Java usw. versteht man den Rechner als einen „schwarzen Kasten“ <strong>der</strong>Programme in <strong>der</strong> höheren Programmiersprache einliest und direkt auf<strong>der</strong> Hardware ausführt.Auf <strong>der</strong> Assembler-Ebene werden in einer symbolischen NotationBefehle zur Verfügung gestellt, die im Betriebssystem bzw. imSeite 1 - 3© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong>Prof. Dr. R. Latz_________________________________________________________________________________________________________Maschinenbefehlssatz vorhanden sind, mittels <strong>der</strong>er ein ProgrammiererProgramme schreiben kann. Zudem werden einem Programmierer, umihm das Programmieren zu erleichtern, auf dieser EbenePseudoinstruktionen zur Verfügung gestellt, die sich durch wenigeMaschinenbefehle realisieren lassen.Auf <strong>der</strong> Betriebssystemebene existiert ein in Maschinensprachegeschriebenes Programm, Betriebssystem genannt, (englisch: OperatingSystem OS), welches die Betriebsmittel wie Speicher, Ein- undAusgabegeräte verwaltet, die Ausführung von Programmen steuert, unddie Kommunikation zwischen Mensch und Computer ermöglicht bzw.vereinfacht. Alle Personal Computer (PC‘s) besitzen ein Betriebssystem.Es sind jedoch auch Rechner für spezielle Anwendungsbereiche z. B.Eingebettete Systeme, im Einsatz, die kein Betriebssystem besitzen.Die Ebene <strong>der</strong> Maschinensprache ist die unterste Ebene, die für einenProgrammierer noch frei zugänglich ist, und in <strong>der</strong> er Programme für denRechner schreiben kann. Die Maschinenbefehle sind als Folgen von 0und 1 codiert, für einen Programmierer also recht unangenehm zuprogrammieren. Diese Ebene ist die Software/Hardware–Schnittstellenebeneeines Prozessors. Der Satz <strong>der</strong> verfügbaren Maschinenbefehle,die auf dieser Ebene zur Verfügung stehen, bestimmt diesogenannte Architektur eines Rechners, d.h. <strong>der</strong> Maschinenbefehlssatzeines Rechners und seine Hardwarearchitektur hängen miteinan<strong>der</strong>zusammen. Die einzelnen Befehle in <strong>der</strong> Maschinensprache werden nachfolgendem allgemeinen Arbeitsprinzip ausgeführt:Fetch ( Holen ) -> Decode (ermittle um welchen Befehl es sich handelt )-> Execute ( setze die Steuersignale und führe den Befehl aus )Zunächst wird ein Befehl aus dem Arbeitsspeicher ( Hauptspeicher )geholt ( Fetch ). Dann wird nachgeprüft um welchen Befehl es sichhandelt, und es werden dann die zum Ausführen des Befehlsnotwendigen Steuersignale für die Hartware ermittelt. Dann wird <strong>der</strong>Befehl von <strong>der</strong> Ausführungseinheit, in <strong>der</strong> Regel einer Arithmitischen-Logischen Einheit ( ALU ), ausgeführt.Seite 1 - 4© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. LatzAbbildung 1.4: Foto des Nachbaus einer Z3. Das 1941 fertiggestellte Original wurde durch einen Bombenangriff zerstörtSeite 1 - 7© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________Abbildung 1.5: <strong>Technische</strong> Daten des Z3 Rechners von Konrad Zuse, <strong>der</strong> mitelektromechanischen Relais betrieben wurdeAbbildung 1.6: Darstellung <strong>der</strong> Abarbeitung von Befehlen in einer Pipeline-Architekturin <strong>der</strong> Z3Seite 1 – 8© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________Abbildung 1.7: Der Befehlssatz desZ3 RechnersMit Hilfe <strong>der</strong> Befehle Lu bzw. Ld wird eine Dezimalzahl über dienumerische Tastatur eingelesen bzw. auf <strong>der</strong> numerischen Anzeigeausgegeben. Beide Befehle stoppen die Ausführung <strong>der</strong> Maschine, bis<strong>der</strong> Benutzer manuell die Fortsetzung veranlasst. Über die Befehle Przund Psz wurde die Kommunikation mit dem Hauptspeicher gesteuert.Die übrigen Befehle sind Befehle mit denen arithmetische Operationendurchgeführt werden.Die wesentlichen Strukturmerkmale des Z3 Rechners sind in folgen<strong>der</strong>Aufstellung zusammengefasst:- Die Kernfunktionen des Rechners bestehen aus Steuerwerk,Rechenwerk und dem davon getrennten Speicher. Diese Strukturfindet sich auch heute noch in den allermeistenComputerarchitekturen.- Die Z3 rechnete bereits im Gleitkommaformat, so dass in einemweiten Zahlenbereich sehr genaue Rechnungen durchgeführtwerden konnten.- Die Z3 arbeitete bereits mit dem Prinzip <strong>der</strong>Mikroprogrammierung. Im Steuerwerk befindet sich einsogenannter Mikrosequenzer mit dessen Hilfe sich komplexeRechenoperationen in mehrere elementare Berechnungsschrittezerlegen und ausführen lassen. Das Prinzip findet sich heute nochin sogenannten CISC-Rechnern.Seite 1 – 9© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________- Zur Geschwindigkeitssteigerung führt die Z3 die Befehle bereitsüberlappend aus ( Pipeline- Architektur ). Zur gleichen Zeit wo einBefehl ins Steuerwerk eingelesen wird, wird einBerechnungsergebnis weggeschrieben.- Das verwendete Rechenwerk arbeitet bereits mit dem Carry-lookahead-Algorithmusum Rechenoperationen zu beschleunigen.Programmiert wird die Z3 mit Hilfe eines 8-spurigen Lochstreifens. Jede8-spurige Zeile codiert einen Befehl, bei dem Lese-und Schreibbefehlzusätzlich noch die Adresse des Operanden im Hauptspeicher. Dieinsgesamt neun möglichen Befehle lassen sich in die Kategorien EinundAusgabe, Speichertransfer und Arithmetik unterteilen.Ein weiterer elektromechanischer Rechner, <strong>der</strong> unter <strong>der</strong> Leitung vonHoward H. Aiken konstruiert, und am 7. August 1944 fertiggestelltwurde, war die Harvard Mark I, die für die Harvard University gebautwurde. In ihm kam das Konzept zum tragen Code und Daten ingetrennten Speichern vor zu halten. Bei Rechnern mit einer solchenStruktur spricht man daher auch von Harvard-Struktur.Die erste voll funktionsfähige Rechenmaschine, die nahezu alleDefinitionen eines mo<strong>der</strong>nen Computer-Begriffs erfüllt, ist die 1944fertiggestellte ENIAC. In <strong>der</strong> ENIAC war es im Gegensatz zur Z3 und<strong>der</strong> Harvard Mark I bereits möglich Verzweigungen und Schleifen zuprogrammieren. Diese Maschine war allerdings nicht auf flexibleProgrammierung ausgelegt, da die Programmierung überSteckverbindungen erfolgte. Dieser Rechner wurde an <strong>der</strong> University ofPennsylvania unter <strong>der</strong> Leitung von Eckert und Mauchly gebaut und1946 fertiggestellt. Die Schaltungslogik wurde in dieser Maschine mitHilfe von Trioden-Vakuum-Röhren realisiert. Diese waren in <strong>der</strong>Schaltgeschwindigkeit einige tausend mal schneller als Relais.Nachteilig war jedoch die große Störanfälligkeit und <strong>der</strong> hoheStromverbrauch.Ein bahnbrechendes Konzept bezüglich <strong>der</strong> Programmierung vonRechnern entwickelte John von Neumann. Er schlug vor Programme undDaten in einem gemeinsamen Speicher ab zu legen, um damit eine großeFlexibilität bei <strong>der</strong> Programmsteuerung zu haben. Dadurch wurde dieRekursivität <strong>der</strong> Programmsteuerung möglich, d. h. Programme konntendurch Programme verän<strong>der</strong>t werden.Seite 1 – 10© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________Abbildung 1.8: Foto eines Teils des ENIAC-Rechners, <strong>der</strong> mit Vakuumröhren alsSchalter arbeiteteAbbildung 1.9: Übersicht über die Entwicklung <strong>der</strong> Schaltelemente beim Einsatz indigitalen RechnernSeite 1 – 11© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________Ein großer Fortschritt zur Realisierung von Rechnern brachte dieErfindung des Halbleitertransistors durch Shockley, Bardeen undBrattain im Jahre 1948, wofür sie 1956 den Nobelpreis erhalten haben.Der Transistor als Schalter hatte gegenüber <strong>der</strong> Vakuumröhre eine ganzeReihe von Vorteilen wie:Höhere Zuverlässigkeit, geringere Energieverbrauch, kleinereAbmessungen, höhere Schaltgeschwindigkeit.Zunächst wurden Rechner mit diskreten Transistoren realisiert, bis 1971bei Intel, unter <strong>der</strong> Leitung von Fe<strong>der</strong>ico Faggin, <strong>der</strong> ersteMikroprozessor, <strong>der</strong> Intel 4004, entwickelt wurde. Bei einemMikroprozessor sind alle Komponenten des Prozessors auf einemeinzigen Halbleiterstück, Chip genannt, in <strong>der</strong> Regel aus Siliziumbestehend, aufgebaut.Zuvor hatte Jack Kilby 1958 den ersten integrierten Schaltkreis ( engl.Integrated Circuit kurz IC ) genannt, hergestellt bei dem vieleTransistoren auf einem einzigen Chip integriert werden. Dafür erhielt erim Jahre 2000 den Nobelpreis.Die Maschinensprache des Intel 4004 bestand aus 46 Befehlen. DerMikroprozessor war aus 2300 Transistoren aufgebaut und lief mit einerTaktfrequenz von 108 kHz.Abbildung 1.10: Sicht auf den Chip einesMikroprozessors 4004 (links) und einenvergrößerten Ausschnitt (rechts)Seite 1 – 12© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________Das Mikroprozessorkonzept war <strong>der</strong> entscheidende Durchbruch bei <strong>der</strong>Entwicklung von Rechnern und ist <strong>der</strong> Auslöser einer bis heuteandauernden „Leistungsexplosion“ bei Rechnern. Die Mikroprozessorenwerden bis heute stetig in ihrer Leistungsfähigkeit verbessert. Das istauch deutlich in <strong>der</strong> nachfolgenden Graphik zu sehen, wo die Anzahl <strong>der</strong>Transistoren in Mikroprozessoren von Intel dargestellt ist.Die Anzahl <strong>der</strong> auf einem Chip befindlichen Transistoren kann als Maßfür die rechnerische Leistungsfähigkeit des Mikroprozessors aufgefasstwerden.Abbildung 1.11: Darstellung <strong>der</strong> Entwicklung <strong>der</strong> Leistungsfähigkeit vonMikroprozessoren anhand <strong>der</strong> Anzahl an Transistoren am Beispiel vonIntelprozessorenDiese Entwicklung kann im sogenannten Moore‘schen Gesetz, das nacheinem Intelmitarbeiter benannt ist, zusammengefasst werden:Die Anzahl <strong>der</strong> auf einem Chip integrierten Transistoren verdoppeltsich alle 18 Monate.Die Erhöhung <strong>der</strong> Anzahl <strong>der</strong> Transistoren auf einem Chip, bei nahezugleicher Fläche, wird dadurch erreicht, dass die Transistoren in immerkleineren Abmessungen hergestellt werden d. h. die Strukturgröße wirdimmer kleiner und damit die Transistordichte, Anzahl Transistoren proFläche, immer größer. Eine zusätzliche Leistungssteigerung ergibt sichaber auch noch dadurch, dass diese kleineren Transistoren schnellerSeite 1 – 13© R. Latz


„<strong>Technische</strong> <strong>Grundlagen</strong> <strong>der</strong> <strong>Informatik</strong> (TGI)“Prof. Dr. R. Latz_________________________________________________________________________________________________________geschaltet werden können d. h. ein Prozessor kann mit höherer Taktratebetrieben werden. Das Moore’sche Gesetz hat jedoch keineuneingeschränkte Gültigkeit. Aufgrund physikalischer Grundgesetzewird es ab einer bestimmten Transistordichte nicht mehr gelten.Schließlich kann ein Transistor nicht beliebig klein gemacht werden.Die Leistungssteigerung auf dem Gebiet <strong>der</strong> Mikroprozessoren wirdauch sehr eindrucksvoll deutlich, wenn man einige Kenndaten des erstenMikroprozessors, des Intel 4004, mit den Kenndaten eines mo<strong>der</strong>nMikroprozessors, hier dem Pentium 4, vergleicht.Der Intel Pentium 4 enthält in seiner ursprünglichen Version 42 000 000Transistoren. Der Intel 4004 enthält 2300 Transistoren. Das ist eineErhöhung um den Faktor 18300!Die Taktfrequenz des Intel Pentium 4 liegt bei 1,5 GHz, die des Intel4004 bei 108 KHz. Das ist eine Erhöhung um den Faktor 13900!Abbildung 1.12: Chipfoto eines Pentium 4 ProzessorsSeite 1 – 14© R. Latz

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!