SCSI
Transcrição
SCSI
Inhalt Teil 9 (Peripheriebusse) aus 8. Busse und Systemstrukturen 8.2 Peripheriebusse 8.2.1 IDE/ATA, ATAPI, PATA 8.2.2 Serial ATA (SATA), 2001 8.2.3 SCSI-Bus 8.2.4 Serial Attached SCSI (SAS) 8.2.5 FireWire 8.2.6 Fibre-Channel 8.2.7 Universal Serial Bus (USB) seriell, parallel PS/2, Floppy R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 1 Parallele und Serielle Peripheriebusse Nachteile der parallelen Datenübertragung viele Verbindungen, breite Steckverbindungen, Übersprechen, Reflexionen, Flankenversatz, viele Treiber, Entfernung begrenzt Ziele hohe Übertragungsraten, mittlere Entfernungen geringer Verkabelungs und Steckeraufwand Lösung: schnelle serielle Datenübertragung Techniken: differentielle Übertragung, verdrillte Leitungen, Koaxialkabel, Glasfaser geringer Stromverbrauch R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 2 8.2 Peripheriebusse - Übersicht 1994: IDE/ATA, ATAPI (Integrated Drive Electronics, ATAttachment), PATA Einfacher paralleler Anschluss von zwei Plattenspeichern SCSI (Small Computer System Interface) Paralleler Anschluss von schnellen Platten, Vernetzung mit anderen Hosts 2001: SATA (Serial ATA) SAS (Serial Attached SCSI) Einfacher serieller Anschluss von Standard-Peripheriegeräten Fibre-Channel R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Serieller Anschluss von schneller Peripherie, Data-StreamingAnwendungen USB (Universal Serial Bus) Serieller Nachfolger von SCSI FireWire serieller Nachfolger von PATA hohe Bandbreite und geringe Latenz auch über große Distanzen, Speichernetze Systementwurf mit Mikroprozessoren WS 09/10 3 Parallele und serielle Peripheriebusse 4 Tabelle 8-1. Parallele und serielle Peripheriebusse und Punkt-zuPunkt-Verbindungen mit ihren maximalen Übertragungsraten (abhängig von der Leitungsart). Angabe des maximalen Geräteabstands zur Verdeutlichung der Einsatzmöglichkeiten (rechnernah, rechnerfern) sowie der Anzahl adressierbarer Geräte. Bei Serial ATA, Serial Attached SCSI und Fibre Channel sind mit Mbit/s die Brutto- und mit Mbyte/s die Nettoübertragungsraten angegeben (8B/10B-Codierung!), sonst in beiden Fällen die Nettoraten (auch bei FireWire 1394b mit ebenfalls 8B/10BCodierung); bei Serial Attached SCSI verdoppelt sich die angegebene Rate beim Vollduplexbetrieb SATA SAS R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 8.2.1 IDE/ATA, ATAPI 5 IDE/ATA (Integrated Drive Electronics, AT-Attachment) 1994, Paralleler Anschluss von Plattenspeichern an den ISA(AT)Bus (16-bit-Daten) 40-adriges Flachbandkabel ISA-Adapter (Adress-Decodierung, Treiber) (wird auch als PATA = Parallel ATA bezeichnet) Zwei Platten an das Kabel anschließbar Zwei Registersätze für • Kommando • Sektornummer, Zylindernummer • Daten • Control, Status früher ATAPI Festplatte mit IDE/ATA-Controller IDE: Integrated Device Electronics ISA (AT) PATA (heute) Bild 8-12. Heutige und frühere Schnittstellen bei Festplattenlaufwerken (in Anlehnung an [Schmidt 1998]) ISA (Industry Standard Architecture) ist ein 16Bit-Bus-Standard für IBM kompatible PCs R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 IDE-Erweiterung: ATAPI Zusätzliche Kommandos um weitere Geräte anschließen zu können (CD, DVD) IDE/ATAPI-Controller stellt 2 IDEKanäle zur Verfügung, an jeden sind zwei Geräte anschließbar werden in dem alten Kommandoformat verpackt ATA Packet Interface = ATAPI in der Southbridge enthalten oder als Einsteckkarte für den PCI-Bus DMA-Unterstützung PATA Modus: Ultra-ATA/133 seit 2001, 2005 133 MByte/s Double Data Rate Beschleunigung das Transfers zwischen Controller und Plattenspeicher FIFO im IDE-Kanal Sektorpuffer im Plattenspeicher EIDE: Enhanced IDE 4 Kanäle statte nur 2 R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 6 8.2.2 Serial ATA (SATA), 2001 Serieller Nachfolger von PATA PCI-X nur 7 Leitungen (2 Datenpaare und 3 Masse) differentielle Übertragung (+0,25 V, -0,25 V), LVDS (Low voltage differential signaling) 8B/10B Signalcodierung Software-kompatibel zu PATA-Kommandos (werden im seriellen SATA-Format verpackt) Nettoübertragungsrate 7 SATA 1: 1,2 GBit/s (150 MByte/s), 2005: SATA 2 (300 MByte/s) geplant bis SATA 3: 600 MByte/s Daten (Halbduplex), Handshake (Vollduplex) PCI-X Interface DMA, Progr.IO Transport-Layer Link-Layer Physical-Layer Southbridge ODER SATA-Controller R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 SATA Gerät 8.2.3 SCSI-Bus Ziel: Flexible schnelle Verbindung von mehreren SCSI Plattenspeichern (auch >2) mit einem oder mehreren Rechnern 1979 von der Fa. Shugart entwickelt: SASI (Shugart Associates System Interface), weiter entwickelt und 1986 als SCSI genormt. Paralleler (8/16-Bit-) Bus, multimasterfähig Dezentrale Busarbitration Datenübertragung zwischen einem Initiator und einem oder mehreren Targets 8 SCSIPlattencontroller1 Systembus1 SCSI-HostAdapter SCSIPlattencontroller2 SCSI SCSIStreamercontroller Anzahl der Geräte am Bus ist auf die Datenbusbreite begrenzt Statische Einstellung der Geräteadressen, Busenden müssen elektrisch abgeschlossen werden Ein Gerät kann mehrere LUNs (log. units) enthalten Systembus2 SCSI-HostAdapter mulit drop bus R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 Weiterentwicklungen, Varianten SCSI-Standards 9 Busbreite [Bit] Takt [MHz] DÜ-Rate [MByte/s] 1986 Narrow 8 5 5 1989 Fast 8 10 10 1989 Fast Wide 16 10 20 1992 Ultra 8 20 20 Ultra Wide 16 20 40 Ultra 2, Fast 40 8 40 40 Ultra 2 Wide 16 40 80 1999 Ultra 3 Wide (U160) 16 40 DDR 160 2002 Ultra 4 Wide (U320) 16 80 DDR 320 1997 R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 SCSI-Protokoll 10 (meist Host-Adapter) Target Initiator Initiator bewirbt sich um den Bus: IN legt dazu ID-Byte (ein Datenbit) auf den Datenbus Initiator wählt Target aus: IN-Bit und TA-Bit liegen auf den Datenbus BUS FREE ARBITRATION SELECTION übernimmt Kontrolle (BSY# aktiv) fordert Kommandos an COMMAND Datenübertragung Status, Message zurück IN=Initiator TA=Target gibt Kontrolle zurück R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 n * (8/16 Bit) erfolgreich, Aufrechterhaltung der Verbindung (BSY# inaktiv) SCSI Arbitrierung 11 Jedes Gerät hat eine ID-Nummer, entspricht einem bestimmten Bit auf dem Bus D7: höchste Priorität D0: niedrigste Priorität (bei 16 Bit-Bus folgen danach die Bits D15 bis D8) Wenn der Bus frei ist, legt jeder Initiator sein ID-Bit (wired or) auf den Bus. Wenn es eine Anmeldung höherer Priorität gibt, nimmt er seine Anmeldung zurück. (vergl. Identifikationsbus, hier 1-aus-n-Code zur Anmeldung) Contro l D7..D0 Übertragung der IDs Kommandos Daten Status Message Der Initiator mit der höchsten Priorität wählt das Target aus, durch das zusätzliche Anlegen des Target-ID-Bits (dadurch entsteht 2-aus-n Code) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 8.2.4 Serial Attached SCSI (SAS), 2004 Serieller Nachfolger des parallelen SCSI 7 Leitungen wie bei SATA (2 Datenpaare und 3 Masse) 8B/10B-Codierung Kein Bus mehr: Baumstruktur Netto-Übertragungsrate z. Zt. 300 MByte/s (3 GBit/s brutto), Vollduplex Virtuelle Kanäle: Wie bei ParallelSCSI können mehr als 14.000 virtuelle Datenkanäle, verteilt auf 256 Ebenen gleichzeitig aktiv sein R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur 5-Schichtenmodell 1. Physical (Medium) 2. Phy (Transceiver, Geräteanschluss) 3. Link CRC-Datensicherung, Data-Scrambling, Steuerung, Adressierung, Verwalten logischer Verbindungen Zusammenfassen mehrerer Physikalischer Verbindungen zu einem Wide-Port Protokollauswahl: SSP (Serial SCSI Protocol), STP (SATA Tunneling Protocol), SMP (Serial Managment Protocol) 1. Transport frame definitions 2. Application SCSI oder ATA spezifische Eigenschaften Systementwurf mit Mikroprozessoren WS 09/10 12 SAS-Netzstruktur Punkt-zu-PunktVerbindungen zwischen den Ports (kein Bus wie bei SCSI) Komplexe Strukturen durch Verzweigungen (Expander). Erhöhung der Bandbreite durch Wide-Ports und Wide-Links Mischung von SAS- und SATA-Geräten ist möglich Anschluss von Dual-PortDrives zur Erhöhung der Redundanz möglich Bild 8-18. SAS-Struktur mit mehreren Initiatoren (z. B. Server) und Targets (SAS- und SATA-Festplatten), die durch mehrere Edge-Expander und einen Fan-Out-Expander miteinander vernetzt sind (in Anlehnung an [Griffith 2003]) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 13 Weitere Serielle Busse, orientiert an SCSI 14 Bevor SAS definiert wurde gab es bereits folgende Entwicklungen FireWire IEEE1394 (Apple), für Data Streaming 1995: ursprünglich nur auf Macintosh 2000: IEEE1394a2002: IEEE1394b Fibre-Channel, ANSI-Standard (diverse Firmen, 1994), für Speichernetze Serial Storage Architecture SSA, ANSI-Standard (IBM, 1990) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur zusammengefasst in SCSI-3 Systementwurf mit Mikroprozessoren WS 09/10 SCSI-3 Architekturmodell 15 FireWire, Fibre-Channel, Serial Storage Architecture SSA wurden in dem SCSI-3-Architekturmodell (1993) zusammengefasst. Verwendung einer gemeinsamen Kommandostruktur in Anlehnung an SCSI (Ebene 1 und 2) Je nach ausgewähltem Transport-Protokoll erfolgt eine entsprechende Abbildung auf die Kommunikationsmechanismen und die physikalische Schnittstellen (Ebene 3 und 4) Allgemeines Architekturmodell, das für die serielle Busse FireWire, Fibre-Channel, SerialStorage-Architecture SSA verwendet wird. 4 Ebenen: 1. (Command Sets) gerätespezifische Kommandos nach Gruppen (Block, Stream, Graphic) 2. (Primary Commands) gemeinsame Kommandos für alle Gruppen 3. (Transport Protocols) Auswahl der verschiedenen seriellen und parallelen Protokolle 4. (Physical Interconnect) Physikalische Vorgaben für die Protokolle R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 fest variabel 8.2.5 FireWire Anwendungen unterbrechungsfreies DataStreaming (Digital Video, Musik, Festplattenanschluss) Sony: Digital Video Camcorder Übertragungsraten 100 MBit/s, 200 MBit/s und 400 MBit/s Erweiterungen auf 800, 1600, 3200 MBit/s 6 Leitungen 1 twisted-pair (Daten, Halbduplex) 1 twisted-pair (Takt, ändert sich, wenn sich die Daten nicht ändern) 2 Leitungen für Stromversorgung Bis zu 63 Geräte beliebig anschließbar (+ Hostadapter) maximal 4,5 m Entfernung R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur 16 Multimastersystem (jede Verbindung erfordert Busarbitration) Peer-to-Peer (direkte Transfers vom Sender zum Empfänger ohne Host). Plug-and-Play, selbstkonfigurierend Knoten werden automatisch durchnummeriert es wird automatisch ein Wurzelknoten bestimmt, der den Takt vorgibt und den Bus arbitriert max. Übertragungsraten werden bekannt gemacht Systementwurf mit Mikroprozessoren WS 09/10 FireWire Bild 8-19. Typische FireWire-Busstruktur, wie sie sich nach der Selbstkonfigurierung darstellt (nach [Anderson 1999]). Anschluss an einen PCI-Bus mittels eines PCI-to-IEEE-1394aAdapters R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 17 FireWire Asynchrone Übertragung (ohne garantiertes Übertragungsverhalten) 1. Initiator belegt den Bus nach Busarbitration 2. Initiator verschickt Anforderungspaket (Request Packet) • (Quelladresse, Zieladresse, [Daten], Kommando) 3. Empfänger antwortet mit Antwortpaket (Response Packet) • (Adresse, [Daten], Status) Isochrone Übertragung (garantiertes Übertragungsverhalten) quasi kontinuierlicher Datenstrom Reservierung von bis zu 80% der Zeitschlitze (je 125 µs), Rest für asynchrone Übertragung Keine Quittung durch Response Packet keine Zieladresse Broadcasting R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 18 FireWire Bild 8-20. Zuordnung von isochronen und asynchronen Übertragungspaketen zu Zeitschlitzen (cycles) von 125 µs Dauer (nach [Anderson 1999]) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 19 Elektrische Schnittstelle und Taktung Bild 8-22. Elektrische Schnittstelle des FireWire-Busses nach IEEE 1394a, gezeigt für eines der beiden Adernpaare. Das andere Adernpaar ist dazu spiegelbildlich (nach [Anderson 1999]) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Bild 8-23. Datendarstellung des FireWireBusses nach IEEE 1394a. Taktrückgewinnung auf der Empfängerseite durch Exklusiv-OderVerknüpfung der Signale Data und Strobe (nach [Anderson 1999]) Systementwurf mit Mikroprozessoren WS 09/10 20 8.2.7 Universal Serial Bus (USB) Ziel: Einfacher flexibler Anschluss diverser Peripheriegeräte über genormten Anschluss (INTEL und weitere Firmen) Serielle Halbduplex-Verbindungen über 4-adriges Kabel (Differentielles Leitungspaar und Spannungsversorgung) USB 1.1: 1,5 MBit/s (Low-Speed) oder 12 MBit/s (Full-Speed) USB 2.0: bis 480 MBit/s (HighSpeed), abwärtskompatibel Stromversorgung: Geräte können über den Anschluss mit Strom versorgt werden. R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur 21 Hot Plug and Play (Geräte während des laufenden Betriebs anschließen) Zentrale Verwaltung durch USB-HostController (Root-Hub), nicht multimasterfähig Geräte: Geeignet zum Anschluss von Tastatur, Maus, Scanner, Drucker, Audiound Video-Daten, Plattenspeicher Systementwurf mit Mikroprozessoren WS 09/10 Baumstruktur LS=Low Speed FS=Full Speed HS=High Speed 22 Root-Hub USB-Host-Controller (zentraler Controller, Master) Geschwindigkeit wird durch das langsamste Glied in der Kette bestimmt Hub reicht die Datenpakete weiter und verstärkt die Signale (Repeater) Bild 8-26. USB-Struktur mit Low-Speed-, Full-Speed- und HighSpeed-Komponenten (nach [Anderson, Dzatko 2001]) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 Frames und Microframes 1 ms (12 MHz-Takt) 125 us (480 MHz Takt) Bild 8-27. Aufteilung der Übertragungskapazität des USB mittels Frames und Microframe (nach [Anderson, Dzatko 2001]) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Die Daten werden in Pakete aufgeteilt, die innerhalb der Zeitrahmen (Frames) bestimmte Anteile zugeteilt bekommen. Systementwurf mit Mikroprozessoren WS 09/10 23 Transfer Types 1. Interrupt Transfer Abfrage der Geräteanmeldungen in kurzen Abständen (Polling), schnelle Reaktion bis zu 1024 Byte bei High-Speed für Maus, Tastatur, ... 2. Bulk Transfer 3. Isochronous Transfer Garantie fester Übertragungsrate. Video/Audio, nach den Start kann das Ende der Übertragung vorhergesagt werden. bis zu 90% des Rahmens reserviert, keine Wiederholung bei Fehler Echtzeitübertragung von Sprache, Musik schnelle Datenblock-Übertragung 4. Control Transfer wird erst nach allen sonstigen Transfertypen gestartet, ohne Start- und Konfigurierung, Anforderungen an Endegarantie, Wiederholung bei Fehler Geräte, bis zu 20% 512 Byte Paketgröße bei High-Speed bis zu 53,248 MByte/s für Scanner, Drucker, Platte, ... R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Control Pipe zum Endpunkt 0 ist immer verfügbar Dabei können auch Daten mit übertragen werden. Systementwurf mit Mikroprozessoren WS 09/10 24 Pipes (Übertragungskanäle) Die Übertragungskanäle werden beim USB Pipes genannt. Es werden unterschieden unidirektionale Streampipes • Interrupt-, Bulk-, Isochronous-Transfer Pipes werden zwischen Endpoints (Host, Gerät, Transfer Type) bei der Initialisierung eines USB-Geräts eingerichtet. Zu den Pipeattributen zählen auch Übertragungsbandbreite und Puffergröße. Zu einem Gerät können mehrere Pipes (logische Kanäle) eingerichtet werden (bis zu 16). R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur bidirektionale Messagepipes • nur bei Control-Transfers Eine Messagepipe (Control Pipe 0) ist bei jedem Gerät vorhanden. Sie dient der Gerätekonfiguration und zur Übertragung von Status- und Kontrollinformation. Systementwurf mit Mikroprozessoren WS 09/10 25 Bustransaktionen Die Bustransaktionen werden vom Host-Controller verwaltet und bestehen aus der Übertragung von folgenden Paketen 1. Token-Packet. Jede Transaktion beginnt mit der Übertragung eines Tokens vom Host. Das Token beschreibt Typ und Richtung der Übertragung und enthält die Geräteadresse. Die Geräte am Bus selektieren sich selbst durch Erkennung der eigenen Adresse im Token. 2. Data-Packet (vom/zum Gerät) bis zu drei aufeinanderfolgende im Rahmen 3. Handshake-Packet (Empfänger quittiert Übertragung) nicht bei Isochronous-Transfer R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 26 Signalcodierung NRZI = Non Return to Zero with Interchange Bit-Stuffing zur Synchronisation 6 Einsen Wechsle bei 0 Jede Datenübertragung eines Packets beginnt mit SYNC = 0 0 0 0 0 0 0 1 NRZI-SYNC = 0 1 0 1 0 1 0 0 Bild 8-29. Signaldarstellung des USB (nach [Anderson, Dzatko 2001]) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 27 Elektrische Schnittstelle Bild 8-28. USB-Schnittstelle (nach [Anderson, Dzatko 2001]) R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 28 8.2.6 Fibre-Channel Motivation/Historie: Bedarf an EAKanälen mit hoher Bandbreite und geringer Latenz auch über große Distanzen (>10 km) Einsatz: zur Vernetzung von Workstations, Mainframes, Super Computern, Speichern und Displays Hauptanwendung: Zugriff von mehreren Rechnern auf lokale Speichernetze unabhängig vom LAN Punkt-zu-Punkt-Verbindungen, Vollduplex 1 GHz Takt, 8B/10B-Codierung Nettodatenrate 100 MByte/s R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Verschiedene Netztopologien werden unterstützt 1. Direkte Verbindung zwischen zwei Ports (z. B. Server und Festplattenspeicher) 2. Ring-Struktur (Arbitrated Loop), die Geräte sind ringförmig miteinander verbunden, Realisierung auch mit Hubs 3. Switched Fabric: zentrale intelligente Schalteinheit, kann gleichzeitig Verbindungen für alle angeschlossenen Ports herstellen. Skalierbare Leistung. Systementwurf mit Mikroprozessoren WS 09/10 29 Speichernetz 30 Fibre Channel Copyright Ulf Troppens http://www.speichernetze.com/ R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 Speichernetz Bild 8-25. Symbolisiertes lokales Netz (LAN) mit einem über einen Switch gebildeten Speichernetz (SAN), z. B. als Fabric Topology des Fibre-Channel R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 31 Zusammenfassung Serielle Übertragung PATA SATA seriell, Streaming USB (Universal Serial Bus) FireWire, Fibre-Channel, Serial-Storage-Architecture SSA. FireWire paralleler serieller Anschluss Plattenspeichern, Vernetzung multimasterfähig, Punkt zu Punkt SCSI-3: Allgemeines Architekturmodell für einfacher paralleler serieller Anschluss von Plattenspeichern nicht multimasterfähig SCSI (Small Computer System Interface) SAS (Serial Attached SCSI) hohe Übertragungraten, geringer Aufwand nicht multimasterfähig Fibre-Channel hohe Bandbreite, geringe Latenz Speichernetze R. Hoffmann, TU Darmstadt, FG Rechnerarchitektur Systementwurf mit Mikroprozessoren WS 09/10 32