The IEEE 1394 interface is a serial bus interface standard for high-speed communications and isochronous real-time data transfer, frequently used by personal computers, as well as in digital audio, digital video, automotive, and aeronautics applications. The interface is also known by the brand names of FireWire (Apple), i.LINK (Sony), and Lynx (Texas Instruments). IEEE 1394 replaced parallel SCSI in many applications, because of lower implementation costs and a simplified, more adaptable cabling system. The 1394 standard also defines a backplane interface, though this is not as widely used.
IEEE 1394 is the High-Definition Audio-Video Network Alliance (HANA) standard connection interface for A/V (audio/visual) component communication and control. FireWire is also available in wireless, fiber optic, and coaxial versions using the isochronous protocols.
Nearly all digital camcorders have included a four-circuit 1394 interface, though, except for premium models, such inclusion is becoming less common. It remains the primary transfer mechanism for high-end professional audio and video equipment. Since 2003, many computers intended for home or professional audio/video use have built-in FireWire/i.LINK ports, especially prevalent with Sony and Apple’s computers. The legacy (alpha) 1394 port is also available on premium retail motherboards.
FireWire is Apple’s name for the IEEE 1394 High Speed Serial Bus. It was initiated by Apple (in 1986) and developed by the IEEE P1394 Working Group, largely driven by contributions from Apple, although major contributions were also made by engineers from Texas Instruments, Sony, Digital Equipment Corporation, IBM, and INMOS/SGS Thomson (now STMicroelectronics).
IEEE 1394 is a serial bus architecture for high-speed data transfer. Compared to older avionics data buses such as MIL-STD-1553, FireWire is a serial bus, meaning that information is transferred one bit at a time. Parallel buses utilize a number of different physical connections, and as such are usually much less efficient, more costly, and typically heavier. FireWire fully supports both isochronous and asynchronous applications.
Apple intended FireWire to be a serial replacement for the parallel SCSI bus while providing connectivity for digital audio and video equipment. Apple’s development began in the late 1980s, later presented to the IEEE, and was completed in 1995. As of 2007, IEEE 1394 is a composite of four documents: the original IEEE Std. 1394-1995, the IEEE Std. 1394a-2000 amendment, the IEEE Std. 1394b-2002 amendment, and the IEEE Std. 1394c-2006 amendment. On June 12, 2008, all these amendments as well as errata and some technical updates were incorporated into a superseding standard IEEE Std. 1394-2008.
Apple’s internal long-time code-name for FireWire was “Chefcat” starting in 1988 as the team sat around a conference table contemplating what to call the project and staring at Kliban’s famous artwork on Michael Johas Teener’s coffee mug. That was the “aha” moment articulating the goals of the new interconnect, at low cost and ultimate simplicity presented to the user to replace and unify all other PC interconnections and expand beyond that base to enable ultimate miniaturization of electronics. The concept of the current loop electronics that became the now pervasive LVDS was code named “Greyhound” around 1992.
Sony’s implementation of the system, “i.LINK”, used a smaller connector with only the four signal circuits, omitting the two circuits which provide power to the device in favor of a separate power connector. This style was later added into the 1394a amendment. This port is sometimes labeled “S100” or “S400” to indicate speed in Mbit/s.
The system is commonly used for connection of data storage devices and DV (digital video) cameras, but is also popular in industrial systems for machine vision and professional audio systems. It is preferred over the more common USB for its greater effective speed and power distribution capabilities. Perhaps more important, FireWire uses all SCSI capabilities and has high sustained data transfer rates, important for audio and video editors. Benchmarks show that the sustained data transfer rates are higher for FireWire than for USB 2.0, but lower than USB 3.0. Results are marked on Apple Mac OS X but more varied on Microsoft Windows.
However, the expensive hardware needed to implement it (US$1–$2) has prevented FireWire from displacing USB in low-end mass-market computer peripherals, where product cost is a major constraint.
Under the license offered by MPEG LA, a royalty of US$0.25 per unit is payable upon the manufacture of each 1394 product.
FireWire 400 (IEEE 1394-1995)
The original release of IEEE 1394-1995 specified what is now known as FireWire 400. It can transfer data between devices at 100, 200, or 400 Mbit/s half-duplex data rates (the actual transfer rates are 98.304, 196.608, and 393.216 Mbit/s, i.e., 12.288, 24.576 and 49.152 megabytes per second respectively). These different transfer modes are commonly referred to as S100, S200, and S400.
Cable length is limited to 4.5 metres (14.8 ft), although up to 16 cables can be daisy chained using active repeaters; external hubs, or internal hubs are often present in FireWire equipment. The S400 standard limits any configuration’s maximum cable length to 72 metres (236 ft). The 6-circuit connector is commonly found on desktop computers, and can supply the connected device with power.
The 6-circuit powered connector, now referred to as an alpha connector, adds power output to support external devices. Typically a device can pull about 7 to 8 watts from the port; however, the voltage varies significantly from different devices. Voltage is specified as unregulated and should nominally be about 25 volts (range 24 to 30). Apple’s implementation on laptops is typically related to battery power and can be as low as 9 V.
Improvements (IEEE 1394a-2000)
An amendment, IEEE 1394a, was released in 2000, which clarified and improved the original specification. It added support for asynchronous streaming, quicker bus reconfiguration, packet concatenation, and a power-saving suspend mode.
IEEE 1394a offers a couple of advantages over IEEE 1394. 1394a is capable of arbitration accelerations, allowing the bus to accelerate arbitration cycles to improve efficiency. It also allows for arbitrated short bus reset, in which a node can be added or dropped without causing a big drop in isochronous transmission.
1394a also standardized the 4-circuit alpha connector developed by Sony and trademarked as “i.LINK“, already widely in use on consumer devices such as camcorders, most PC laptops, a number of PC desktops, and other small FireWire devices. The 4-circuit connector is fully data-compatible with 6-circuit alpha interfaces but lacks power connectors.
FireWire 800 (IEEE 1394b-2002)
IEEE 1394b-2002 introduced FireWire 800 (Apple’s name for the 9-circuit “S800 bilingual” version of the IEEE 1394b standard). This specification and corresponding products allow a transfer rate of 786.432 Mbit/s full-duplex via a new encoding scheme termed beta mode. It is backwards compatible to the slower rates and 6-circuit alpha connectors of FireWire 400. However, while the IEEE 1394a and IEEE 1394b standards are compatible, FireWire 800’s connector, referred to as a beta connector, is different from FireWire 400’s alpha connectors, making legacy cables incompatible. A bilingual cable allows the connection of older devices to the newer port. In 2003, Apple was the first to introduce commercial products with the new connector.
The full IEEE 1394b specification supports data rates up to 3200 Mbit/s (i.e., 400 megabytes/s) over beta-mode or optical connections up to 100 metres (330 ft) in length. Standard Category 5e unshielded twisted pair supports 100 metres (330 ft) at S100. The original 1394 and 1394a standards used data/strobe (D/S) encoding (renamed to alpha mode) on the circuits, while 1394b adds a data encoding scheme called 8B10B referred to as beta mode.
Beta mode is based on 8B/10B (Gigabit Ethernet & Fibre Channel). 8B/10B encoding involves expanding an 8 bit data word into 10 bits, with the extra bits after the 5th and 8th data bits. The partitioned data is sent through a Running Disparity calculator function. The Running Disparity calculator attempts to keep the number of 1s transmitted equal to 0s, thereby assuring a DC-balanced signal. Then, the different partitions are sent through a 5B/6B encoder for the 5 bit partition and a 3B/4B encoder for the 3 bit partition. This gives the packet the ability to have at least two 1s, ensuring synchronization of the PLL at the receiving end to the correct bit boundaries for reliable transfer. An additional function of the coding scheme is to support the arbitration for bus access and general bus control. This is possible due to the “surplus” symbols afforded by the 8B/10B expansion. (While 8-bit symbols can encode a maximum of 256 values, 10-bit symbols permit the encoding of up to 1024.) Symbols invalid for the current state of the receiving PHY indicate data errors.