4.5 Ein-/Ausgabe (E/A) - engl. input/output (I/O) -



Ähnliche Dokumente
Rechnerstrukturen, Teil 2

2.5 Kommunikation, Ein-/Ausgabe (E/A) - engl. Communication, input/output (I/O) -

2.5 Kommunikation, Ein-/Ausgabe (E/A) - engl. Communication, input/output (I/O) - Peter Marwedel

5. Digitale Schnittstellen und Vernetzung im Überblick

Die allerwichtigsten Raid Systeme

serielle Schnittstelle/USB-Schnittstelle für das Velbus-System

DST EINFÜHRUNG IN MRT (V2)

Synchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73

Kommunikation mehrerer PCs über Hubs

BNC-, RJ45-, und Glasfaser- Netzwerkkarten

5. PC-Architekturen und Bussysteme

USB 10/100 FAST ETHERNET. Benutzerhandbuch

1 Aufgaben zu Wie funktioniert ein Computer?

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Schnittstellen des Computers

Kameras. und ihre Schnittstellen im. Vergleich! Dipl.-Inf. Michael Beising Kameras und ihre Schnittstellen 1

EasyWk DAS Schwimmwettkampfprogramm

Serielle Schnittstellen

Highlights. Features 7.0. LwLVision. DVI / VGA KVM Extender DVI &VGA DVI &VGA RS 232 USB 2.0 USB 1.1

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

FttN: Wie gelangt das DSL-Signal zu Dir nach Hause? KVz. HVt

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

Themen. MAC Teilschicht. Ethernet. Stefan Szalowski Rechnernetze MAC Teilschicht

Befehlssatz zum High Speed Interface-88-USB (HSI-88-USB) (ab Firmware 0.71) (Version 1.2)

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff

Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung

Teil VIII Von Neumann Rechner 1

web: CAD/CAM-Systeme Entwicklung Beratung Vertrieb Kundenbetreuung Service für Werkzeugmaschinen

Manchester Codierung sowie Differenzielle Manchester Codierung

T est of 1GBit/s Fiber optical communication interfaces based on FlexRIO R Series

Hardware Leitungscodierung und Protokoll

Hardware Leitungscodierung und Protokoll

INES-Webserver. Damit gehen Ihre Geräte und Anlagen online. 1 Inhalt

Mit lebenslanger StarTech.com-Garantie sowie lebenslanger kostenloser technischer Unterstützung.

Staatlich geprüfter EDV-Führerschein

Kurzanleitung. Kurzanleitung. Version.

Handbuch PCI Treiber-Installation

Treiberhandbuch Siemens S7

HorstBox (DVA-G3342SD) Anleitung zur Einrichtung der Telefonie

Elexis - Afinion AS100 Connector

Anleitung zur Nutzung des SharePort Utility

Lizenzen auschecken. Was ist zu tun?

Tipps und Tricks zur Installation von Java-basierten Programmen auf Handys

USB 2.0 PCI-Karte mit NEC CHIPSATZ

6. Peripheriegeräte und Schnittstellen

Inhalt: 1. Layer 1 (Physikalische Schicht) 2. Layer 2 (Sicherungsschicht) 3. Layer 3 (Vermittlungsschicht) 4. Layer 4 (Transportschicht) 5.

[Netzwerke unter Windows] Grundlagen. M. Polat

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Computergruppe Heimerdingen Basiskurs. Karlheinz Wanja & Richard Zeitler

Kabeltyp: STP. Shielded Twisted Pair (Schirmung um jedes Adernpaar plus Gesamtschirm)

Kapitel 6 Anfragebearbeitung

Installation eines BM-33k6/ISDN pro USB an einem Windows XP-Rechner

4D Server v12 64-bit Version BETA VERSION

Rechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor.

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP

Systemanforderungen für MSI-Reifen Release 7

Mikrocontroller Grundlagen. Markus Koch April 2011

Zunächst empfehlen wir Ihnen die bestehenden Daten Ihres Gerätes auf USB oder im internen Speicher des Gerätes zu sichern.

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Swisscom TV Medien Assistent

USB 2.0 Sharing Switch

All People Seem To Need Data Processing: Application Presentation - Session Transport Network Data-Link - Physical

2. Braunschweiger Linux-Tage. Vortrag über RAID. von. Thomas King Braunschweiger Linux-Tage Seite 1/16

i-tec USB 3.0 Gigabit Ethernet Adapter Gebrauchsanweisung

Digital Web-Monitoring Digitales Web-Monitoring

Kapitel 7 TCP/IP-Konfiguration zum Drucken (Windows NT 4.0)

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

Betriebssysteme K_Kap11C: Diskquota, Raid

NuVinci Harmony Software und Firmware. Anleitung in deutscher Sprache

Easy-Monitoring Universelle Sensor Kommunikations und Monitoring Plattform

Bedienungsanleitung Version 1.0

Einrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000

EKF Software Server. Handbuch. Version 2.1. Hersteller: 2008 mesics gmbh Berliner Platz Münster info@mesics.de

Ethernet Applikation Guide

2.5 Kommunikation, Ein-/Ausgabe (E/A) - engl. Communication, input/output (I/O) - Peter Marwedel

Computeranwendung in der Chemie Informatik für Chemiker(innen) 4. Netzwerke

Wir bringen Ihre USB Geräte ins Netz Ohne Wenn und Aber!

trivum Multiroom System Konfigurations- Anleitung Erstellen eines RS232 Protokolls am Bespiel eines Marantz SR7005

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

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

MO1 <logo otra empresa> MO1Sync Installationshandbuch MO1. MO1Sync Installationshandbuch -1-

Leistungsbeschreibung ADSL

MicroLink dlan Starter Kit Ethernet/USB

Migration zum 40-Gbit/s-Rechenzentrum mit QSFP-BiDi-Technologie von Cisco

3 TECHNISCHER HINTERGRUND

Peripherie Komplexe serielle Schnittstellen

Quanton Manual (de) Datum: URL: )

Theoretische Informatik SS 04 Übung 1

Schnelleinstieg Starter System. Version 3.2

CHIPDRIVE Zeiterfassungs-Gerät Anleitung

Speichernetze (Storage Area Networks, SANs)

Fragen zur GridVis MSSQL-Server

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

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

Das neue Volume-Flag S (Scannen erforderlich)

Booster Box. Kurzanleitung. FAPr-hsp 5110

Bedienungs- & Installationsanleitung COMMPACT / COMMPACT Audio V2.0

Transkript:

4.5 Ein-/Ausgabe (E/A) - engl. input/output (I/O) - Prozessor E/A-Geräte Leitwerk Rechenwerk Speicher E/A-Steuerungen (controller) E/A-Einheiten Peter Marwedel Informatik 12, Verbindungsnetzwerk

Wie sieht das Verbindungsnetzwerk aus? Bussysteme, Bustopologien Wie sieht das Verbindungsnetzwerk aus? Wie adressiert man die E/A-Geräte und deren Steuerungen? Busse mit oder ohne Bestätigung? Wie stimmt man die Geschwindigkeit der E/A-Geräte mit der des Prozessors ab? Viele Entwurfsbeschränkungen: Geschwindigkeit Kosten Kompatibilität... viele Bus-Topologien. Ein-/Ausgabe - 2 -

1. Ein einziger Bus Prozessor Speicher GeräteSteuerung E/A-Gerät Sehr einfach; Motiviert u.a. durch Pinbeschränkungen; Enge Kopplung von Speicher- und E/A-Spezifikationen; Eingeschränkte Parallelarbeit. Ein-/Ausgabe - 3 -

2. Einstufiger Adapter zum Übergang auf E/A-Bus Adresse <0x4000? lese 0x400 lese 0x4000 Speicherbus Adresse 0x4000? E/A-Bus Adapter Prozessor Speicher lese 0x400 lese 0x4000 GeräteSteuerung lese 0x400 E/AGerät lese 0x400 Spezielle Speicheradressen oder Kontrollleitung IO/Memory. Speicherbus ggf. mit größerer Wortbreite; höhere Geschwindigkeit. Ein-/Ausgabe - 4 -

L2Cache L1-Cache Prozessor 3. Grundstruktur der ersten PCI-basierten Systeme ROM-Bios SpeicherBus schnell Host2 PCIBridge PCI-Bus Hierarchie! Speicher PCI2ISABridge PCISteckplatz Drucker LPTController Bildschirm Platten EIDEInterface GraphikController & -Speicher Maus/Tastatur COM1/C OM2 mittelschnell ISASteckplatz ISA-Bus Ein-/Ausgabe - 5langsam

4. Grundstruktur späterer PCI-basierter Systeme Prozessor Graphikkarte Graphikbus (AGP 4x) front side bus Northbridge memory bus (PC266, PC400) PCIBus ISA ATA 33/66/100 BIOS ROM USB Keyboard Mouse Southbridge SDRAM Clock buffer Clock generator Power Plane control, GPIO, ACPI Events Ein-/Ausgabe - 6 -

Wo sind diese Komponenten auf dem Board? Prozessor front side b us Graphikbus (AGP 4x) Graphikkarte Northb ridge Speicher SDRAM Clock b uffer PCIBus ISA ATA 33/66/100 BIOS ROM USB Keyboard Mouse memory b us (PC266, PC400) Southbridge Clock generator Power Plane control, GPIO, ACPI Events Prozessor Northbridge AGP-Karte PCI-Karten Ein-/Ausgabe - 7 -

5. PCI-Express Möglichkeit der Vermeidung eines Busses, an den mehrere Karten angeschlossen sind und die gegenseitig die Geschwindigkeit begrenzen. Ein-/Ausgabe - 8 -

6. Vollständig separate Speicher- und E/ABusse (Großrechner) Der Speicher ist MultiportSpeicher, und es ex. Kanäle, welche ohne CPU-Belastung Daten zwischen Speicher und E/ASteuerungen transportieren & eigene Programme ausführen. Ein-/Ausgabe - 9 -

zserie (IBM) Kanäle als system assist processors (SAPs) realisiert. Gemeinsam genutzter L2-Cache verbindet 20 Prozessoren (16 CPUs, 3 SAPs, 1 Reserveprozessor) + 4 I/O-Hubs. Prozessoren, L2-Cache, I/O-Hubs befinden sich auf MCM. Jede CPU, und jeder SAP hat Bandbreite von 14,5 GByte/s mit einer Zugfriffszeit von 20 ns zum L2-Cache. Bandbreite des Hauptspeichers beträgt 29 GByte/s. Bandbreite für alle I/O-Hubs insges. theoretisch 36 GByte/s, davon 29 GByte/s praktisch realisierbar. I/O-Prozessoren können Aufträge von verschiedenen Betriebssystemen entgegennehmen. Komponenten auf Zuverlässigkeit von 99,999 % ausgelegt. Ein-/Ausgabe - 10 -

Adressierung Wie sieht das Verbindungsnetzwerk aus? Wie adressiert man die E/A-Geräte und deren Steuerungen? Busse mit oder ohne Bestätigung? Wie stimmt man die Geschwindigkeit der E/A-Geräte mit der des Prozessors ab? 2 Techniken: 1. Speicherbezogene Adressierung 2. Eigene E/A-Adressen Ein-/Ausgabe - 11 -

1. Speicherbezogene Adressierung (memory mapped I/O) Geräte erhalten spezielle Speicheradressen, Kommunikation mittels load- und store-befehlen, Prozessoren ohne separate Speicher- und E/A-Schnittstelle; Trennung in E/A- und Speicherbus nur über Busadapter 0 Adressraum: load = Eingabe; store = Ausgabe E/AAdressbereich Muss von Caching ausgenommen werden. Beispiel: MIPS-Maschine wie bei SPIM realisiert Ein-/Ausgabe - 12 -

Eigenschaften speicherbezogener E/A-Adressierung Vorteile: Großer E/A-Adressraum aufwandsarm, Wenig Festlegung beim Prozessorentwurf, Keine separaten E/A-Befehle notwendig; kleiner Befehlssatz. Nachteile: Besonderes E/A-Timing nur über Busadapter möglich, Zugriffsschutz auf E/A-Geräte nur über Speicherverwaltung. Ein-/Ausgabe - 13 -

2. Separate E/A-Adressen Speicheradressraum E/A-Adressraum 0 0 in = Eingabe; out = Ausgabe Umkehrung von Vor- und Nachteilen der speicherbezogenen Adressierung. Prozessoren mit E/AAdressen können auch speicherbezogene Adressierung nutzen. Beispiel: Intel x86/pentium-familie. Ein-/Ausgabe - 14 -

4.5.1.3 Synchrone und asynchrone Busse Wie sieht das Verbindungsnetzwerk aus? Wie adressiert man die E/A-Geräte und deren Steuerungen? Busse mit oder ohne Bestätigung? Wie stimmt man die Geschwindigkeit der E/A-Geräte mit der des Prozessors ab? Unterscheidung zwischen: unidirektionalem Timing (bei synchronen Bussen) und bidirektionalem Timing (bei asynchronen Bussen). Ein-/Ausgabe - 15 -

Synchrone und asynchrone Busse Unterscheidung basiert auf Unterscheidung zwischen unidirektionalem Timing (bei synchronen Bussen) und bidirektionalem Timing (bei asynchronen Bussen). Unidirektionales Timing: Kommunikationspartner verlassen sich darauf, dass Partner innerhalb festgelegter Zeit reagieren. Bidirektionales Timing: Kommunikationspartner bestätigen per Kontrollsignal (senden ein acknowledgement), dass sie in der erwarteten Weise reagiert haben. Ein-/Ausgabe - 16 -

Schreiben beim synchronen Bus Sender Empfänger Prinzip: ungültig gültig ungültig Daten Schreibanforderung (write request, Übernahme der Daten innerhalb maximaler write strobe) Zeit nach Flanke der Schreibanforderung Sender verlässt sich darauf, dass der Empfänger die Daten annimmt. Alle Signale laufen vom Sender zum Empfänger schnell. Ein-/Ausgabe - 17 -

Schreiben beim synchronen Bus - mit Adressleitungen Sender Empfänger ungültig gültig ungültig ungültig gültig ungültig Daten Adressen Read/Write address strobe (AS) Übernahme der Daten Ein-/Ausgabe - 18 -

Lesen beim synchronen Bus Empfänger (initiiert) Sender Leseanforderung (read request) evtl. für Adressen: ungültig ungültig gültig ungültig gültig ungültig Daten Übernahme der Daten beim Empfänger Empfänger und Sender verlassen sich auf verabredete Zeiten. 2 Signallaufzeiten. Ein-/Ausgabe - 19 -

Schreiben beim asynchronen Bus Sender ungültig Empfänger gültig ungültig Daten Schreibanforderung (write request) Bestätigung (acknowledgement, ACK) Übernahme der Daten beim Empfänger Der Sender muss Daten gültig halten, bis Bestätigung eintrifft. Bis zu 4 Signallaufzeiten langsam. Ein-/Ausgabe - 20 -

Schreiben beim asynchronen Bus - mit Adressleitungen Sender Adressen Empfänger ungültig gültig ungültig ungültig gültig ungültig Read/W rite Daten address strobe (AS) Bestätigung (acknowledgement, ACK) Übernahme der Daten beim Empfänger Ein-/Ausgabe - 21 -

Lesen beim asynchronen Bus - mit Adressleitungen Empfänger ungültig Adressen gültig Sender ungültig Read/W rite address strobe (AS) ungültig gültig ungültig Daten Bestätigung (ACK) Sender muss Daten gültig halten, bis Bestätigung eintrifft. Mehrere Laufzeiten. Ein-/Ausgabe - 22 -

Beispielhaftes Zustandsdiagramm eines asynchronen Busses für das Lesen Empfänger Leseanforderung, z.b. durch Prozessor ACK='1' ACK='0' Adressen anlegen AS:='1 Sender AS='0' Start Datenleitungen freigeben ACK:='0' ACK='1' AS='1' Daten übernehmen AS:='0 ACK='0' Adressen übernehmen ACK:='0' Adressleitungen freigeben AS:='0 Start AS='1' Daten anlegen ACK:='1' AS='0' Adressen Daten Leseanforderung (AS) acknowledgement (ACK) Übernahme der Daten beim Empfänger Ein-/Ausgabe - 23 -

Sender und Empfänger als kommunizierende Automaten Sender und Empfänger stellen jeweils einen Automaten dar, der die Bussignale erzeugt. Diese Automaten kommunizieren bzw. synchronisieren sich über die Steuersignale wie address strobe (AS) und acknowledge (ACK). Ein-/Ausgabe - 24 -

Vergleich der beiden Methoden Vorteile Nachteile unidirektional einfach; bei konstanten Antwortzeiten schnell Kommunikationspartner muss in bestimmter Zeit antworten synchrone Busse, Speicherbusse bidirektional passt sich unterschiedlichen Geschwindigkeiten an komplexer; Zeitüberwachung notwendig; evtl. langsam asynchrone Busse, E/A- und Peripheriebusse Ein-/Ausgabe - 25 -

Ablauf der Kommunikation zwischen CPU und Gerätesteuerungen Wie sieht das Verbindungsnetzwerk aus? Wie adressiert man die E/A-Geräte und deren Steuerungen? Busse mit oder ohne Bestätigung? Wie stimmt man die Geschwindigkeit der E/A-Geräte mit der des Prozessors ab? Techniken: 1. Direkte Ein-/Ausgabe (Immediate devices) 2. Status-Methode (busy waiting) 3. Polling 4. Interrupts 5. Direct memory access (DMA) Programmed I/O Ein-/Ausgabe - 26 -

1. Direkte Ein-/Ausgabe (immediate devices) In manchen Fällen: keine Synchronisation erforderlich, weil die Geräte immer zu Ein- und Ausgaben bereit sind und weil die Häufigkeit des Lesens bzw. Schreibens unwichtig ist. Beispiele: Setzen von Schaltern/Lämpchen Ausgabe an Digital/Analog-Wandler Schreiben in Puffer Setzen von Kontrollregistern Programmieren: load- bzw. input-befehl zur Eingabe store bzw. output-befehl zur Ausgabe Ein-/Ausgabe - 27 -

2. Status-Methode (Busy waiting) - Hardwarestruktur Das Gerät- bzw. die Steuerung stellt Bereit-Bit zur Verfügung. Beispiel: Prozessor '1' '0' 5555 7777 Gerätesteuerung lw- oder in-befehl. Statusregister Adresse 1 Bus Datenregister Adresse 55552 7777 Kontrollregister (Optionen) Adresse 3 Gerät Ein-/Ausgabe - 28 -

Status-Methode (Busy waiting) - Prinzip der Warteschleife Das Bereit -Bit wird in einer Warteschleife abgeprüft, bis nach Anzeige eines entsprechenden Werts die Ein- bzw. Ausgabe erfolgen kann. Prinzip: REPEAT REPEAT lese Statuswort des Gerätes UNTIL Bereit-Bit im Statuswort ist gesetzt; lese Datenwort; erhöhe Blockzeiger; UNTIL Ende des Blocks ist erreicht; Prozessor bleibt während des Wartens beschäftigt (busy). wait nein Neue Daten? ja Daten einlesen, Zeiger erhöhen nein Blockende? ja Ein-/Ausgabe - 29 -

Status-Methode (Busy waiting) - Assembler-Programm für die 80x86-Familie % Register B enthalte die Blocklänge % H&L enthalte die Anfangsadresse wait: IN 1 % A:= Gerätestatus CPI ready % Z:= Bereit-Bit JNZ wait % if nicht bereit then goto wait IN 2 % A := Datenregister der Steuerung MOV M, A % Speicher[(H&L)] := A INX H % (H&L) := (H&L)+1 DCR B % B:= B-1; Z:= (B=0); JNZ wait % if Z<> 0 then goto wait continue: % Block eingelesen Ein-/Ausgabe - 30 -

Terminal I/O in SPIM SPIM simuliert Ein-/Ausgaben zum Terminal (s. Skript, Anhang B): ready receiver control (0xFFFF0000) interrupt enable received byte receiver data (0xFFFF0004) ready transmitter control (0xFFFF0008) interrupt enable transmitted byte transmitter data (0xFFFF000c) SPIM Ein-/Ausgabe - 31 -

Eigenschaften der busy waiting Methode Nachteile: Keine Möglichkeit der verzahnten Bearbeitung anderer Aufgaben. Geringe Übertragungsgeschwindigkeit. Anwendung: Wenn keine anderen Aufgaben vorliegen. Wenn das Gerät so schnell ist, dass die Schleife selten durchlaufen wird und für die Umschaltung auf andere Aufgaben keine Zeit bleibt. Wenn das Gerät zu keiner anderen Methode fähig ist. Ein-/Ausgabe - 32 -

Polling Polling = gelegentliches Prüfen des Bereit-Bits mit verzahnter Bearbeitung anderer Aufgaben. Anwendungsbeispiel: Erfassung von Übertragungswünschen einer großen Anzahl von Geräten: Prozessor Gerät Gerät... Gerät Erlaubt eine gerechte Bedienung vieler Geräte (z.b. Terminals oder USB-Geräte). Vermeidet Überlastungen durch viele Übertragungswünsche; Vorteilhaft bei denial-of-serviceangriffen; unter Umständen große Reaktionszeit. Ein-/Ausgabe - 33 -

Unterbrechungen (1) Gerätesteuerung unterbricht den Prozessor, falls Datentransport(e) erforderlich werden oder falls Fehler auftreten. Neuer Prozess Prozess A Dispatcher Betriebssystem BS-Aufruf E/A-Ende-Interrupt E/A-Daten-Interrupt... Stromausfall Priorität Zeit Ein-/Ausgabe - 34 -

Ablauf Prozess A überträgt E/A-Auftrag an das Betriebssystem. Dispatcher schaltet auf neuen Prozess um. Gerät sendet Interrupt. Falls Interrupt nicht gesperrt ist und die Priorität ausreichend hoch ist und der laufende Maschinenbefehl abgeschlossen ist: Sicherung des Zustandes (Software oder Mikroprogramm). Feststellen der Interrupt-Ursache (ggf. vectored interrupt). Datentransport: Ein-/Ausgabe, Lesen/Schreiben Speicher, Pufferzeiger erhöhen, Test auf Blockende. Restaurieren des Kontexts, return from interrupt. Prozess fährt in Bearbeitung fort. Nach einer Reihe von Datenübertragungsinterrupts erfolgt ein Blockende-Interrupt welcher den Dispatcher startet. Neuer Prozess Prozess A Dispatcher Betriebssystem BS-Aufruf E/A-Ende-Interrupt E/A-Daten-Interrupt Ein-/Ausgabe - 35 -

Eigenschaften Wegen des Overheads nicht für die schnelle Datenübertragung geeignet (<< 100 k Interrupts/sec). Zu programmieren: Starten der Geräte vor der Übertragung. Übertragung per Interrupt-Routine. Anwendungen: Häufig zur Übertragung zum Drucker eingesetzt. Für Rechner ohne direct memory access (s.u.) ist diese Methode erforderlich. Ein-/Ausgabe - 36 -

Direct memory access (DMA) & Buszuteilung Beim direct memory access (DMA) werden die Datentransporte direkt zwischen Gerätesteuerung und Speicher durchgeführt, ohne Beteiligung des Prozessors. Bislang: nur der Prozessor hat die volle Kontrolle über den Bus (legt Adressen an und erzeugt Kontrollsignale,..), andere Einheiten dürfen nur auf seine Anforderung tätig werden. Diese Funktion des Prozessors heißt Bus-Master-Funktion. DMA macht es erforderlich, dass Gerätesteuerungen BusMaster werden können. Die Vergabe der Bus-Master-Funktion an einen Bewerber heisst Buszuteilung (bus arbitration). Ein-/Ausgabe - 37 -

Direct memory access (DMA) - Beispiel: Motorola 68000er Prozessoren read/write address strobe Adressen Daten bus grant acknowledge bus grant bus request Prozessor Ablauf: Speicher DMA-fähige Gerätesteuerung (controller) Gerät Gelesenes Wort liegt vor controller setzt bus request Buszuteilung (einfacher Prozessor setzt bus grant, wenn bereit Fall, ohne W ettbewerb) controller setzt bus grant acknowledge bus grant wird zurückgenommen controller belegt Adress- und Datenbus controller ist bus master controller setzt address strobe Speicher übernimmt Information vom Datenbus controller löscht bus grant acknowledge, erhöht Pufferzeiger, prüft auf Ende Prozessor kann Bus wieder benutzen. Ein-/Ausgabe - 38 -

Eigenschaften der DMA-Technik Bessere Datenrate: mehrere Datenworte en bloc über den Bus übertragen (block mode), ohne neue Buszuteilung. Besonders sinnvoll, falls die Geräte selbst Puffer haben (z.b. track buffer bei Plattenlaufwerken). Zu programmieren: Initialisierung der DMA-Hardware Ende-Behandlung Fehlerbehandlung Aus Programmierersicht ist DMA die einfachste Technik. Ein-/Ausgabe - 39 -

Buszuteilung Wie entscheidet man bei der Busvergabe im Fall von mehreren Wettbewerbern? Methoden der Buszuteilung (bus arbitration): 1. Daisy chaining (Gänseblümchen-Verkettung) 2. Centralized, parallel arbitration Siehe auch: Hennessy/ Patterson 3. Distributed arbitration by self selection 4. Distributed arbitration by collision detection 5. Token ring, token bus, weitere LAN-Verfahren (siehe Abschnitt 4.5.4.4) Ein-/Ausgabe - 40 -

Daisy chaining (Gänseblümchen-Verkettung) Relative Position der Controller am Bus bestimmt Zuteilung. Prozessor Interrupt-Bestätigung der Priorität 5 A3 A2 A1 FC02 FC01 FC00 Gewünschte Priorität ACK & 5 Prioritäts- encoder ('0'= request) Blockierung von ACK bei eigenem Int-Wunsch 0 1 2 3 4 5 6 7 1 '1' 1 K K1 2 INT1 INT2 Oder-Verknüpfung der Wünsche der Priorität 5 Daisy chaining ist einfach, aber nicht fair (controller können ggf. nie die Zuteilung bekommen ( verhungern )). Ein-/Ausgabe - 41 -

Centralized, parallel arbitration... multiple request lines,... devices independently request the bus [HP95] request acknowledge Arbiter K1 request acknowledge K2 request acknowledge K3 Central arbiter... may become the bottleneck for bus usage [HP95] Ein-/Ausgabe - 42 -

Distributed arbitration by self selection These schemes also use multiple request lines, but the devices requesting bus access determine who will be granted access. [HP96] 7 6 5 4 3 2 '1' 1 '1' 0 '0' '1' '0''0' & request '1' K2 & request '1' K3 D a t e n b u s '0'=request, unbenutzte Leitungen (über Widerstand) auf '1' gesetzt. Phase, in der Datenbus für abitration benutzt wird. Ein eigener request erscheint nur dann als '0' auf dem Bus, wenn kein W unsch einer höheren Priorität auf dem Bus angemeldet ist. Max. Anzahl der controller = Anzahl der Datenleitungen. Anwendungsbeispiel: SCSI. Ein-/Ausgabe - 43 -

Distributed arbitration by collision detection In this scheme, each device independently requests the bus. Multiple simultaneous requests result in a collision. The collision is detected and a scheme for selecting among the colliding parties is used. [HP95] c't Ein-/Ausgabe - 44 -

Weitere Eigenschaften von Bussen Multiplexing von Daten und Adressen: Daten und Adressen werden nacheinander übertragen. Ziel: Einsparung von Leitungen, insbesondere bei großen (> 32 Bit) Adressräumen. Split transaction busses: Zwischen dem Senden einer Adresse und dem Lesen der Daten können weitere Aufträge abgewickelt werden. Zu diesem Zweck wird jedem Auftrag ein AuftragsIdentifikator (aus wenigen Bits) mitgegeben. Hilft beim Verstecken der Zugriffszeit (Latenzzeit) auf den Speicher. Ein-/Ausgabe - 45 -

Standardbusse Speicherbusse: schnellste Busse Lokale Busse: AT-Bus, ISA-Bus AT: Speicher- und Peripheriebus für IBM-PCs ab 1981 PCI-Bus Für Einsatz in PCs konzipiert, 32-64 Daten und Adressen AGP ( advanced graphics port ) Spezieller Bus für Graphikkarten Ein-/Ausgabe - 46 -

Charakteristische Daten von lokalen Bussen ISABus PCI-Bus PCI-100 AGP (4x) PCI-Express Einführungsjahr 1981 ~1994 Datenleitungen 8/16 32 (64) 32 (64) Adressenleitungen 20 32 (64) 32 (64) synchron/asynchron sync. sync. sync. Bustakt [MHz] 4,77 33 100 133* 2500 9,54 111 333 1000 4GB/s je Verbindung mit 16 Lanes *Nutzung beider Flanken Serielle Punkt zu PunktVerbindungen 2004 Paketvermittlung Transferrate, Einzelworte, bei Tacc=0 [MB/s] Transferrate, Blockmode, bei Tacc=0 [MB/s] Bemerkung Ein-/Ausgabe - 47 -

Datenübertragung, lokale Peripherie Netz Prozessor Speicher controller controller controller start controller Datenübertragungsraten gemessen in Bit/s oder Bytes/s. Ein-/Ausgabe - 48 -

Datenübertragung, lokale Peripherie Aus Aufwandsgründen auf parallele Übertragung von Bytes begrenzt oder generell bitserielle Übertragung Beispiele: SCSI (small computer s system interconnect) USB (universal serial bus) FireWire (IEEE 1394) Asynchrone serielle Schnittstellen Synchrone serielle Schnittstellen Ethernet Token ring Drahtlose lokale Netze Ein-/Ausgabe - 49 -

Grundsätzliche Eigenschaften des SCSI-Busses Ursprünglich für den Anschluss von Platten konzipiert. Erlaubt durch standardisierte Befehlsschnittstellen weitgehende Abstraktion vom physikalischen Medium und Entlastung des Prozessors. Jeder Teilnehmer kann Übertragung initiieren. Max.8 Anschlüsse pro Bus (16 bei wide SCSI). SCSIPlattencontroller PCI2SCSIAdapter Ext. CDROMLaufwerk SCSI-Bus PCI-Bus Ein-/Ausgabe - 50 -

Varianten des SCSI-Busses SCSI-1: Ursprüngliche Definition, für Platten; v.a. asynchron (3,3 MB/s). SCSI-2: andere Geräte, nur synchron, 10MB/s als fast SCSI. Narrow/Wide SCSI: wide SCSI ist mögliche Variante von SCSI-2 mit 16 oder 32 Datenleitungen. Fast/Ultra/Ultra2/Ultra160: Bezeichnungen für Taktrate. differenzielle (symmetrische) Signale: (PC-) übliches SCSI kodiert Werte über Spannungen zwischen einer Signalleitung und Masse (single ended, asymmetrisch). Bei differenziellen Signalen benötigt jedes Signal zwei Leitungen. Ist eine positiv gegenüber der andere, bedeutet dies eine '0', ist sie negativ, eine '1'. Bessere Störunempfindlichkeit. Ein-/Ausgabe - 51 -

Varianten des SCSI-Busses Transfer Bits [MB/s] Länge [m] Geräte, max. Übertragung SCSI-1 5 8 6 7 single-ended Fast SCSI 10 8 3 7 single-ended Fast/W ide SCSI 20 16 3 15 single-ended Ultra/Narrow 20 8 3 4 single-ended 20 8 1,5 7 single-ended 40 16 3 4 single-ended 40 16 1,5 7 single-ended 80 16 12 Ultra/Wide Ultra2/W ide differenziell Ein-/Ausgabe - 52 -

USB-Bus (Universal serial bus) Eigenschaften: Datenraten: 1,5 Mbit/s oder 12 Mbit/s (USB 1.1), 500 Mbit/s (USB 2.0) von Intel vorgestellt (2001) 3 Übertragungsmodi: max. 54 Byte, garantiert pro Zeitintervall bulk transfer, nur wenn Bandbreite vorhanden ist isochroner Transfer, zeitgenau, keine Fehlerbehandlung USB 1.1 nicht für Anschluss von Plattenlaufwerken und hochauflösenden Kameras geeignet. Ein-/Ausgabe - 53 -

Hierarchisch aufgebautes Hub-System max. 5 Hubs Ein-/Ausgabe - 54 -

Verbindungen zwischen Rechnern und Hubs Maximale Länge von 5m pro Hub Unterscheidung in Stecker vom Typ A (Rechner) und B (angeschl. Gerät) Verlängerungskabel Stecker A auf Buchse A verletzt Spezifikation. Stecker A auf Stecker A gefährlich! Ein-/Ausgabe - 55 -

Logische Anbindung an Rechner USB setzt stets einen Master (Rechner) voraus Datentransfers werden durch Polling von diesem Rechner aus eingeleitet USB-Rechner-zu-Rechner-Verbindungen nicht vorgesehen, Netzwerke nur über spezielle Brücken. Auszug aus FAQ auf //www.usb.org: Q7: You mean I can't make a direct cable connection like a null modem? A7: Correct. In fact, if you try this with an illegal A to A USB cable, you'll short the two PCs' power supplies together, possibly destroying one or both machines or causing a fire hazard. Even (if) there were no danger to the machines from the problem with two power supplies, there still wouldn't be any way to get the two PCs talking to each other, since USB doesn't support that particular kind of communication. A reasonably priced solution to handle this need is the USB bridge. Ein-/Ausgabe - 56 -

Übertragung der Informationen Serieller Bus mit differenzieller Übertragung Stromversorgung für angeschlossene Geräte NRZI-Kodierung der Daten '1' zu übertragen: Pegel bleibt erhalten '0' zu übertragen: Wechsel des Pegels Bit stuffing (Einfügen von Nullen, um Takt erzeugen zu können) Ein-/Ausgabe - 57 -

FireWire (IEEE 1394) Serieller Bus geht zurück auf Ideen ( ) von Apple 1987 Übertragungsgeschwindigkeit: IEEE 1394: 100/200/400 Mbit/s IEEE 1394b: 800/1600 Mbits/s im Entwurf: bis 4,8 Gbit/s Geeignet auch für hochauflösende Kameras, Anschluss von externen Plattenlaufwerken Erlaubt Isochron-Betrieb mit garantierten Übertragungszeiten, Echtzeit-fähig (wichtig für Audio und Video) Selbstkonfigurierend max. 63 Geräte, max. 4,5 m zwischen Geräten Keine feste Prioritätszuordnung, fair Ein-/Ausgabe - 58 -

Eigenschaften Keine externen Hubs (Geräte selbst sind Hubs) Peer-to-Peer-Verbindungen möglich (zur Realisierung von Netzwerken geeignet) Wurzelknoten wird nach Einschalten oder Reset festgelegt Jedes Gerät kann zu jedem Zeitpunkt den Bus anfordern (Anforderungen werden an Vorgängerknoten weitergereicht) Busanforderung nutzt 3. Zustand ('Z') mit aus. siehe auch: Bähring, Mikrorechnertechnik, Bd. II (3. Auflage); K. Dembrowski, Feuerdraht, c't 2/97 //www.1394ta.org Ein-/Ausgabe - 59 -

Kabel 2 verdrillte Kabelpaare 1394a: getrennte Übertragung von Daten und Takt 1394b: full-duplex Optionales 3 Adernpaar bei 6-pol. Stecker für Spannungsversorgung (8-40 V, bis 1,5 A -bis 60 W-) Nutzung des 1394-Protokolls über Gigabit-EthernetKabel? Ein-/Ausgabe - 60 -

Neue Verbindungstechnik für 1394b Ein-/Ausgabe - 61 -

Asynchrone serielle Schnittstellen Asynchrone serielle Schnittstellen sind seriell (d.h. die Bits werden nacheinander über eine Leitung übertragen) und asynchron (das bedeutet hier: der zeitliche Abstand zwischen aufeinanderfolgenden Zeichen ist variabel) Nacheinander werden folgende Werte übertragen: das Startbit: dies ist immer eine '0'. Sie dient zur Synchronisierung zwischen Sender und Empfänger [5,] 7 oder 8 Datenbits, LSB travels first Paritätsbit: gerade, ungerade oder keine Parität 1-2 Stoppbits: Mindestlänge der Pause zwischen 2 Zeichen Ein-/Ausgabe - 62 -

Format 0xF5 t variabel Star tbit LSB Star tbit LSB ='1' '0' '1' '0' '1' '1' MSB '1' = Stop '1' pbits Beispiel (8 Bit, ohne parity) Sender l Ein-/Ausgabe - 63 -

Eigenschaften Die Zeit für jeweils ein Bit richtet sich nach der Datenübertragungsrate, gemessen in Bit/s. Auf kurzen Entfernungen (im Raum) sind Übertragungsraten bis knapp oberhalb von 100 kbit/s erreichbar. Die Übertragungsraten sind bei Sender und Empfänger gleich einzustellen. Unterscheidung bezüglich Übertragungsrichtungen: Voll-Duplex-Betrieb: Übertragung in beide Richtungen gleichzeitig. Halb-Duplex-Betrieb: Übertragung in beide Richtungen, aber nur in eine zur Zeit. Simplex-Betrieb: Übertragung in eine Richtung. Ein-/Ausgabe - 64 -

V.24-Norm V.24-Standard = RS 232-Standard. Normierung der asynchronen Übertragung zwischen: einem Daten-Endgerät DEE (data terminal equipment DTE), d.h. Rechner oder Terminal, und einer Datenübertragungseinrichtung DÜE (data communication equipment DCE), z.b. einem Modem (Modulator/Demodulator). Besonderheiten bei der Übertragung zwischen zwei Rechnern. Ein-/Ausgabe - 65 -

Pins 25 pol. Stecker DEE TxD RxD DTR DSR DCD RTS CTS 2 3 20 6 8 4 5 Schnittstelle Modem 2 3 20 6 8 4 5 TxD RxD DTR DSR DCD RTS CTS Telefon, Funkstrecke Pins 9 pol. Stecker DCD 1 RxD 2 TxD 3 DTR 4 Masse 5 6 DSR 7 RTS 8 CTS 9 Ring TxD (transmit data): Sendedaten RxD (receive data): Empfangsdaten DTR (data terminal ready): DEE ist betriebsbereit DSR (data set ready): Partner ist betriebsbereit RTS (request to send): DEE möchte Daten senden CTS (clear to send): Partner kann Daten empfangen DCD (carrier detect): Partner empfängt analoges Trägersignal Ein-/Ausgabe - 66 -

Kommunikation zwischen Endgeräten ohne Hardware-Flusskontrolle Häufig steht nur eine 4-Draht Verbindung (2x Daten, 2x Masse) zur Verfügung. Verwendung: DEE TxD RxD DTR DSR DCD RTS CTS Spezielle Kabel (2/3 vertauscht) DEE 2 3 20 6 8 4 5 3 2 20 6 8 4 5 RxD TxD DTR DSR DCD RTS CTS Interpretation: Wenn die DEE eingeschaltet ist, nimmt sie an, der Partner ist es auch. Bei Sendewunsch über RTS erfolgt über CTS sofort die Bestätigung. keine Prüfung auf Überlastung. Masse Zur Absicherung gegen Überlastung Benutzung einer SoftwareFlusskontrolle (handshaking, z.b. mit S und Q). Ein-/Ausgabe - 67 -

Eigenschaften der Software-Flusskontrolle Zur Absicherung gegen Überlastung Benutzung einer Software-Flusskontrolle (z.b. mit S und Q). +: geringe Anzahl von Leitungen -: S, Q dürfen in Daten nicht vorkommen, -: Bei Überlast können weitere Zeichen zu spät kommen oder ganz verloren gehen. Ein-/Ausgabe - 68 -

Kommunikation zwischen zwei Endgeräten mit Hardware-Flusskontrolle (handshaking) Bei Anschluss von DEE an Modem: alle Anschlüsse mit gleicher Nummer miteinander verbunden. Passt nicht bei Verbindung 2er DEE (z.b. Rechner). Mögliche Lösung mit Hardware-Flusskontrolle: DEE DEE TxD RxD DTR DSR DCD RTS CTS 2 3 20 6 8 4 5 3 2 8 6 20 4 5 Interpretation: RxD TxD DCD DSR DTR RTS CTS Senden setzt voraus, dass Partner über DTR seine Bereitschaft zum Empfang von Daten signalisiert. CTS, RTS: Mitteilung eines Übertragungswunsches und der Empfangsbereitschaft; Pins z.tl. offen oder kreuzweise verbund. Masse Neben den durchverbundenen Kabeln ( Verlängerungskabeln ) weitere Kabelsorte ( Nullmodemkabel ). Ein-/Ausgabe - 69 -

Weitere Versionen des Hardware-Handshaking DEE DEE TxD RxD DTR DSR DCD RTS CTS 2 3 20 6 8 4 5 3 2 6 8 20 4 5 RxD TxD DCD DSR DTR RTS CTS Masse TxD RxD DTR DSR DCD RTS CTS 2 3 20 6 8 4 5 3 2 8 6 20 4 5 RxD TxD DCD DSR DTR RTS CTS Masse RTS signalisiert hier Empfangsbereitschaft. Passt nicht zur ursprünglichen Definition. Vom Veranstalter erworbenes Kabel; gemäß Durchtesten; passt für die beiden o.a. Versionen. Ein-/Ausgabe - 70 -

Synchrone serielle Schnittstellen Synchrone serielle Schnittstellen sind seriell und synchron (das bedeutet hier: der zeitliche Abstand zwischen aufeinanderfolgenden Zeichen ist fest); Der Abstand zwischen benachbarten Blöcken bleibt variabel. Vor einem neuen Block ist jeweils eine Synchronisation (Abstimmung der Lage und exakten Länge der Zeitfenster der einzelnen Bits) durchzuführen*. Dazu werden bestimmte Synchronisationsbytes benutzt. Synch.bytes Block 1 variable Lücke Block 2 * Entsprechend der Synchronisation vor jedem Zeichen bei der asynchronen Übertragung Ein-/Ausgabe - 71 -

Unterscheidung zwischen zeichenorientierter und bitorientierter Übertragung Dürfen beliebige Zeichen in den Daten selbst vorkommen? 1. zeichenorientierte Übertragung : nein 2. bitorientierte Übertragung : ja Ein-/Ausgabe - 72 -

Die zeichenorientierte Übertragung Format synch(1) synch(2) Synch. byte n-mal STX start of text Daten Daten etx verboten, stx & synch evtl. auch ETX end of text BCC block check character Es wird immer eine durch 8 teilbare Anzahl von Bits übertragen byte- bzw. zeichenorientierte Übertragung. Funktioniert mit byteorientierter Hardware. Kein Problem bei der Übertragung von Textdateien (STX, ETX, SYNCH sind keine druckbaren Zeichen), Problem bei Übertragung beliebiger Dateien. Ein-/Ausgabe - 73 -

Bitorientierte Übertragung Format 01111110 n-mal Empf.Adr Steuerfeld Daten Daten Einsatz von bitstuffing FCS 01111110 frame check character Beim Sender: innerhalb der Daten wird nach jeweils 5 Einsen eine '0' eingefügt (bit stuffing). Beim Empfänger: nach 5 x '1': folgt '0', so wird sie ausgefügt, folgt '1', so ist der Block zu Ende. Es wird nicht immer eine durch 8 teilbare Anzahl von Bits übertragen bitorientierte Übertragung (HDLC ISDN). Ein-/Ausgabe - 74 -

Ethernet Arbitrierungsverfahren (fast) wie beim Äther : jeder sendet, wenn er meint, der Äther sei frei, und zieht sich zurück, wenn es eine Kollision gibt carrier sense multiple access/collision detect (CSMA/CD) Reduktion der effektiven Datenrate durch Kollisionen. 10 Mbit-Ethernet 10BASE5, Thick Wire Max. 500m lang, dickes Koaxial-Kabel, an Anschlussstellen durchbohrt, an den Anschlussstellen Transceiver (Transmitter/Receiver), Kabel vom Transceiver zum Rechner Ein-/Ausgabe - 75 -

10MBit-Ethernet 10BASE2, Thin Wire, Cheapernet Max.185 m lang, dünnes Koaxial-Kabel, an den Anschlussstellen wird die Verbindung aufgetrennt, Halbduplex-Verbindung. c t, nur zur Verwendung der Teilnehmer der RSVorlesung Ein-/Ausgabe - 76 -

10MBit-Ethernet 10BASE-T, TwistedPair Max 100m lang, verdrillte Leitungen, differenzielle Übertragung mit Vollduplex-Fähigkeit, Punkt-zu-PunktVerkabelung, Einsatz in strukturierter Verkabelung c t, nur zur Verwendung der Teilnehmer der RSVorlesung Ein-/Ausgabe - 77 -

100MBit-Ethernet (Fast-Ethernet) 100BASE-T4 Kabel der Kategorie 3 (8-polige Telefonkabel), Halbduplex. 100BASE-Tx Punkt-zu-Punkt-Verkabelung der Kategorie 5 (Cat 5) (UTP/STP-Kabel); Aufteilung der Daten auf Adernpaare und 3-wertige Logik zur Reduktion der Störstrahlung. 100BASE-Fx Sternförmige Glasfaserverkabelung. Ein-/Ausgabe - 78 -

1000MBit-Ethernet, Gigabit Ethernet 1000BaseLx: Lichtleiter, Segment 2-550m lang, teuer 1000BaseCx (IEEE 802.3z): Max 25 m, 2 verdrillte Twinax verdrillte Kabel oder 1 Quad-Kabel pro Verbindung GigaBit-Ethernet über Kategorie 5 -Kupferkabel unter bestimmten Bedingungen möglich: tatsächlich 4 Adernpaare verlegt, nicht verdrillte Anschlussenden <13mm 100m lang Investitionsschutz für viele Kat. 5 Netzwerke; Besser: upgrade auf Kat. 5e- oder Kat. 6-Kabel c t 1999, nur zur Verwendung der Teilnehmer der RSVorlesung Ein-/Ausgabe - 79 -

1000MBit-Ethernet, Gigabit Ethernet Alternativ Vollduplex-Betrieb ohne Kollisionen (d.h.: Abkehr von CSMA/CD) oder Halbduplex-Betrieb mit Kollisionen, zur Konflikterkennung: Erhöhung der Paketlänge nötig Beim Standard-PCI-Bus (32Bit, 33 MHz) können Gigabit-Ethernet-Karten evtl. die maximale Übertragungsrate nicht mehr erzielen. c t 1999, nur zur Verwendung der Teilnehmer der RSVorlesung Ein-/Ausgabe - 80 -

10 Gbit-Ethernet Das kollisionsbehaftete CSMA/CD-Verfahren wird abgeschafft 10 Gigabit Ethernet über Glasfaser im Gebrauch. Löst andere Techniken für Weitverkehrsnetze ab. Lokal als Backbone und zur Anbindung von storagearea networks (SANs) eingesetzt. Verabschiedung des IEEE-Standards für 10 Gigabit Ethernet über Kupferkabel ist im Sommer 2006 zu erwarten. Bis ca. 100 m. Alternativen derzeit: Kat. 6-Kabel (mit bisherigen Steckern) Kat. 7-Kabel (mit neuen Steckern) Ein-/Ausgabe - 81 -

Token-Ring-Netze Empfangende Station kopiert Nachricht. Die nächste Station darf senden. Station Station Station Station Sendende Station erhält Nachricht als Bestätigung. Ein-/Ausgabe - 82 -

Eigenschaften von Token-Ring-Netzen Vorteile Auch bei starker Belastung bleibt bei n Stationen für jede Station 1/n der Übertragungsleistung erhalten. Kein thrashing, d.h. keine Reduktion der effektiven Übertragungsrate bei Überlast (wie beim CSMA/CD-Verfahren) Auffrischung der Signale an jeder Station Nachteile Installation aufwendiger als beim Ethernet Vorkommen IBM Token Ring, IEEE 802.5 seit 1980 an Workstations Ein-/Ausgabe - 83 -

Bluetooth (1) Benannt nach Harald Blauzahn, dänischer König von 940-985, der das Land einigte. Datenrate: synchron 64kbit/s für Sprachanwendung asynchron symmetrisch 432,6 kbit/s (Netzwerkanwendung) asynchron asymmetrisch 721/57,6 kbit/s downloads Reichweiten: Pico bluetooth Mega bluetooth 10cm..10m 1mW Sendeleistung >100m 100mW Sendeleistung Frequenzband: 2402-2480 GHz, lizenzfrei für industrielle, medizinische und wissenschaftliche Zwecke bereitgestellt; gemeinsam genutzt mit IEEE 802.11 und Mikrowellenöfen. Ein-/Ausgabe - 84 -

Bluetooth (2) Kanäle: 79, je 1 MHz; schneller Wechsel (nach jeder Nachricht) zwischen Kanälen, um die Wahrscheinlichkeit von Störungen zu reduzieren. Vollduplex-Übertragung Spezielle Stromsparmodi optionale Verschlüsselung optionale Authentifizierung Verschiedene Profile ermöglichen Interoperabilität Hardware relativ preisgünstig (Einbau z.b. in Köpfhörer) Weitere Informationen: http://www.bluetooth.com, c t 2/2003 Ein-/Ausgabe - 85 -

WLAN IEEE 802.11 a/b/g: Varianten der Netzwerk-Norm IEEE 802: Datenraten: IEEE 802.11b: 1, 2, 5.5 oder 11 Mbit/s im 2,4 GHz-Band (meistens eingesetzte Karten) IEEE 802.11a: bis 54 Mbit/s im 5 GHz-Band IEEE 802.11g; bis 54 Mbit/s, auch im 2,4 GHz-Band, abwärtskompatibel mit 802.11a und b. Super G (kein Standard): 108 Mbit/s. Funkkanäle störanfälliger als drahtgebundene Kommunikation aufgrund zusätzlicher Korrekturmaßnahmen in der Regel: effektive Datenrate WLAN < Datenrate von 10BASE-T oder effektive Datenrate WLAN << Datenrate von 100BASE-Tx. Ein-/Ausgabe - 86 -

Beziehung Entfernung/Datenrate Intersil, 2002 nur zur Verwendung der Teilnehmer der RS-Vorlesung Ein-/Ausgabe - 87 -

Alternativen WLAN Datenkommunikation über DECT HIPERLAN: vom ETSI entwickelter Standard f. drahtlose Netze: Typ 1: 24 Mbit/s im 5 GHz-Band Typ 2: Wireless ATM mit 20 Mbit/s, 5 GHz-Band WAN ATM (Festnetz) GSM, UMTS Ein-/Ausgabe - 88 -

Massenspeicher Netz Prozessor Speicher controller Controllerschnittstellen Plattenspeicher Disc-Arrays controller controller CD-ROM DVD Bandlaufwerke Weitere start controller

[Hennessy/Patterson, Computer Architecture, 3. Aufl.] Elsevier Science (USA), 2003, All rights reserved Kosten/Mbyte und Zugriffszeiten für verschiedene Speichermedien Ein-/Ausgabe - 90 -

Schematischer Aufbau eines Plattenlaufwerks Schreib-/Leseköpfe Achse Speicherplatten Motor Ein-/Ausgabe - 91 -

[Hennessy/Patterson, Computer Architecture, 3. Aufl.] Elsevier Science (USA), 2003, All rights reserved Einteilung der Platten in Sektoren, Spuren und Zylinder Ein-/Ausgabe - 92 -

Daten einiger Plattenlaufwerke (2000) Seagate Ultra 160 SCSI IBM Travelstar ATA-4 IBM 1 GB Microdrive Durchmesser [''] 3,5 2,5 1 Kapazität [GB] 73,4 32 1 Zylinder 14100 21664 7167 Platten 12 4 1 Gb/sq.in 6 14 15,2 Average seek [ms] 5,6 read/6,2 write 12 12 Übertragungsrate 27-40 MB/s 11-21 MB/s 2,6-4,2 MB/s Leistung [W] passiv/aktiv 16,4/23,5 2,0/2,6 0,5/0,8 Puffer [MB] 4 2 0,125 Schock-Toleranz 10 G/ 175 G 150 G/700 G 175 G/1500 G [Betrieb/außer Betrieb] [Hennessy/Patterson, Computer Architecture, 3. Aufl.] Ein-/Ausgabe - 93 -

Trends Schwergewicht bei Steigerung der Kapazität: 1988: 29%/Jahr; 1996: 60%/Jahr; 2001: 100%/Jahr Kosten pro GB zwischen 1983 und 2000 um Faktor 10000 reduziert. Zugriffszeit um ca. 10% pro Jahr verbessert. Versuche, Lücke in Zugriffszeit zu füllen, fehlgeschlagen [Hennessy/Patterson, Computer Architecture, 3. Aufl.] Ein-/Ausgabe - 94 -

Sandisk Type I Flash Sandisk Type II Flash IBM Microdrive DSCM10340 Kapazität [MB] 64 300 340 Leistungsaufnahme [W] (standby/operating) 0,15/0.66 0,15/0,66 0,07/0.83 Mögl. Schreibzyklen 300.000 300.000 keine Einschränkung Mean-time between failures [h] >1.000.000 >1.000.000 service-life=min(5j, 8800 h Betrieb) Fehlerraten, unkorrigb. < 1 per 1014 <1 per 1014 <1 per 1013 Ein/Ausschaltvorgänge beliebig beliebig 300.000 Schock-Toleranz 2000 G; 2000 G 2000 G; 175 G; 1500 G [Hennessy/Patterson, Computer Architecture, 3. Aufl.] Vergleich Harddisc/Flash-Speicher Flash: - weniger Energie als Platten; Lesezeiten ähnlich DRAMs (20-70 ns); Löschzeiten von 1-2 s/64kb NOR-Flash, 5-6ms/4-8kB NAND-Flash interessant für kleinere Speicher Ein-/Ausgabe - 95 -

Abhängigkeit der Suchzeit von der Spurdifferenz berücksichtigt Beschleunigung Elsevier Science (USA), 2003, All rights reserved " Naive formula": Accesstime(distance) = Timemin + " New formula": Access time(distance) = a distance ( Timeave Timemin ) distance ave distance 1 + b ( distance 1) + c [Hennessy/Patterson, Computer Architecture, 3. Aufl.] Ein-/Ausgabe - 96 -

Verteilung der Spurdifferenzen Ein-/Ausgabe - 97 -

Redundant arrays of inexpensive discs (RAID) Verbesserung der E/A-Geschwindigkeit durch paralleles Lesen/Schreiben auf mehrere Platten; Einsatz von Redundanz, damit dadurch nicht die Zuverlässigkeit leidet. Disc arrays, drive arrays Ein-/Ausgabe - 98 -

RAID 0 (Striping) Dateien werden unterteilt in so genannte Stripes. Striping-Parameter = Länge eines Stripes. Diese Stripes werden auf den Platten verteilt. 0 4 1 2 3 Keine Redundanz, nur Verbesserung der Übertragungsrate Ein-/Ausgabe - 99 -

RAID 1 (Mirroring) Dieseleben Informationen werden auf zwei Platten geschrieben (gespiegelte Platten, mirrored discs) 0 1 2 0 1 2 3 4 3 4 identische Kopien Erhöhte Fehlersicherheit, Stark erhöhter Aufwand (x 2), Es werden eigentlich nur 2 Plattenlaufwerke genutzt. Ein-/Ausgabe - 100 -

RAID 2 (ECC) Zusätzlich werden Prüfbits auf spezielle Platten geschrieben, Verwendung von fehlerkorrigierenden Codes (error correcting code, ECC). Die Bits werden auf mehreren Platten verteilt. 0 5 1 6 2 7 3 8 4 9 Bits ECC Geringere Redundanz als RAID 1, aber wegen PrüfbitErzeugung und Last auf Prüfbitplatten langsamer. Erfordert spezielle Platten, kommerziell nicht verfügbar. Ein-/Ausgabe - 101 -

RAID 3 (dedicated parity) Es nur ein einzelnes Paritäts-Stripe auf einer Parity-Platte abgelegt. Häufig nur der Fall Stripe-Parameter=1 Bit betrachtet. Die Stripes eines Datenblocks werden auf Platten verteilt. 0 5 1 6 2 7 3 8 4 9 P P Bits Selbst für kleinste zu schreibende/lesende Blöcke alle Platten aktiv. Keine gute Performance. Ein-/Ausgabe - 102 -

RAID 4 Wie RAID-3, jedoch mit einem Striping-Faktor von einem Block und mehr. 0 5 1 6 2 7 3 8 4 9 P P Größe=striping-Faktor Besserer wahlfreier Zugriff als RAID 3. Paritätsplatte bleibt ein Engpass. Ein-/Ausgabe - 103 -

RAID 5 (distributed parity) Paritätsinformation wird über verschiedene Platten verteilt 0 1 2 3 P0 4 5 6 P1 7 8 9 P2 10 11 12 P3 13 14 15 P4 16 17 18 19 Paritätsplatte nicht weiter ein Engpass Ein-/Ausgabe - 104 -

RAID 0+1, RAID 01 (mirrored stripes) Gespiegelte Platten (RAID 1), mit verteilten Stripes (RAID 0) mirrored stripes. 0 2 4 1 3 0 2 4 1 3 identische Kopien Lesegeschwindigkeit erhöht, erhöhte Fehlersicherheit, stark erhöhter Aufwand. Ein-/Ausgabe - 105 -

RAID 1+0, RAID 10 (striped mirrors) Striped mirrors: striping von gespiegelten Platten Lesegeschwindigkeit erhöht, erhöhte Fehlersicherheit, stark erhöhter Aufwand. Informationen zu neuen Varianten: http://www.pcguide.com/ref/hdd/perf/raid/levels/multlevel01-c.html Ein-/Ausgabe - 106 -

Übersicht RAID Technik Variante Fehlertoleranz Daten-Platten Prüfplatten 0 1 0+1 non-redundant mirrored Komb. v. 0 & 1 0 1 1 8 8 8 0 8 8 2 memory-style ECC bit-interleaved parity blockinterleaved parity dto, distributed parity P+Q redundancy 1 8 4 1 8 1 1 8 1 1 8 1 2 8 2 3 4 5 6 bevorzugt UVC-Film! Ein-/Ausgabe - 107 -

CD-ROM Datenträger auf der Basis der Technik von Audio-CDs. Informationen als Vertiefungen in einer reflektierenden Oberfläche gespeichert. Abtastung mit 780 nm Laser. Ein-/Ausgabe - 108 -

DVD-Laufwerke (1) Kapazität gegenüber CDs erhöht: 1. Abstände und Größe der Vertiefungen werden reduziert, Abtastung mit 650 nm (rotem) Laserstrahl: CD-ROM DVD Erhöhung der Kapazität um den Faktor 4. Ein-/Ausgabe - 109 -

DVD-Laufwerke (2) 2. Informationen können in zwei Ebenen und auf beiden Seiten gespeichert werden. Datenrate 1,25 MB/s bei einfacher Geschwindigkeit. MPEG-2 bei Speicherung von Filmen. Ein-/Ausgabe - 110 -

Vergleich Übertragungsgeschwindigkeiten Annahme: Transport einer DVD, einseitig in einer Ebene beschrieben (Kapazität=4,7GB) auf der Strecke Paris-Dakar (Strecke=6180km) mit einer Fahrrad-Staffel mit 36km/Std im Mittel. Gleichzeitig ISDN-Übertragung mit Übertragungsrate 64 kbit/s. Wie viel Prozent der maximalen Übertragungsrate muss die ISDN-Strecke erreichen, damit nicht die Radfahrer gewinnen? (Vernachlässigung von bit stuffing) x Übertragungsrate Zeit des Radfahrers = Kapazität x = Kapazität Geschwindigkeit / (Übertragungsrate Strecke) 16 x = 4,7 1024 1024 1024 8 36 / (64 1024 60 60 6180) x = 4,7 16 1024 8 36 / (60 60 6180) x = 0,9968 Die ISDN-Strecke müsste 99,68 % der max. Übertragungsrate erreichen. Ein-/Ausgabe - 111 -

Blu*-ray disc (BD) : Motivation *Falsche Schreibweise, damit Eintrag als Markenzeichen möglich http://www.blu-raydisc.com/assets/downloadablefile/ general_bluraydiscformat-12834.pdf Ein-/Ausgabe - 112 -

Blu-ray: Eigenschaften Vergleich der Fokussierung Verkürzung der Wellenlänge auf 405 nm (blau) Reduktion der Dicke der transparenten Schicht auf 100 µm, zur besseren Fokussierung des Laserstrahls, bessere Fehlerkorrektur; zusätzliche schmutzresistente Schicht http://www.blu-raydisc.com/assets/downloadablefile/ general_bluraydiscformat-12834.pdf Ein-/Ausgabe - 113 -

Blu-ray: Eigenschaften (2) 23.3/25/27 GB in einer Speicherebene 46.6/50/54 GB in zwei Speicherebenen Experimentell 200 GB http://www.blu-raydisc.com/assets/downloadablefile/ general_bluraydiscformat-12834.pdf Ein-/Ausgabe - 114 -