Sei sulla pagina 1di 4

IEEE 1394

Introduction
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. IEEE 1394 is 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.

Technical Specification
FireWire can connect up to 63 peripherals in a tree or daisy-chain topology (as opposed to Parallel SCSI's electrical bus topology). It allows peer-to-peer device communication such as communication between a scanner and a printer to take place without using system memory or the CPU. FireWire also supports multiple hosts per bus. It is designed to support plug and play but not hot swapping. The copper cable it uses in its most common implementation can be up to 4.5 meters (15 ft) long and is more flexible than most parallel SCSI cables. In its six-circuit or nine-circuit variations, it can supply up to 45 watts of power per port at up to 30 volts, allowing moderate-consumption devices to operate without a separate power supply. FireWire devices are organized at the bus in a tree topology. Each device has a unique self-id. One of the nodes is elected root node and always has the highest id. The self-ids are assigned during the self-id process, which happens after each bus resets. The order in which the self-ids are assigned is equivalent to traversing the tree depth-first, post-order.

FireWire is capable of safely operating critical systems due to the way multiple devices interact with the bus and how the bus allocates bandwidth to the devices. FireWire is capable of both asynchronous and isochronous transfer methods at once. Isochronous data transfers are transfers for devices that require continuous, guaranteed bandwidth. In an aircraft, for instance, isochronous devices include control of the rudder, mouse operations and data from pressure sensors outside the aircraft. All these elements require constant, uninterrupted bandwidth. To support both elements, FireWire dedicates a certain percentage to isochronous data and the rest to asynchronous data. In IEEE 1394 80% of the bus is reserved for isochronous cycles, leaving asynchronous data with a minimum of 20% of the bus.

Standard and Versions


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 meters (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 meters (236 ft). The 6circuit 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.

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. 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 meters (330 ft) in length. Standard Category 5e unshielded twisted pair supports 100 meters (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 & Fiber 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.

FireWire S800T (IEEE 1394c-2006)


IEEE 1394c-2006 was published on June 8, 2007. It provided a major technical improvement, namely new port specification that provides 800 Mbit/s over the same 8P8C (Ethernet) connectors with Category 5e cable, which is specified in IEEE 802.3 clause 40 (gigabit Ethernet over copper twisted pair) along with a corresponding automatic negotiation that allows the same port to connect to either IEEE Std 1394 or IEEE 802.3 (Ethernet) devices.

Operating system support


Full support for IEEE 1394a and 1394b is available for Microsoft Windows, FreeBSD, Linux, and Apple Mac OS 8.6 through Mac OS 9, Mac OS X, NetBSD, and Haiku. In Windows XP, degradation in performance of 1394 devices may have occurred with installation of Service Pack 2. This was resolved in Hotfix 885222 and in SP3. Some FireWire hardware manufacturers also provide custom device drivers which replace the Microsoft OHCI host adapter driver stack, enabling S800-capable devices to run at full 800 Mbit/s transfer rates on older versions of Windows (XP SP2 w/o Hotfix 885222) and Windows Vista. At the time of its release, Microsoft Windows Vista supported only 1394a, with assurances that 1394b support would come in the next service pack. Service Pack 1 for Microsoft Windows Vista has since been released, however the addition of 1394b support is not mentioned anywhere in the release documentation. The 1394 bus driver was rewritten for Windows 7 to provide support for higher speeds and alternative media. In Linux, support was originally provided by libraw1394 making direct communication between user space and IEEE 1394 buses. Subsequently a new kernel driver stack, nicknamed Juju, has been implemented

Comparison with USB


While USB 2.0 (introduced in 2001) is quoted as running at a higher signaling rate (480 Mbit/s) than legacy FireWire 400 (400 Mbit/s, available since 1995), data transfers over S400 FireWire interfaces generally outperform similar transfers over USB 2.0 interfaces in real world environments. Few if any USB 2.0 device implementations are capable of saturating the entire 480 Mbit/s, but this can be achieved with multiple devices on the same bus. In real world tests USB PC hosts rarely can sustain transfers exceeding 280 Mbit/s, with 240 Mbit/s being the norm. This is likely due to USB's reliance on the host processor to manage low-level USB protocol, whereas FireWire delegates the same tasks to the interface hardware (requiring less or no CPU usage). For example, the FireWire host interface supports memory-mapped devices, allowing high-level protocols to run without loading the host CPU with interrupts and buffercopy operations. It should also be noted that Firewire features two data busses for each segment of the bus network whereas USB only features one. This means that Firewire can have communication in both directions at the same time, but with USB communication can only occur in one direction at any one time. Other differences are that FireWire uses simpler bus networking, provides more power over the chain and more reliable data transfer, and is less taxing on a CPU.USB requires the presence of a bus master, typically a PC, whereas FireWire is a true peer-to-peer network, thus allowing either device to serve as the host or the slave

Potrebbero piacerti anche