Kapitel 5 5 Rechnerorganisation

Slides:



Advertisements
Ähnliche Präsentationen
Vom HW-Automaten zum Prozessor
Advertisements

2. 5 Kommunikation, Ein-/Ausgabe (E/A) - engl
Bauteile des PC´c Werden vorgestellt: PC-Gehäuse Prozessor Tastatur
4.5 Virtueller Speicher Problemsituation: Programme und Daten sind zu groß für den verfügbaren Arbeitsspeicher Frühere Lösung Aufspaltung der Programme.
Befehlssatz und Struktur
IO - Hardwarestruktur, allgemein
Eine kleine Einführung
Informatik Tagesprotokoll vom
Lehrmaterial Grundlagen EDV
Zentraleinheit CPU, Motherbord, RAM
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
Lisa Gorkin, Barbara Herzgen, Fabian Küpper, Ailar Tehrani HG13 Köln / Steckkarten / Schnittstellen Hardwareprojekt.
Agenda Die Hardwearkomponenten und ihre Funktionen - Mikroprozessor
Agenda 1. Mainboard 2. Welche Hardwarekomponenten gibt es und was sind dessen Aufgaben 3. Vorhandene Steckkarten 4. Beispiel: Grafikkarte 5. Steckkartenverbindung.
Zentraleinheit CPU, Motherbord, RAM
Serielle Schnittstellen Von Pascal Wetterau
Can Bus Diagnose.
E / IDE Enhanced / Integrated Device Elektronics
WS 2009/10 1 Systeme 1 Kapitel 1 Aufbau von Rechnern.
Kapitel 3 5 Rechnerorganisation
Basisinformationstechnologie 1 Tanja Lange WS 2003/04 am
Technische Informatik I (SS 2006) Teil 1: Logik 1b: Schaltnetze.
2.5. Mikrocontroller-Komponenten
Haupt- und Arbeitsspeicher
Vorlesung 2 Rechnerarchitektur Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Vorlesung 3: Verschiedenes Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Vorlesung 5 Interrupts Peter B. Ladkin
Rechnerarchitektur Vorlesung 2 Peter B. Ladkin
4. Mikrocontroller-Komponenten
Parallele Schnittstellen
1 Vorlesung 3 Verschiedenes Peter B. Ladkin
Interrupt Bei dem Transport von Daten zu einem Speichermedium oder zu einer Schnittstelle, muss der PC seine aktuelle Arbeit unterbrechen Man bemüht sich,
RS232 Register und ihre Bits
Der Simple As Possible Computer
EDO-RAM,SDRAM,RDRAM,DDR2-SDRAM.
Schnittstellen des Computers
So arbeitet ein PC.
Duo- und Quad Prozessor-Architektur
Name des Vortragenden Klasse Ort / tt.mm.jjjj Beschreibung Zentraleinheit CPU, Motherbord, RAM.
Aufbau und Funktionsweise
Steuerung externer Komponenten über ein USB-Interface.
1. Was ist Hardware? Hardware nennt man alle Geräte und Bauteile, die zu einem Computer gehören – also alles was man am Computer anfassen kann. Bsp: Monitor,
Aufbau eines von-Neumann- Rechners Marcel Waldvogel.
Herzlich willkommen zum Aufbau der Hauptplatine
Das OSI Schichtenmodell
INTEL Pentium 4 Prozessor
Bluetooth Autor: Ron Nitzsche IAV02 14.April 2008.
3.4 CPU-Chips und Busse CPU-Chips
Signal-Prozessoren DSV1, 2009, Hhrt, 1 Mikro-Prozessor Von Neumann-Architektur Daten und Programmcode im gleichen Speicher => Sequenzieller Zugriff auf.
Computerorientierte Physik VORLESUNG
Wer macht was beim Einschalten des Rechners?
Warum gibt es Netzwerke?
Die verschiedenen Schnittstellen eines Computers und ihre Verwendung
Peripherie Volker Gallin.
Datenverarbeitung im PC
Verarbeitung und Computerinneres
DER COMPUTER.
Arbeitsspeicher Eine Präsentation von - Namen wurden entfernt -
Anschlussmöglichkeiten beim Samsung S3
Central Processing Unit (Zentraleinheit)
Bussysteme WS 05/06 Dominik Fehrenbach EN5:
Aufbau, Funktion und Grundzusammenhänge
USB - Universal Serial Bus
Die Hardware eines PC s.
I D E – Schnittstelle. 1.I D E 2.(E) I D E 3.Erweiterung.
Von Marcel Poppen & Oliver Lennartz
I2C beim Attiny Was ist I2C? I2C-Befehle Das PCF8574-Modul
Vom Prozessor zum System
Vom HW-Automaten zum Prozessor
 Präsentation transkript:

Kapitel 5 5 Rechnerorganisation 5.1 Leistung 5.2 Pipelining 5.3 Busse 5.4 Ein-/Ausgabe

5.3 Busse Busse dienen zur Übertragung von Daten von einem Sender zu einem Empfänger, z.B. zwischen Prozessor und Arbeitsspeicher, zwischen Prozessor und Ein-/Ausgabegeräten, zwischen Arbeitsspeicher und Ein-/Ausgabegeräten, zwischen mehreren Prozessoren. Aktor: in die Übertragung involvierte Partner: Master, z.B Prozessor, initiiert Übertragung, Slave, Peripheriegerät oder Speicher, reagiert. Richtung: Es gibt bei einer Übertragung einen Sender, einen Empfänger. Master oder Slave können Sender oder Empfänger sein Adresse: auch eine Art von übertragener Daten spezifiziert ein Peripheriegerät, eine Speicherzelle, wohin Daten geschrieben werden sollen. Rolle: Master – Slave 1 Sender und 1 Empfänger pro Übertragung, pro Protokoll-Zyklus? SW-Systemarchitektur Kap. 5

Physikalische Grundlagen Zwischen Sender und Empfänger gibt es Leitungen, einzeln oder gebündelt für gemeinsame Funktion Auf die Leitungen können Spannungen mit (mindestens) zwei verschiedenen Pegeln, 1 und 0, high und low, gebracht werden. Pegeländerungen brauchen Zeit zur Stabilisierung. Leitungen teilweise unidirektional, teilweise bidirektional nutzbar. Ein serieller Bus besteht aus einer oder zwei Leitungen. Ein paralleler Bus besteht aus einer größeren Menge paralleler Leitungen. 1 SW-Systemarchitektur Kap. 5

Anforderungen Welche Funktionen braucht man für Übertragungen von Daten? Welche technischen Möglichkeiten gibt es dafür? Busleitung aktivieren (assert) bei active low: durch fallende Flanke bei active high: durch steigende Flanke Ausdrücken, dass Datensignal: gültig oder ungültig ist Zeitdiagramme beschreiben Busprotokoll ungültig gültig SW-Systemarchitektur Kap. 5

Ideen? SW-Systemarchitektur Kap. 5

Busleitungen Menge von Leitungen gebündelt für gemeinsame Funktion, Adresse, Daten, Steuerung, oder Leitung(en) für alles benutzt, zu verschiedenen Zeiten. Busprotokoll legt fest, was wie zu interpretieren ist. Prozessor Speicher rd'/wr enable addr[0-11] data[0-7] bus SW-Systemarchitektur Kap. 5

Beispielprotokoll Beispiel: read Protokoll rd’/wr gesetzt auf low, tread read Protokoll rd'/wr enable addr data tsetup Beispiel: read Protokoll rd’/wr gesetzt auf low, Adresse auf addr gelegt für mindestens tsetup Zeit bevor enable aktiviert, dies signalisiert dem Speicher, zur Zeit tread Daten auf die data –Leitungen zu legen write Protokoll rd'/wr enable addr data tsetup twrite SW-Systemarchitektur Kap. 5

Time (division) multiplexing Gemeinsame Benutzung einer Menge von Leitungen für mehrere Datensätze Spart Leitungen auf Kosten von Zeit Datenübertragung mit Time-multiplexing Daten-Serialisierung Master Slave req data(8) data(15:0) mux demux data 15:8 7:0 Übertragung von 16 Bit Daten über einen 8Bit-Datenbus Multiplexing von Adresse und Daten Master Slave req addr/data addr data mux demux Übertragung von Adressen und Daten über gleichen Bus SW-Systemarchitektur Kap. 5

Synchrone, asynchrone Übertragung Die Übertragung kann synchron oder asynchron sein. synchrone Übertragung: taktweise Übertragung, in jedem Takt eine Busoperation, gesteuert durch separate Taktleitung. asynchrone Übertragung: Heben und Senken von dedizierten Synchronisationsleitungen signalisieren Übertragungswunsch, Gültigkeit bzw. Ungültigkeit von Daten auf dem Bus, Ende der Übertragung. Frage stellen: Ist Protokoll auf vorheriger Seite synchron oder asynchron? SW-Systemarchitektur Kap. 5

Serieller Bus Annahme zwei Leitungen Wie kann man darüber kommunizieren? SW-Systemarchitektur Kap. 5

Der I2C Bus serieller Bus mit zwei Leitungen, Datenleitung SDA und Taktleitung SCL beide mit einem Pullup-Widerstand mit der Betriebsspannung verbunden. Bus-Master initiiert Bustransfer durch Setzen der Startbedingung S: SDA-Leitung auf 0 ziehen, während SCL-Leitung auf 1 liegt. SCL-Leitung auf 0 gezogen, Übertragung der Daten(bits) B1,…,Bn, erst Geräteadresse, dann rw-Bit (read/write), synchron dazu Taktzyklen auf SCL. Geräte am Bus vergleichen ihre Adresse mit der übertragenen. Angesprochenes Gerät, Slave, schickt ack-Signal. Slave zieht SDA auf 0. Start der verlangten Übertragung. Stoppen mit Stoppbedingung P. Quelle: Wikipedia SW-Systemarchitektur Kap. 5

Parallele Busse, z.B. Systembus Parallele Busse gliedern sich in drei Teil-Busse auf: Datenbus: Der Datenbus dient zur Übertragung der Daten, die zwischen dem Prozessor und dem Arbeitsspeicher ausgetauscht werden sollen. Adressbus: Der Adressbus dient zur Adressierung, dem Auswählen bestimmter Speicherstellen (oder Geräte): Beim Schreiben von Daten in den Speicher werden durch die Adressierung diejenigen Speicherstellen bestimmt, in welche die Daten geschrieben werden sollen. Beim Lesen von Daten aus dem Speicher werden durch die Adressierung diejenigen Speicherstellen bestimmt, aus denen die Daten ausgelesen werden sollen Steuerbus: Der Steuerbus steuert die Datenübertragung SW-Systemarchitektur Kap. 5

Der Steuerbus steuert die Datenübertragung. Daten in den Speicher schreiben: steigende Flanke auf der Schreibleitung: auf dem Datenbus befindlichen Daten sind gültig und können vom Speicher übernommen werden können. die auf dem Adressbus befindliche Adresse ist gültig und kann vom Speicher verwendet werden. der Schreibvorgang soll jetzt durchgeführt werden. Daten aus dem Speicher lesen: steigende Flanke auf der Leseleitung: der Lesevorgang soll jetzt durchgeführt werden. Speicher legt Daten auf den Datenbus. Wenn der Prozessor Daten aus dem Speicher liest, übernimmt er bei der steigenden Flanke auf der Leseleitung die auf dem Datenbus anliegenden Daten und speichert sie intern ab. SW-Systemarchitektur Kap. 5

Handshake-Protokoll Master möchte Daten aus Speicher an einer bestimmten Adresse bekommen Master MReq Slave Read MSyn Master legt Adresse auf address aktiviert MReq und Read Master aktiviert MSyn SSyn addres data 3. Slave sieht, dass MSyn aktiv legt Daten auf data und aktiviert SSyn “Daten bereit und gültig Master liest Daten von data deaktiviert MSyn Read Slave bereit für nächsten Übertragungswunsch MSyn Handshake-Protokoll (bei mehreren Slaves mit unterschiedlichen Antwortzeiten – braucht Synchronisations-Leitungen) address data SSyn SW-Systemarchitektur Kap. 5

Schreiben über den parallelen Bus SW-Systemarchitektur Kap. 5 Quelle: K. Diepold

Lesen über den parallelen Bus SW-Systemarchitektur Kap. 5 Quelle: K. Diepold

Mehrere Busse, durch Brücken (bridges) verbunden 3-Bus-System, z.B. im PC Mehrere Busse, durch Brücken (bridges) verbunden SW-Systemarchitektur Kap. 5

5.4 Ein-/Ausgabe Verbindung zur Außenwelt ! Aufgaben sind z.B.: Laden von Programmen und Daten in Speicher Ausgabe von Resultaten auf Bildschirm, Drucker, Festplatte, Diskette... SW-Systemarchitektur Kap. 5

Ansteuerung Ansteuerung von Ein-/Ausgabeeinheiten (Peripheriegeräte) z.B. durch: Videocontroller (Bildschirm) Plattencontroller (Festplatte) Tastatur-Prozessoren Netzwerkschnittstellen usw. SW-Systemarchitektur Kap. 5

Ansteuerung Festplatte Bildschirm Tastatur Plattencontroller Videocontroller Tastaturproz. CPU Netzwerk-Interface Netzwerk Ansteuerung von Ein-/Ausgabegeräten (Peripheriegeräte), z.B. durch: Videocontroller (Bildschirm) Plattencontroller (Festplatte) Tastatur-Prozessoren Netzwerkschnittstellen usw. Netzwerk-Interface CPU‘ SW-Systemarchitektur Kap. 5

Ein-/Ausgabe-Schnittstelle: Adressierung Prozessor kommuniziert mit Peripheriegeräten über einige seiner Pins Port-basierte E/A (parallele E/A) Prozessor hat evtl. mehrere N-bit-Ports, verbunden mit speziellen Registern und gewidmet speziellen Geräten. Programme lesen und schreiben Ports wie Register. Bus-basierte E/A Prozessor kommuniziert mit allen Peripheriegeräten über einen Bus, der aus Adressen-, Daten- und Steuerungsleitungen zusammengesetzt ist. Protokoll eingebaut in Prozessor. Ein Befehl führt Lese- bzw. Schreib-Protokoll auf dem Bus aus. SW-Systemarchitektur Kap. 5

Typen von Bus-basierter E/A Prozessor kommuniziert mit Speicher und Peripherie über denselben Bus – Alternativen: Memory-mapped E/A Register von Peripheriegeräten belegen Adressen im Speicher z.B. Bus hat 16-bit-Adresse niedrigen 32K Adressen sind Speicheradressen höheren 32k Adressen sind Geräteadressen Standard E/A Zusätzlicher Pin (M/IO) auf dem Bus gibt an, ob es ein Speicher- oder eine Gerätezugriff ist. alle 64K Adressen sprechen Speicher an, wenn M/IO auf 0 gesetzt alle 64K Adressen sprechen Geräte an, wenn M/IO auf 1 gesetzt SW-Systemarchitektur Kap. 5

Memory-mapped E/A vs. Standard E/A Benötigt keine zusätzlichen Befehle Befehle mit Effekt auf Speicher wie MOV und Load, Store funktionieren auch auf der Peripherie Standard E/A benötigt spezielle Befehle, um Daten zwischen Peripherie-Registern und dem Speicher umzuspeichern Standard E/A Keine Speicheradressen für Peripherie aufzugeben, Einfachere Adress-Dekodier-Logik in Peripherie-Geräten möglich kleinere und/oder schnellere Vergleicher SW-Systemarchitektur Kap. 5

Ein-/Ausgabe-Schnittstelle: Polling Annahme: Ein Peripherie-Gerät, z.B. ein Sensor, erhält mit Unterbrechungen Daten, welche vom Prozessor weiter verarbeitet werden müssen. Prozessor kann das Peripheriegerät periodisch auf angekommene Daten abfragen (polling) evtl. großer Aufwand, wenn zu häufig ausgeführt, evtl. fehlerhaft, wenn nicht häufig genug ausgeführt – Berechnungen werden mit veralteten Daten durchgeführt. Bei regelungstechnischen Anwendungen evtl. Steuerung in falsche Richtung. In sicherheits- und zeitkritischen Systemen Standard, wegen besserer Voraussagbarkeit! SW-Systemarchitektur Kap. 5

Ein-/Ausgabe-Schnittstelle: Unterbrechungen (Interrupts) Peripheriegerät kann den Prozessor unterbrechen (interrupt ), wenn es Daten erhalten hat - Unterbrechungs-getriebene E/A Braucht mindestens einen extra Pin: Int HW fragt Int-Pin ab. Ist Int = 1, Prozessor unterbricht laufendes Programm, springt zu einer Interrupt Service Routine (ISR) Für Echtzeitsysteme schwierig, weil nicht klar ist, wann Unterbrechung erfolgt! Minimal interarrival time muss bekannt sein! Prozessor Cache Memory - I/O Bus Haupt- speicher I/O Controller Disk Graphik Netzwerk interrupts SW-Systemarchitektur Kap. 5

Unterbrechungs-getriebene E/A Lese Daten von Peripheriegerät 1, führe Berechnungen darauf aus und schreibe Ergebnis auf Peripheriegerät 2. Prozessor wird von P1 unterbrochen bei Adresse 100. 1(a): Prozessor führt main aus 1(b): P1 erhält Eingabedaten in Register mit Adresse 0x8000. Zeit 2: P1 aktiviert Int , um Übergabe der Daten an Prozessor zu verlangen. 3: Nachdem Prozessor den Befehl an Adresse 100 abgeschlossen hat, sieht er Int aktiviert, rettet des Stand des PC’s (100), und setzt den PC auf die Adresse der ISR (16). 4(a): Die ISR liest die Daten von 0x8000, rechnet und schreibt Resultat auf 0x8001. 4(b): Nachdem P1 gelesen wuirde, desaktiviert P1 Int. 5: Die ISR kehrt zurück, setzt PC auf 100+1=101, wo der Prozessor main weiter ausführt. SW-Systemarchitektur Kap. 5