Universal Serial Bus and IEEE 1394 are becoming vital network elements in the expanding applications of PCs and consumer devices, both standalone and Internet-connected. They are complementary, not competitive technologies that address different sets of applications with nominal overlap, and together are adding new performance levels of connectivity to PCs and consumer devices. The demand for these interfaces continues to grow, especially as the majority of applications for PCs involve timely delivery of multimedia data requiring large files and high bandwidth.
USB was designed specifically for the PC market. It has made traditional PC peripheral connectivity much easier through its hot plug-and-play feature. It has also reduced system cost by creating a single standard port for a variety of peripherals. However, USB 1.1 is limited to 12 Mbits/second. In response to consumer and industry demands for more bandwidth, USB 2.0 will support up to 480 Mbits/s-40 times the performance currently available from USB. The increased bandwidth of USB 2.0 will support higher-performance PC peripherals, such as faster broadband Internet connections, casual mass-storage devices and higher-resolution videoconferencing cameras. An added benefit of increased performance is the ability to support even more bandwidth-intensive multimedia applications.
IEEE 1394, a.k.a. iLink (Sony Corp.) or FireWire (Apple Computer Inc.) made its debut in the consumer electronics market, where it has gained rapid acceptance, particularly in consumer video applications. A peer-to-peer protocol (as opposed to the PC-centric USB), 1394 offers a broad spectrum of new opportunities extending across the PC and peripheral as well as the consumer electronics market. This year we can expect to see 1394 appearing routinely on consumer PCs as well as the new generation of consumer digital audio/video and gaming products. Introduced at 100 Mbits/s, 1394 performance is now available at 400 Mbits/s and is expected to reach 1.6 Gbits/s as the standard continues to evolve.
IEEE 1394 continues to grow as graphics and high-quality digital video/audio become increasingly popular. Many consumer devices, such as camcorders, digital cameras, VCRs, set-top boxes, printers, CD-RW, PCs and DVDs, have 1394 interfaces. Microsoft Corp. and others are beginning to make software drivers readily available. Although 1394, under commercial names such as iLink and FireWire, was initially considered too expensive for inclusion in any but the high-end products, broadened acceptance is driving the cost of implementation down.
By the end of 1999, IEEE 1394 appeared in many midrange devices, including mainstream PCs for consumer and business applications. Although peer-to-peer connectivity makes it possible for users to trade information between devices without a PC in the middle, many consumers find the PC a useful peripheral for processing large video and audio files.
As the number of USB peripherals that consumers add to their PCs increases, bandwidth, or rather the lack of it, becomes a problem. The standard configuration for a PC today is a single host with one or two ports. Ports on the host typically link to external USB hubs, each of which can support multiple devices. In all, a host with a series of daisy-chained hubs can support as many as 127 devices.
But the challenge is how to provide adequate bandwidth to each device attached to the hub. USB supports two types of peripherals-isochronous and bulk. Isochronous devices such as cameras and speakers require a consistent, committed portion of the bandwidth to function properly and are given priority in the USB contention scheme. Bulk data devices such as hard disk drives, high-speed modems, scanners and printers have bursty data requirements that are serviced with lower priority. With enough activity, isochronous data can overwhelm bulk data and slow system speed noticeably because the single-host maximum payload is 9.2 Mbits/s no matter how many peripherals are attached.
Adding USB host controllers to the system goes beyond dollars and cents. The solution is scalable and extensible. We can add another USB host to today's systems and add multiple host controllers in the next product cycle. Each host adds only a fractional increment of cost that scales with the added benefits. The strategy can be applied equally to both USB 1.1 and USB 2.0 technologies.
USB 2.0, with a 480-Mbit/s bandwidth, will provide relief to the peripherals data-rate-saturation problem. While a qualified USB 2.0 host device is still months away, it's logical that PC OEMs with immediate bandwidth limitations solve the problem by adding USB hosts.
It is technically feasible to integrate multiple hosts on a single device; these devices are emerging. The Apple G4/450, announced during the summer, is one such system with two USB host controllers. A multihost device will be a highly cost-effective way to add bandwidth for USB peripherals prior to the realization of USB 2.0. According to industry estimates, the average number of peripherals connected to consumer PCs will rise dramatically by mid-2000. Thus, finding the best solution for offering additional hosts will be a high priority for designers.
Designing with the IEEE 1394 has, if you will, the opposite problem from USB. The 1394 interface, designed for high-performance peer-to-peer data transfer, far exceeds PC I/O capabilities. The 1394 has great potential for networking applications as well as for a growing number of consumer uses, such as image capture and editing and insertion of music and other enhancements to images to create near-production-quality multimedia experiences.
Apple has recently introduced the iMac-DV, a midrange consumer system that features two 1394 ports, and demand for 1394 will spur its inclusion in more midrange products. In addition, since Microsoft's Windows 98, 2nd Edition, supports camcorders and mass storage, it's more than likely that 1394 will become the interface of choice for mass storage options as performance pressures in the storage area continue to increase.
The price of 1394 devices is dropping as popularity increases and the threat of 1394 licensing fees has been laid to rest thanks to the patent pool arrangement announced recently. The benefits of 1394, coupled with the lower costs, will fuel demand for 1394 connectivity on PCs.
The 1394 protocol creates a peer-to-peer connection between all connected devices, i.e., any device on the bus can initiate, transmit and receive traffic should it be necessary. A PC is not necessary for the bus to operate, but it can certainly be a significant added value to bus resources. For a PC to become a connected device, the controller should follow the Open Host Controller Standard (OHCI). Using the OHCI standard provides a mechanism for software to become more portable and reduces the design time and risk in introducing a product. 1394 OHCI driver support is standard in current versions of the Windows OS.
The best connectivity point for the host controller in a PC is through the PCI bus. The bandwidth of most PCI bus implementations is 33 MHz and 32 bits. The host controller must be able to buffer large amounts of data in order to work well with other PCI bus devices in the system. The buffer sizes of the OHCI controller will have significant impact on the overall system performance. If faster PCI bus implementations become available, the pressure imposed by 1394 will decrease and buffering will become less of a concern.
For non-PC devices, the basic system must permit communications of portions of its system memory or control storage. This will let another device request audio streams, video buffers and other high-volume traffic elements. Again, the PCI bus is the best alternative now-it permits multimaster capabilities and can support the traffic associated with rich multimedia data formats. Augmenting the device with processing power-for example, with a fast microprocessor and a real-time operating system-will add to the overall 1394 system intelligence. Hence, 1394 is an ideal medium for intelligent devices to communicate with each other.
The 1394 protocol can be implemented on an add-on card or on the mainboard, depending on the application being supported. The critical item is to ensure that any 1394 implementation utilizes OHCI. That interface has captured the support of both operating system and hardware 1394 developers and will be the one upon which all future enhancements will be specified.
The ability to provide end users with ports on both the front and rear panels of the PC is a problem for both USB and 1394. Because of its higher data rate, 1394 system designers have been the first to carefully examine the challenge of cabling from either the mainboard or add-on card to the front panel of the PC. System developers have been successful in addressing these matters and are shipping systems with both front and rear ports. USB 2.0 with its similar data rates will be able to leverage solutions from these system designs.
The recent introduction of integrated circuits that combine the OHCI link and PHY (physical layer interface) functions in one package make it easier and more affordable for computer manufacturers to deploy this plug-and-play high-speed connectivity standard into home PCs as well as business workstations and servers. The Lucent FW323 is an example of such an IC, which combines a 400-Mbit/s PHY and a PCI-based 1394a OHCI link on a single chip. This provides substantial cost, space and power savings over currently available two-chip solutions.
For the near term, 1394 connectivity will be implemented through the 33-MHz, 32-bit PCI bus currently on most consumer (and business) PCs. To effectively interface data flow to and from a 1394 port, it will be necessary to implement an efficient DMA function.
For efficient operation, the DMA function must include large buffer capability, PCI burst capability and posted write capability. Looking at the progression of PCI-based 1394 host controllers, the trend in buffer capability is clear. The early non-OHCI controllers featured 1-kbit byte buffers.
Second-generation non-OHCI controllers doubled that to 2 kbytes. The first-generation 1394 OHCI controllers typically featured 7 kbytes or 8 kbytes of buffer capability. The Lucent FW323 integrated device offers a total of 12 kbytes.
Since the 1394 is not the only interface the PCI bus is expected to support, efficient utilization of the PCI bus is equally important. The ability to perform PCI bursting and posted writes greatly increases the efficiency of a 1394 OHCI controller.
As USB 2.0 begins deploy-ment, these same efficient DMA function requirements must be addressed in USB 2.0 OHCI controllers.
The combination of these high-speed interfaces in conjunction with 100-Mbit/s LAN deployment may drive wider utilization of higher-speed PCI bus architectures-for example, 66-MHz or 64-bit bus width.
-Other contributors to this article were Mark Richman, 1394 program manager; Mike Musciano, technical manager, verification, validation and applications; David Thompson, technical manager, high-speed I/O development, Bell Laboratories, Lucent Technologies.