# FireWire

FireWire [ˈfaɪəˌwaɪə], i.LINK oder 1394 ist ein historischer Bus für serielle Datenübertragung.
1394 ist die Bezeichnung des Institute of Electrical and Electronics Engineers und seit der Spezifikation von 1995 ein Standard. FireWire ist die entsprechende Marke von Apple, dessen Entwicklung 1986 begann. i.LINK ist eine zusätzliche Marke von Sony. Nutzungsrechte beider Marken vergab bis zu ihrer Auflösung 2015 die 1394 Trade Association.
Nutzungsrechte grundlegender Patente vergibt die MPEG Licensing Administration. Die Zusammenlegung wurde 1999 von Apple, Compaq, Panasonic, Philips, Sony, STMicroelectronics und Toshiba vereinbart. Die Patente sind im Jahr 2020 abgelaufen.
Erst Ende der 1990er Jahre wurden Apple Macintosh und wenige andere Computer mit FireWire ausgeliefert, als Apple mit 1 Dollar Lizenzgebühr pro Anschluss überraschte. Zuvor erhielten Hersteller für 7500 Dollar eine pauschale Lizenz. Vollständige Marktdurchdringung hatte FireWire damals bereits bei DV-Camcordern erreicht, es folgte eine Kampfansage durch die einsetzende Weiterentwicklung des Universal Serial Bus. Nachdem auch Apple sich ab 2008, zugunsten von USB und Thunderbolt, schrittweise von der Schnittstelle verabschiedet hat, spielt FireWire am Markt keine Rolle mehr.
Im Frühjahr 2004 wurde die Spezifikation für Wireless FireWire verabschiedet. Sie sah eine zusätzliche Schicht, den Protocol Adaptation Layer (PAL), für FireWire über IEEE 802.15.3 vor (das ist ein Standard für Wireless Personal Area Network, WPAN). Geplant war, zum Beispiel DVD-Spieler und Soundsysteme kabellos miteinander und auch mit einem kabelgebundenen Netzwerk zu verbinden.

## Entwicklung

Die zugrundeliegende Idee für FireWire geht bei Apple bis 1986 zurück; es dauerte jedoch fast ein Jahrzehnt, bis ein Standard verabschiedet wurde. Ursprünglich (1995) gab es die drei Geschwindigkeitsklassen S100, S200 und S400 für Kabelverbindungen mit den bekannten sechspoligen Steckern, außerdem S25 und S50 für FireWire-Backplanes. Im Jahre 2000 kam mit IEEE 1394a der von Sony „i.Link“ genannte vierpolige Stecker hinzu. Ferner beinhaltet IEEE 1394a verschiedene Korrekturen und Leistungsverbesserungen bei weiterhin maximal S400. Seit 2002 gibt es den Nachfolger IEEE 1394b mit S800, S1600 und S3200. Er führt eine neue Art der Signalisierung und neue Kabel mit neunpoligen Steckern ein. Seit 2003 ist S800-Hardware verfügbar, die in der Regel als „FireWire 800“ vermarktet wird. Auch die maximale Kabellänge ist mit 100 m dank des neuen Kodierverfahrens 8b10b deutlich erhöht worden. Ab 2007 stand die Einführung von S3200 mit einer Übertragungsrate von 3,2 Gbit/s über die bisherigen S800-Kabel an.

## Architektur

Maximal sind 63 Geräte pro Bus möglich. FireWire IEEE 1394b unterstützt Ringtopologie. Bis zu 1023 Busse können mit Brücken verbunden werden, so dass insgesamt 63 · 1023 = 64 449 Geräte verbunden werden können. Die maximale Länge einer S400-Verbindung zwischen zwei Geräten beträgt 4,5 Meter. Bei der Verwendung von S200 erhöht sich der Maximalabstand auf 14 Meter. Bei FireWire nach IEEE 1394b sind als weitere Verbindungsarten Netzwerkkabel, Plastik- und Glasfaser definiert worden, die eine Kabellänge zwischen Geräten von bis zu 72 Meter gestatten. Anders als der Universal Serial Bus (USB) erlaubt FireWire die direkte Kommunikation aller Geräte untereinander (Peer-to-Peer) ohne einen Host.

## Übertragungsrate

Die Zahlen hinter dem S bzw. „FireWire“ geben die gerundete Transferrate in Megabit pro Sekunde wieder. Die exakte Datenrate der Basisversion (S100) beträgt 98.304.000 Bit/s = 96.000 × 1024 Bit/s = 12.000 × 1024 Byte/s.

## Einsatzgebiete
### Haupteinsatzgebiete

Eingesetzt wurde FireWire in den 2000er-Jahren vor allem in der Tontechnik und Videotechnik (professionelle Audio- und Videokarten), aber auch zum Anschluss externer Massenspeicher wie DVD-Brenner, Festplatten oder zur Verbindung von Unterhaltungselektronik-Komponenten. Beispielsweise bei Sony unter dem Namen „i.LINK“ und Yamaha mit „mLAN“. Auch sehr viele Audio-Interfaces für den Einsatz in der Musikproduktion wurden für den FireWire-Anschluss angeboten.
FireWire 400 (1394a) ist auf 400 Mbit/s beschränkt. Das neunpolige FireWire 800 (1394b) ist auf 800 Mbit/s beschränkt. USB 2.0 ist mit 480 Mbit/s nominell schneller als FireWire 400. Diese bei FireWire 400 und USB 2.0 theoretisch möglichen Transferraten werden durch den Protokoll-Overhead beispielsweise bei einer externen Festplatte nicht erreicht. Die Bridge-Chips in den externen Gehäusen beschränkten anfangs sowohl FireWire als auch USB. Bei Firewire 800 können 720 Mbit/s und mehr erreicht werden. Eine schnellere Alternative zu FireWire 800 waren zu jenem Zeitpunkt externe SATA-Gehäuse, die dann ohne Bridge-Chips auskamen und somit direkt auf die Hardware zugreifen konnten.
Die Stromversorgung über FireWire ist mit 1,5 Ampere bei 8 bis 33 Volt spezifiziert. Externe Festplatten können daher problemlos ohne eigenes Netzteil an einem sechs- oder neunpoligen FireWire-Port betrieben werden. USB bis 2.0 ist mit maximal 0,5 Ampere bei 5 Volt hingegen nicht auf den hohen Einschaltstrom von Festplatten ausgelegt und macht deshalb zumindest eine präzise technische Vorbereitung erforderlich.
Mit der Vorstellung von USB 3.0 im Jahr 2008 galt FireWire als veraltet. Die Bruttodatenrate von 5 GBit/s übertraf auch die von FireWire S3200. USB 3.1, welches im Jahr 2015 spezifiziert wurde, erreicht bereits 10 GBit/s. Dabei stellt es elektrische Leistungen im Bereich von 10 Watt (5 V × 2 A) bis 100 Watt (20 V × 5 A) bereit.

### Automobilindustrie

Die Industrievereinigung IDB Forum setzte sich für die Verwendung von FireWire-Schnittstellen für Multimediasysteme im Automobil ein. Die Verwendung sollte die bereits etablierten Schnittstellen wie MOST-Bus ergänzen und es dem Benutzer erlauben, Standardgeräte wie zum Beispiel Videokameras im Auto anzuschließen.
Da im Automobil die Steckverbinder besondere Anforderungen erfüllen müssen, wurden vom IDB Forum spezielle Verbinder definiert. Der IDB-1394b-Stecker basierte auf dem neunpoligen IEEE-1394b, erweiterte diesen aber um eine Rast-Arretierung gegen Kabelabfall. Des Weiteren wurde ein Führungsrahmen definiert, der die mechanische Stabilität der Buchse garantierte.

## Geräteadressierung und Bus-Management

FireWire kennt keinen definierten zentralen Host. Im Gegensatz zu USB hat jedes Gerät die technischen Voraussetzungen, Controller zu werden. Knoten-IDs und Aufgabenverteilung im Bus-Management werden jedes Mal, wenn ein Gerät zum Bus hinzugefügt oder entfernt wird, automatisch zwischen allen Geräten ausgehandelt.
Die Adressierung besteht aus insgesamt 64 bit und ist der Norm ISO/IEC 13213 (ANSI/IEEE 1212) entlehnt. Davon werden 10 bit für Netzwerk-IDs (Segment-IDs) und 6 bit für Knoten-IDs belegt. Die übrigen 48 bit werden zur Adressierung der Geräte-Ressourcen (Speicher, Register) verwendet:
| Bit 0–9 (10 bit) | Bit 10–15 (6 bit) | Bit 16–63 (48 bit) |
| Bus-ID (Segment-ID) | Geräteadressierung (Knoten-ID) | weitere Adressierung |
Der Standard IEEE 1394.1 zur Kopplung mehrerer Bussegmente ist bereits seit 2001 verabschiedet. Die konkrete Umsetzung in sogenannten Bus Bridges verlangt aber spezielle FireWire-Chipsätze, die im Gegensatz zur bislang verwendeten Hardware mehr als nur ein lokales Bussegment adressieren können. Mangels Bedarf an derart großen FireWire-Netzwerken sind diese speziellen ICs aktuell (Januar 2010) nicht am Markt verfügbar, so dass IEEE 1394.1 zurzeit nicht genutzt werden kann.
Das Gerät mit der höchsten Knoten-ID eines Segments ist dessen Root-Knoten. Es ist verantwortlich für asynchrone Arbitrierung und, als sogenannter Cycle Master, für die Synchronisierung aller Geräte für isochrone Übertragungen. Falls ein Gerät mit entsprechenden Fähigkeiten am Bus vorhanden ist, gibt es ferner den Isochronous Resource Manager zur Verwaltung von Kanälen und Datenraten, den Bus Manager unter anderem für Optimierung der Datenrate sowie den Power Manager zur Steuerung von Stromspar-Funktionen.

## Hauptmerkmale
### IEEE 1394a („FireWire 400“)

* 100, 200 oder 400 Mbit/s Übertragungsrate
* Geräte können bei laufendem Betrieb angeschlossen werden und werden automatisch erkannt: „hot plug“ und „hot unplug“
* integrierte Stromversorgung für Geräte (8 bis 33 V DC, 1,5 A, max. 48 W), außer der vierpoligen Variante, die keinen Strom liefert
* Anschluss über Shielded Twisted Pair (STP)
** dünnes und damit flexibles sechsadriges Kabel (vier Adern für Datentransfer, zwei für Stromversorgung) oder
** vieradriges Kabel (vier Adern für Datentransfer, keine Stromversorgungsleitungen)
* keine Terminatoren an den Kabelenden erforderlich
* Datenübertragung im Halbduplex-Verfahren
* 4,5 Meter max. Entfernung zwischen zwei Geräten (bei 400 Mbit/s)
* Gesamtlänge eines „Daisy-Chain“-Strangs maximal 72 Meter
* bis 63 Geräte anschließbar je Bus (bis zu 16 pro „daisy chain“-Strang)
* bis zu 1023 Busse über Brücken zusammenschließbar
* paketorientierte Datenübertragung
* schneller isochroner Modus
* Geräteadressierung automatisch (keine Jumpereinstellungen an den Geräten oder ID-Schalter notwendig)

### IEEE 1394b („FireWire 800“)

Merkmale wie 1394a mit folgenden Erweiterungen und Änderungen:
* 800 Mbit/s Übertragungsrate
* neues, neunadriges Kabel und neue Stecker
* neues Arbitrierungsverfahren (Protokoll) BOSS (Bus Ownership / Supervisor / Selector)
* andere Signalkodierung und Signalpegel, „beta-Mode“
* Abwärtskompatibilität zu 1394a durch bilinguale Chips (auch Betrieb ausschließlich im neuen „beta-Mode“ möglich, dadurch allerdings keine Abwärtskompatibilität mehr)
* erlaubt den Einsatz verschiedener Kabelmaterialien (zum Beispiel Lichtwellenleiter aus Glasfaser, UTP)
* erlaubt längere Kabelverbindungen (in Abhängigkeit vom Kabelmedium, zum Beispiel 100 m bei Verwendung von UTP-Kabeln bis S100)

### IEEE 1394–2008 („FireWire S1600 und S3200“)

Im Oktober 2008 wurde unter der Bezeichnung IEEE 1394–2008 eine vollständig überarbeitete Version des Standards veröffentlicht. Sie fasst den Basisstandard IEEE1394-1995 sowie die beiden Erweiterungen IEEE1394a-2000 und IEEE1394b-2002 in einem konsistenten Dokument zusammen. Zudem wurden von den Mitgliedern der 1394 Trade Association in den ursprünglichen Standards zahlreiche Fehler entdeckt und beseitigt. Als wesentliche Neuerung wurde die elektrische Spezifikation für eine Übertragungsrate von 3,2 Gbit/s hinzugefügt. IEEE1394-2008 ist die nun gültige Version des FireWire-Standards, die älteren Dokumente des IEEE sollen zukünftig nicht mehr verwendet werden. Im Jahr 2012 wurde FireWire S3200 eingestellt.

## Sicherheitsprobleme

Die OHCI-Spezifikation (Open Host Controller Interface) beinhaltet eine Betriebsart für FireWire-Controller, in der FireWire-Geräte den Hauptspeicher eines Rechners auslesen oder überschreiben können (Direct Memory Access, DMA). Wird diese Betriebsart von einem Treiber konfiguriert, werden Lese- und Schreibanfragen autonom von der Hardware ausgeführt, ohne Software auf diesem Rechner zu involvieren. Dies ermöglicht weitgehende Kontrolle des Rechners durch andere am FireWire-Bus angeschlossene Teilnehmer. Zumindest in der voreingestellten Konfiguration sind unter anderem Windows, FreeBSD, macOS und Linux anfällig; da aber ein Hardware-Mechanismus zum Tragen kommt, muss im eigentlichen Sinne gar kein Betriebssystem gestartet sein – es reicht ein Bildschirm des BIOS.

## Pinbelegung

Zu beachten ist, dass bei Kabeln mit zwei Steckern die Datenleitungen TPA und TPB gekreuzt sind, das heißt TPA+ geht an TPB+ und TPA− geht an TPB−.
| vierpoliger 1394a- Stecker | sechspoliger 1394a- Stecker | neunpoliger 1394b Stecker | Bezeichnung |
| – | 1 | 8 | positive Versorgungsspannung VP, bis 30 Volt, meist +12 Volt |
| – | 2 | 6 | GND |
| 1 | 3 | 1 | TPB− |
| 2 | 4 | 2 | TPB+ |
| 3 | 5 | 3 | TPA− |
| 4 | 6 | 4 | TPA+ |
| – | 2 | 5 | Schirm TPA |
| – | 2 | 9 | Schirm TPB |
| – | – | 7 | nicht belegt |
Die Pin-Belegung von IEEE-1394-Pfostensteckern auf Hauptplatinen ist nicht herstellerübergreifend standardisiert und weicht daher in der Regel von dieser Tabelle ab. Üblich sind sowohl 2×5-Pin- als auch 2×8-Pin-Pfostenstecker. Kanal A lässt sich anhand der (positiven) Leerlaufspannung identifizieren: sowohl TPA+ als auch TPA- werden mit TPBIAS beaufschlagt. TPB ist passiv terminiert. VP/GND kann nach Spezifikation mit 1,5 Ampere belastet werden, je nach realisierter VP also bis zu 45 Watt. Korrekt sind die Abschirmung des Twisted-Pairs A und die Abschirmung des Twisted-Pairs B im Kabel voneinander isoliert, erst im Anschluss sternförmig miteinander und mit GND verbunden, nicht aber mit der äußeren Kabelabschirmung. Diese Verbindung kommt nur im vierpoligen i.Link-Stecker zustande.
Auch bei den nicht standardkonformen, aber firmenübergreifend gleichen Rundsteckverbindern an hochpreisiger Mess- und Sensortechnik gibt es unterschiedliche Anschlussbelegungen.