Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein-...

33
Grundlagen der Rechnerarchitektur Einund Ausgabe

Transcript of Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein-...

Page 1: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Grundlagen der Rechnerarchitektur

Ein‐ und Ausgabe

Page 2: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Übersicht• Parallele und Serielle Busse• Zugriff auf IO‐Geräte• Parallelität und IO: Raid‐Systeme

2Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe

Page 3: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Parallele und Serielle Busse

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 3

Page 4: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Interaktion zwischen Chips über deren Pins

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 4

Verbindung der zusammenpassenden Pins von CPU, Speicher und I/O über parallel laufende Leitungen: BusAdress‐Pins (übliche Werte 16, 20, 32) und Daten‐Pins (übliche Werte 8, 16, 32, 64) für SpeicherzugriffDes Weiteren Control‐Pins:• Bus‐Control: Zur Steuerung von

Speicher und IO durch die CPU• Interrupts: Zur Unterbrechung

der CPU durch I/O• Bus‐Arbitration: zur Regelung des

Bus‐Zugriffs durch mehrereTeilnehmer (CPU ist gewöhnlicherBus‐Teilnehmer)

• Coprocessor‐Signaling: Kommu‐nikation zwischen CPU undCoprozessor (Beispiel: Coprocessor0und Coprocessor1 unserer MIPS‐Architektur)

• Status: ermöglicht Abfrage des der Status der CPU• Miscellaneous: Reset, Kompatibilität mit älteren CPUs,…

Pins für Clock, Stromversorgung, MasseBildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Page 5: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Interaktion zwischen Chips über deren Pins

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 5

Typischerweise spezieller Bus zwischen CPU und Speicher und mindestens einen weiteren Bus für I/O.Orchestrierung des Bus über Bus‐Controller; erfordert Bus‐ProtokollDes Weiteren, Elektrische und Mechanische Spezifikation(Austauschbarkeit von Komponenten; Dritthersteller)Beispiele für Bus‐Standards:• Omnibus (PDP‐8), Unibus (PDP‐11), Multibus (8086), VME, IBM PC (PC/XT)• ISA (PC/AT), EISA (80386), Microchannel (PS/2), Nubus (Mac), PCI (PC), SCSI, USB, 

Firewire,…

Bemerkung: Kommunikation zwischen Register und ALUs über On‐Chip BusBildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Page 6: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Master/Slave

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 6

Master: Gerät welches Aktion über den Bus imitiertSlave: Gerät welches auf Request wartetGeräte können auch beides sein

Beispiele:

Master Slave Beispiel‐Aktion

CPU Speicher Fetch von Instruktionen und Daten

CPU IO‐Gerät Datentransfer initiieren

CPU Coprocessor Instruktion an Coprozessor weiter geben

IO‐Gerät Speicher DMA (siehe später)

Coprocessor CPU Coprozessor liest Operanden aus der CPU

Page 7: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Bus Driver, Reciever, Transceiver, Decoder

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 7

Bus‐Driver: verstärkt Signale eines Masters für den BusBus‐Receiver: dasselbe für SlavesTransceiver: Baustein für Chips die Master und Slave sindAbbindung mehrerer auf zwei Arten:• Tri‐State – Gerät wird vom Bus getrennt• Wired‐Or – In Leitung können mehrere mehrere Signale 

gleichzeitig sein

Adress‐, Daten‐ und Control‐Pins eines Gerätes müssen nicht 1‐zu1 mit dem Bus übereinstimmen; in diesem Fall benötigt man einen Decoder‐ChipBeispiel: Drei CPU Pins zum encoden von Memory‐Read, Memory‐Write, IO‐Read, IO‐Write auf einzelne Control‐Leitungen des Busses für diese Funktionen abbilden

Page 8: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Generelle Bus‐Designmerkmale

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 8

• Breite (d.h. Anzahl Adress‐ und Datenleitungen)

• Clocking

• Arbitrierung

• Operation

Page 9: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Designmerkmal Breite

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 9

Tradeoff zwischen Systemkosten (Anzahl Leitungen und Platz auf dem Mother‐Board, Konnektor‐Breite) und maximal adressierbare Speichergröße bzw. Bus‐Performance (durch mehr parallele Datenleitungen)Manche Bussysteme sind über die Jahre „gewachsen“. Beispiel: IBM‐PC  EISA

(Ebenso für Datenleitungen: 81632)Solche Backward‐Kompatibilität zu älteren Systemen macht den Bus nicht gerade überschaubar…

Reduktion von Busleitungen auch mittels Multiplexed‐Bussen möglich (erst Adresse senden dann Daten über dieselben Adressleitungen schreiben/lesen)

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Page 10: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Designmerkmal Clocking

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 10

Offensichtlich: Höhere Bustaktung = höhere Performance; aber höhere Taktung irgendwann problematisch aufgrund von Bus‐Skew (Signalleitungen unterschiedlicher Länge führt zu unterschiedlichen Signalempfangszeiten)

Generelle Unterscheidung bzgl. Taktung• Synchron – eine Clock; Busoperationen benötigen immer ein ganzzahliges Vielfaches 

der Bus‐Cycle‐Time (Typische Bus‐Taktfrequenzen zwischen 5 bis 100MHz)• Asynchron – jedes Paar von Geräten kann mit „individuellem Takt“ über die 

Busleitungen kommunizieren

Asynchron erfordert Handshaking zwischen Master und SlaveSynchron ist einfacher. Aber: besonders Schnelle Komponenten werden durch den vorgegebenen Takt ausgebremst; Taktung muss langsamste Komponente beachten

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Page 11: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Designmerkmal Arbitrierung

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 11

Zugriff mehrerer Master (CPU, Coprozessor, IO) auf den Bus erfordert Bus‐ArbitrierungZwei Arten möglich:

Gezeigtes Beispiel (a): Daisy‐ChainingProblem: Priorität implizit durch Position in der Kette; Lösung: mehrere Ketten mit Prioritäts‐Level (siehe (b) für 2 Level; häufig 4, 8 oder 16 Leitungen)

Dezentrale Arbitrierung: einfache aber unflezible nicht platzsparende Lösung: für jeden eine separate Request‐Leitung, die auch die übrigen beobachtenSkalierbare Lösung (siehe (c))

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Zentral Dezentral

(a)

(b)

(c)

Page 12: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Designmerkmal Operations

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 12

Neben den Bus‐Zyklen zum Schreiben und Lesen gibt es Zyklen auf denen auch weitere Bus‐Funktionen stattfinden

Beispiel 1: Block‐Transfer

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Beispiel 2: Read‐Modify‐Write‐Buszyklus Verhindert dass mehrere CPUS gleichzeitig auf eine Speicherstelle zugreifen können (Erinnerung: Synchronisierung)

Beispiel 3: Interrupt‐Handling

Page 13: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Beispiele (1)

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 13

Entwicklung paralleler PC‐Bussysteme• IBM PC – Standard auf 8088‐basierten 

Systemen (Geschichte)• PC/AT – Weiterentwicklung des PC‐Bus für 

80286 (Weiterer Connector für mehr Adress‐ und Datenleitungen)

• ISA – Im wesentlichen PC/AT mit 8.33MHz Bus‐Takt und 16‐Bit Breite, d.h. 16.7 MB/sec

• EISA – im Wesentlichen Erweiterung von ISA auf 32‐Bit, d.h. 33.3 MB/sec

Diese Busse wurden wachenden Bedarf an Video‐Performance nicht gerecht (z.B. 1024x768 3‐Byte‐Farbe benötigt 135 MB/sec)• PCI (Peripheral Component Interconnect)

• Original 32‐Bit bei 33MHz, d.h. 133MB/sec. Erweitert auf 64‐Bit bei 66MHz, d.h. 528 MB/sec

• Aber: nicht schnell genug für Speicher und nicht kompatibel mit alten Karten

• Damit: PCI‐BridgeBildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Page 14: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Beispiele (2)

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 14

Mit wachsendem Bedarf an Video‐Performance (z.B. wachsende Auflösung) Bedarf für speziellen Grafik‐Bus• AGP (Accelerated Graphics Port) – initial „nur“ 264 MB/sec aber dediziert für 

Grafikkarte. Neuere Versionen: z.B. AGP3.0 8x mit 2.1 GB/sec

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006

Paralleler Bus für Sekundäre Speichermedien: ATAPI (IDE, ATA)

Page 15: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Beispiele (3)

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 15

Problem paralleler Busse: konkurrierende Master/Slaves beeinflussen die PerformanceFür mehr Performance Wechsel auf Switchingmit Point2Point seriellen Verbindungen: PCIe(PCI Express)• Analogon zu geswitchtem LAN• Protocol‐Layering

• Physical – Lanes, Encoding• Link – CRC, ACK, Flow‐Control• Transaction – Virtual Circuits• Software – Inteface zwischen PCIe‐

System und OS (Emulation von PCI über PCIe für OS welches noch auf PCI basiert)

Analoge Entwicklungen• ATA: SATA (Serial ATA)• SCSI: Serial Attached SCSI (SAS), Fibre

Channel und iSCSI.

Weitere übliche Serielle Bus‐Systeme (extern): USB, FireWire

Bildquelle: Andrew S. Tanenbaum, „Structured Computer Organization“, Fifth Edition, 2006Tabelle: https://de.wikipedia.org/wiki/PCI_Express

Page 16: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Wichtige IO‐Standards

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 16Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012

Page 17: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

x86‐Beipiel: Intel 5000P Chip‐Set

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 17Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012

Page 18: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Zugriff auf IO‐Geräte

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 18

Page 19: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Mitteilen von Kommandos an IO‐Geräte

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 19

Memory‐Mapped‐IO• In einen kleinen Teil des regulären Speichers werden Register 

des IO‐Gerätes „gemapped“.• Schreiben und Lesen auf diese Speicherbereiche werden von 

dem Speicher‐Controller direkt an bzw. von dem IO‐Gerät weiter gereicht.

• Betriebssystem kann den direkten Zugriff von gewöhnlichen User‐Programmen auf den Speicher verhindern, indem virtuelle Adressen nicht auf den physikalischen Speicher mit dem Memory‐Mapped‐IO gemapped werden.

• Simples Beispiel: Printer mit zwei IO‐Register• Status‐Register: z.B. Done‐Bit, Error‐Bit• Daten‐Register: z.B. das aktuell zu druckende Zeichen• Prozessor muss das Done‐Bit testen, bevor das nächste Byte 

geschrieben werden kann.

Page 20: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Mitteilen von Kommandos an IO‐Geräte

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 20

Separate IO‐Instruktionen:• Maschinen‐Instruktion, welche die Geräte‐Adresse und das zu 

übermittelnde Kommando angibt• Beispiele: Intel x86 und IBM 370• Diese speziellen Instruktionen können nur im Supervisor‐Modus 

ausgeführt werden. Betriebssystem kann damit den Zugriff auf IO durch User‐Programm unterbinden.

Page 21: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Kommunikation mit dem Prozessor

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 21

Polling:• Prozessor muss aktiv ein Statusregister solange abfragen, bis der 

Status die nächste Operation erlaubt• Problem: CPU‐Zeit wird unnötig verbraucht

Interrupts:• IO‐Gerät meldet sich bei der CPU durch einen Interrupt, wenn 

eine Operation beendet wurde• Alternativen, wie Interrupt‐Behandlung organisiert sein kann:

• Ein Interrupt‐Handler pro Interrupt‐Typ• Ein einziger Interrupt‐Handler und ein Cause‐Register

Page 22: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Datentransfer zwischen  Gerät und Speicher

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 22

Für besprochenes Polling und Interrupts: Prozessor ist dafür zuständig die Daten in oder aus den gemappten Speicherstellen zu übertragen.• Sinnvoll für IO mit geringen Datenraten• Bei hohen Datenraten wäre (auch mit Interrupts) der Prozessor 

nur mit dem übertragen von Daten beschäftigt• Hier ist der sogenannte Direct‐Memory‐Access (DMA) sinnvoller

Ablauf des DMA• Prozessor bestimmt (über Memory‐Mapped‐IO) das DMA‐Gerät, 

die Operation (schreiben oder lesen), die Start‐Speicherstelle und die Anzahl zu übertragen Bytes

• Gerät greift selbstständig schreibend/lesend auf den Speicher zu• Bei Ende informiert das Gerät den Prozessor über einen 

Interrupt

Page 23: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Datentransfer zwischen  Gerät und Speicher

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 23

DMA ermöglicht der CPU während der Datenübertragung parallel weiter zu rechnen; allerdings nur solange die CPU nicht auf den Hauptspeicher zugreift.

Moderne zusätzliche IO‐Prozessoren können die CPU‐Last weiterreduzieren. IO‐Prozessoren führen ganze im Speicher befindlicheIO‐Programme aus.

Mögliche Inkonsistenzen zwischen Cache der CPU und Speicher müssen bei DMA beachtet werden• CPU liest aus Cache• DMA schreibt direkt in den Speicher

Virtuelle Adressen erfordern ebenso Vorsicht• DMA schreibt in den physischen Adressraum• Virtueller Adressraum wird aber möglicherweise nicht auf 

zusammenhängende Folge von Speicherblöcken gemappt

Page 24: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Parallelität und IO: Raid‐Systeme

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 24

Page 25: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Motivation

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 25

Nach Amdahls Gesetz: Beschleunigung durch Parallelität nur sinnvoll, wenn sowohl CPU als auch IO durch Parallelität beschleunigt werden.

In den späten 80ern war dies die Motivation, um von teuren großen High‐End‐Festplatten auf parallel arbeitende gewöhnliche Festplatten umzusteigen.

Problem MTTF (mean time to failure) wird signifikant erhöht• Die Fehlerrate von gewöhnlichen Platten ist schon höher• Wird Beispielsweise eine einzelne Platte durch 50 parallel arbeitende Platten 

ausgetauscht, steigt die Fehlerrate um mindestens Faktor 50!

Es wurde notwendig Redundanz zur Fehlerkorrektur einzubauen. Damit wurde das Konzept Redundant‐Arrays‐of‐Inexpensive‐Disks (RAID) eingeführt.

Wie viel Redundanz man hinzufügt wird durch den sogenannten RAID‐Level ausgedrückt.

Page 26: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

RAID‐Level am Beispiel mit vier Platten

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 26Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012

Page 27: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

RAID 4

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 27

Naive Vorgehensweise Shortcut

Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012

Page 28: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

RAID 5

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 28Bildquelle: David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 2012

Page 29: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Zwei Möglichkeiten Striping und Mirroring zu kombinierenBeispiel mit 8 Disks:• Striped Mirrors (RAID 1+0 bzw. RAID 10)

• Mirrored Stripes (RAID 0+1 bzw. RAID 01)

RAID 1

RAID 10 und RAID 01

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 29

RAID 1 RAID 1 RAID 1

RAID 0 RAID 0

RAID 1

RAID 0

Page 30: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Zusammenfassung zu RAID

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 30

RAID 1 bis RAID 5 finden sich häufig in Server‐Systemen.

Wie werden Fehler Repariert?• Hot‐Swapping: erlaubt Hardware‐Tausch im laufenden Betrieb• Problematisch, wenn während des Tauschens ein weiterer 

Fehler auftritt• Besser: Stand‐By‐Spares: Redundante zusätzliche Platte die für 

Fehler‐Recovery automatisch angefahren wird.

Größer werdende Platten bedeutet auch längere Zeit, einen Fehler zu restaurieren. (Plattenkapazität wächst schneller als die Transferrate). Systeme wie RAID 6 relevant.

Page 31: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Zusammenfassung und Literatur

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 31

Page 32: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

Zusammenfassung• Charakteristiken von IO‐Systemen: Zuverlässigkeit, die Vielzahl 

an unterstützten Geräten, maximale Anzahl unterstützter Geräte, Kosten, undPerformance: d.h. Latenz  und/oder Durchsatz

• Wichtige Art des IO‐Interfacings Im Low‐ bis Mid‐Range‐Bereich: (Buffered‐)DMA

• Im High‐End‐Bereich– Viele Pfade, um Latenz und Durchsatz zu verbessern– Redundanz und Fehlerkorrektur, um die Verfügbarkeit zu verbessern

• Wichtigster Faktor für zukünftige IO‐Systeme: Speicher‐ und Vernetzungsbedarf wächst.

• Genereller Trend: Software‐as‐a‐Service• Zukünftige Entwicklung

– Jedes Gerät ist drahtlos/drahtgebunden vernetzt– Flash‐Speicher spielt eine immer größere Rolle; insbesondere mit der 

Durchdringung des Alltags mit mobilen Geräten

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 32

Page 33: Grundlagen der Rechnerarchitektur - userpages.uni-koblenz.deunikorn/lehre/gdra/ss19/06 Ein- und... · Bildquelle: David A. Patterson und John L. Hennessy, „Computer OrganizationandDesign“,

LiteraturPattersonHennessy2012] David A. Patterson und John L. Hennessy, „Computer Organization and Design“, Fourth Edition, 20126.1 Introduction6.5 Connecting Processors, Memory, and I/O Devices6.6 Interfacing I/O Devices to the Processor, Memory, andOperating System

6.9 Parallelism and I/O: Redundant Arrays of InexpensiveDisks

6.13 Concluding RemarksAndrew S. Tananbaum, „Structured Computer Organization“, Fifth Edition, 20063.4.2 Computer Buses3.6 Example Buses

Grundlagen der Rechnerarchitektur ‐ Ein‐ und Ausgabe 33