Lehrveranstaltung Speichersysteme Sommersemester 2009

Ähnliche Dokumente
Teil VIII Von Neumann Rechner 1

Storage Area Networks im Enterprise Bereich

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

1 Aufgaben zu Wie funktioniert ein Computer?

Protokollbeschreibung Modbus TCP für EMU TCP/IP Modul

Man liest sich: POP3/IMAP

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Switch 1 intern verbunden mit onboard NICs, Switch 2 mit Erweiterungs-NICs der Server 1..6

Speichernetze (Storage Area Networks, SANs)

Schnittstellen des Computers

Installationsvoraussetzungen

Spezifikationen für die Datenträgerlöschung mit GDisk

Anleitung zur Nutzung des SharePort Utility

Sichere Festplattenlöschung

USB-Driver: Download-Link:

Handbuch B4000+ Preset Manager

5 Speicherverwaltung. bs-5.1 1

SJ OFFICE - Update 3.0

Rechner Architektur. Martin Gülck

Wir wünschen Ihnen viel Freude und Erfolg mit Ihrem neuen X-PRO-USB-Interface. Ihr Hacker-Team

DIE SCHRITTE ZUR KORREKTEN LIZENZIERUNG

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler Oktober 2008 Version 1.0.

Serieller S-Bus reduziertes Protokoll (Level 1)

SNr bis mit Gigabyte AMD K7 Mainboard. Konfiguration 7 und 7M

Switching. Übung 7 Spanning Tree. 7.1 Szenario

QUICK INSTALLATION GUIDE

Updatehinweise für die Version forma 5.5.5

USB DISK ANSCHLUSS WAHLTASTER. Vorteile dieses USB Interfaces:

Anleitung zur Nutzung des SharePort Plus

e-books aus der EBL-Datenbank

Dokumentenkontrolle Matthias Wohlgemuth Telefon Erstellt am

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff

Name: ES2 Klausur Thema: ARM Name: Punkte: Note:

Ein- Ausgabeeinheiten

1 Registrieren Sie sich als Benutzer auf dem Televes. 2 Sobald ein Konto erstellt ist, können Sie auf das Portal

Kapitel 6 Anfragebearbeitung

Mikrocontroller Grundlagen. Markus Koch April 2011

Einführung in die technische Informatik

Computer: PC. Informationstechnik für Luft-und Raumfahrt Aerospace Information Technology

Quick Guide Mitglieder

IEEE 802.1x Authentifizierung. IEEE 802.1x Authentifizierung IACBOX.COM. Version Deutsch

EasyWk DAS Schwimmwettkampfprogramm

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

Vorstellung SimpliVity. Tristan P. Andres Senior IT Consultant

Persönliches Adressbuch

Die Mikroprogrammebene eines Rechners

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

Wireless & Management

Serielle Kommunikation mit dem Arduino. Teil 1: Das Serial Peripheral Interface (SPI)

"Memory Stick" zur Programmierung der comfort 8+ Lichtsteuranlage mit PC Software "scenes editor"

Im Kapitel Resourc Manager werden die verschiedenen Möglichkeiten der Überwachung von Messwerten eines Server oder Benutzers erläutert.

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Schnelleinstieg Starter System. Version 3.2

Architektur Verteilter Systeme Teil 2: Prozesse und Threads

Anleitung Grundsetup C3 Mail & SMS Gateway V

Grundlagen der Rechnerarchitektur

Installation der SAS Foundation Software auf Windows

Umgang mit der Software ebuddy Ändern von IP Adresse, Firmware und erstellen von Backups von ewon Geräten.

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

Bei der Installation folgen Sie den Anweisungen des Installations- Assistenten.

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten

Switching. Übung 2 System Management. 2.1 Szenario

Digital Web-Monitoring Digitales Web-Monitoring

4D Server v12 64-bit Version BETA VERSION

Lokale Installation von DotNetNuke 4 ohne IIS

ACDSee Pro 2. ACDSee Pro 2 Tutorials: Übertragung von Fotos (+ Datenbank) auf einen anderen Computer. Über Metadaten und die Datenbank

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

Übung: Netzwerkmanagement mit SNMP

Formular»Fragenkatalog BIM-Server«

Stecken Sie Ihren USB Stick oder Ihre externe USB Festplatte in den USB Steckplatz des Sinus 154 DSL SE.

USB/ esata auf SATA Festplatten Kopierstation - HDD Klon Dockingstation/ Duplikator. StarTech ID: SATDOCK22RE

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

Installation des COM Port Redirectors

Software zur Anbindung Ihrer Maschinen über Wireless- (GPRS/EDGE) und Breitbandanbindungen (DSL, LAN)

Die Komponenten in Ihrem Computer

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

MSI TECHNOLOGY. RaidXpert AMD. Anleitung zur Installation und Konfiguration MSI

FastViewer Remote Edition 2.X

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Powermanager Server- Client- Installation

Rillsoft Project - Installation der Software

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

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

USB in Embedded Systemen. Referat von Peter Voser Embedded Development GmbH

Anleitung zur Einrichtung des USB-Speicherzugriffs (SharePort) Für DIR-506L (Stand April 2013)

Hier erfahren Sie, wie Sie im E-Banking DTA-Dateien übermitteln können:

Local Control Network

Whitepaper. Produkt: combit Relationship Manager / address manager. Dateiabgleich im Netzwerk über Offlinedateien

Ether S-Net Diagnostik

USB 2.0 Sharing Switch

Installationsanleitung WibuKey Treiber

a.i.o. control AIO GATEWAY Einrichtung

ACDSee Pro 3-Tutorials: Fotos (+ Datenbank) auf einen anderen Computer bringen

1) Farbsteuergerät in der Nikobus-Software unter Modul zufügen hinzufügen.

BitDefender Client Security Kurzanleitung

Staatlich geprüfter EDV-Führerschein

Transkript:

Lehrveranstaltung Speichersysteme Sommersemester 2009 Kapitel 9: Verbindungstechnologien I André Brinkmann

Gliederung Anbindung von I/O an Prozessoren Memory mapped I/O vs. Ported IO Programmed I/O vs. DMA SCSI ATA SAS und SATA

CPU Memory SchniOstelle CPU HautspeicherschniOstelle besteht aus: Uni direkqonalem Adressbus Bi direkqonalem Datenbus Taktsignal Write Enable Maskierungs Bits, weitere Steuersignale Hauptspeicherzugriff erfordert TransakQon auf dem Speicherbus: Read: Setze Adresse, Read, Mask Kopiere Daten nach spezifizierter Zeitdauer Schreiben: Setze Adresse, Daten, Write und Mask FerQg nach spezifizierter Zeitdauer CPU Adressbus Datenbus clk write enable mask bits Hauptspeicher Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

CPU Bus I/O CPU kommuniziert auch mit I/O Geräten wie Tastatur, Maus, Video, Netzwerk und FestplaOen Memory-mapped I/O Geräte werden in spezifischen Bereich des RAMs eingeblendet Benutzt Load/Store InstrukQonen CPU Address Data Read Write Memory Address I/O Device Ported I/O Spezielle Bussignale und InstrukQonen CPU Data Memory I/O Read Write Memory I/O Port I/O Device Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

So^ware Adressierung von I/O Geräten Memory mapped I/O Geräte werden in den Adressraum eingeblendet, z.b. 7 Segment Anzeige Standard Load and Store InstrukQonen manipulieren Geräte Ported I/O (I/O mapped I/O) Geräte werden NICHT auf den Adressraum abgebildet Spezielle Prozessorinstruk5onen fragen Daten von dem Gerät an Beispiel IN REG, PORT OUT REG, PORT Welches ist der bessere Ansatz? Memory mapped I/O benutzt bekannte Load/Store Paradigma. Es allokiert jedoch auch Teile des Adressraums Der volle Adressraum ist für den Fall von Ported I/O verfübar, es werden jedoch spezielle InstrukQonen und Kontrollsignale benöqg Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

I/O Register I/O Register verhalten sich NICHT wie normaler Speicher Ereignisse des Gerätes können Inhalt verändern (z.b. Status Registers) Lesen des Registers kann den Status verändern (z.b. Read Error CondiQon and Reset) Mehrfaches Lesen kann zu verschiedenen Ergebnissen führen Einige Register sind read only (z.b. Receive Register) Einige Register sind write only (z.b. Submit Register) Verschiedene I/O Register können auf dieselbe Adresse abgebildet werden Auswahl erfolgt durch weitere InformaQonen (z.b. Read vs. Write, Kontrollbits) Die Bits in einem Kontrollregister spezifizieren häufig sehr unterschiedliche Eigenscha^en und haben wichqge Seiteneffekte Cache muss für Memory Mapped I/O ausgeschaltet werden Beim Pollen von I/O Registern kann dem Compiler mitgegeben werden, dass der Inhalt sich von selbst Ändern kann volatile int *ptr; Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

Programmed I/O DMA (Direct Memory Access) Programmed I/O: Ein Programm auf dem Prozessor bewegt über Prozessor InstrukQonen Daten zu/von dem Gerät Ende einer TransakQon wird entweder über Polling oder durch Interrupts detekqert DMA verlangt zusätzliche Intelligenz der Geräte Ein Gerät kann Daten selbsoäqg mit Hauptspeicher austauschen Vorteil: Prozessor ist nicht länger eine Datenpumpe Nachteil: Deutlich komplizierter Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

DMA (Direct Memory Access) Prozessor On-chip Cache Memory Buffer Program DMA liest/schreibt in den Hauptspeicher Gerät Bus... während die CPU Instruktionen eines anderen Prozesses ausführt Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

Direct Memory Access Wie? Das Gerät kann Zugriffszeiten des Prozessors auf den Speicherbus klauen, wenn der Prozessor aktuell nicht liest oder schreibt Möglicher Ablauf Ein Block wird zur Übertragung vorbereitet, wobei dieser z.b. eine Größe von 512 Byte haben kann Eine Setup RouQne wird zur IniQalisierung der Übertragung ausgeführt Die Daten werden transferiert Ein Signal zeigt den Abschluss des Transfers an Weitere DMA Methoden sind möglich: Ein reines DMA Geräte kann Daten von/zu Geräten verschieben Sinnvoll, wenn viele dumme Geräte angeschlossen Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

Höhere Performanz Direct Memory Access Warum? Nur ein Interrupt für N Bytes, die transferiert werden. Dem steht ein Interrupt für jedes Byte ohne DMA Transfer entgegen Das Klauen von Buszyklen und das Durchführen des Transfers ist schneller als eine einzelne move() InstrukQon Ein Byte wird seltener über den Bus gesendet Wird für schnelle, block orienqerte Geräte verwendet: FestplaOen, Bandlaufwerke, Netzwerke,... Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

Direct Memory Access Beispiel OperaQonen auf dem Prozessor Lade Startadresse des Buffers Lade maximale Anzahl von Worten Starte DMA auf Gerät Warte auf einen Interrupt Verarbeite Inhalt der Daten struct dmadevice { /* device registers */ unsigned int startingaddressofbuffer; unsigned int wordcount; unsigned char controlandstatus; } OperaQonen auf DMA Gerät wait for start signal while (wordcount--) mem(address++) = devicedata; signal done (IRQ) Folie basiert auf Intel-Vorlesung "Introduction to Embedded Systems"

SCSI Standard SCSI ist eine RPC SchniOstelle zwischen Computern und Speichersystemen Command and Reply SCSI IniQatoren senden Kommandos SCSI Targets senden Antworten Struktur ermöglicht Erweiterung auf Netzwerke Read(block #, length) Reply(data=ABC) Folie basiert auf Vorlesung von R. Burns

SCSI System Jedes Speichersystem verfügt über einen SCSI Kontroller Jedem SCSI Kontroller muss eindeuqge ID zugeordnet werden Die Anfrage wird über ein Verbindungsmedium gesendet (SCSI Bus, FiberChannel, IP(Ethernet)) Anfragen werden in CDBs (Command Descriptor Blocks) übertragen Ziel einer Anfrage wird über ID festgelegt Host-Adapter SCSI ID 7 SCSI Kontroller ID 0 Disk 1 Lun 0 SCSI Festplatte SCSI-Bus CDB Host Computer SCSI Kontroller ID 1 Disk 2 Lun 0 SCSI Festplatte Folie basiert auf Vorlesung von R. Burns

Basic SCSI Kommandos: READ(6) Typisches Kommando: opcode(lun, LBN, length, control flags) SCSI Command Descriptor Block (CDB) (hier für Read(6)) Opcode spezifiziert Kommando LUN Logical Unit Number Logical Block Datenlänge 21 bits 512 * 2 21 = 1GB Keine Unterteilung in <Sektor, Zylinder, Kopf> # of logical blocks to transfer Control Extra Bits Folie basiert auf Vorlesung von R. Burns

Basic SCSI Kommandos: READ(10)

SCSI 2 Block Kommandos Übersicht

SCSI 2 Block Kommandos Übersicht

Folie basiert auf R. Elliot: Serial Attached SCSI General overview SCSI Standards

Folie basiert auf www.t10.org SCSI Module

ATA AT AOachment ATA FestplaOen sind heute die am meisten verbreiteten FestplaOen 1984 1986 durch Western Digital als IDE (Integrated Device Electronics) entwickelt Als ATA I Standard 1989 durch T13 Technical Commi0ee standardisiert Bietet Zugriff über PIO (Programmed I/O) oder DMA an Ermöglicht bis zu 2 Geräte pro Kontroller Mehr als 70 % Anteil am FestplaOenmarkt ATA ist eine I/O Register SchniOstelle zu den FestplaOen ATAPI (ATA Packet Interface) ermöglicht Übersendung einer Teilmenge der SCSI Kommandos an Speichergeräte

Programmierung einer ATA FestplaOe I Register der ATA FestplaOe werden in den I/O Bereich des Rechners eingeblendet Der I/O Bereich des IA32 I/O ist der Adressbereich 0x0000.. 0xFFFF Andere Rechner mappen den I/O Bereich in den regulären Adressbereich Eine FestplaOe entspricht somit für den Rechner einer Menge Register Der Prozessor liest/schreibt diese Register um die FestplaOe zu managen IA32 Architektur verfügt über spezielle InstrukQonen, um auf den I/O Bereich zuzugreifen IN und OUT InstrukQonen lesen/schreiben Geräteregister Beispiel MOV DX, 0x8000 MOV AL, 0x0000 OUT DX, AL Folie basiert auf Vorlesung von R. Burns

Folie basiert auf Vorlesung von R. Burns Programmierung einer ATA FestplaOe II

Programmierung der ATA Register Jedes Register muss mit den korrekten InformaQonen belegt werden Gerät führt programmierte InstrukQon aus Beispiel: Lesen eines Sektors von der FestplaOe SectorNumberRegister CylinderRegister Drive/headRegister SectorCounter CommandRegister: Read with PIO (Programmed I/O) Anschließend setzt Gerät das StatusRegister[BusyBit] auf 1und startet Lesevorgang Nach Abschluß des Lesevorgangs wird StatusRegister[BusyBit] zurückgesetzt und das StatusRegister[DRQ] Bit auf 1 gesetzt Server erkennt am Statusregister, dass Daten aus dem FestplaOen Buffer eingelesen: for (j< 0; j < sizeofread; j++) osbuffer[j] = dataregister; /* done with IN instruction */ Folie basiert auf Vorlesung von R. Burns

Folie basiert auf R. Elliot: Serial Attached SCSI General overview ATA Standards

Parallel Seriell SCSI und ATA waren ursprünglich parallele Verbindungstechnologien Parallele Übertragungstechniken haben Grenzen erreicht Lange Kabel führen zu Clock Skew zwischen den einzelnen Leitern Hohe Frequenzen führen zu Cross Talk zwischen den Leitern Hoher Aufwand notwendig, um gleichzeiqg Übertragungsrate und Reichweite zu erhöhen Serielle Übertragungstechnik verspricht, beide Parameter gleichzeiqg skalieren zu können

Folie basiert auf R. Elliot: Serial Attached SCSI General overview (Alte) Serielle SCSI Protokolle

SAS und SATA Serielle SCSI Protokolle bisher für den Au~au von Speichernetzwerken ausgelegt Serial ATA (SATA) als Ersatz für Parallel ATA Serial AOached SCSI (SAS) als AlternaQve für den Einsatz in einem Server SAS unterstützt SCSI und ATA Physikalische Schicht für SAS und SATA idenqsch Bis zu 3 GBit/s pro Port 8B/10B Kodierung 3 GBit/s entsprechen 300 MByte/s 3 verschiedene Transportprotokolle Serial SCSI Protocol (SSP) Unterstützt SAS (SCSI) FestplaOen, Bandlaufwerke, etc. Serial ATA Tunneling Protocol (STP) Unterstützt Serial ATA Laufwerke Serial Management Protocol (SMP) Unterstützt SAS Expanders Folie basiert auf R. Elliot: Serial Attached SCSI General overview

SAS Direct AOached und Expander AOached

SAS Netzwerke

Kostenvergleich SCSI ATA I

Kostenvergleich SCSI ATA II

Kostenvergleich SCSI ATA III