This “Product How-To” article focuses how to use a certain product in an embedded system and is written by a company representative.
The explosion in computing technology and the internet has spawned the connected generation. Each day, we work with and carry multiple devices that are network aware and connected to the ever growing global electronic village.
Two computing interfaces are at the center of this technology explosion: one providing a simple interface for control, the Universal Serial Bus (USB), the other providing the interface to network connections, the Internet/Ethernet's TCP/IP mechanism (IP here for short).
This article explores methods of maintaining and enhancing the value of USB over long reach connections as more and more computing technology converges onto a common IP connection.
It will attempt to answer the following question from Icron's perspective: Is there still a place for USB in the IP connected world, or can IP take over for USB and truly put everything on the network?
USB – The Most Successful Peripheral Interface Ever
With 2.6 Billion USB-enabled devices shipped in 2007, and forecasts of more than 4 Billion devices shipping in 2012 (source: InStat), USB has become the de-facto standard for peripheral connectivity to the PC and is the interface of choice for the ever growing list of “connected” electronics devices and components that we see and use every day.
From simple input and control devices like keyboards and mice, to more complex I/O devices such as printers, network interfaces, audio devices, game controllers, cameras, iPods, and storage devices, USB provides a simple connectivity interface that eliminates complexity for both users and developers.
USB has built upon the benefits and shortcomings of numerous prior peripheral interfaces to create a user friendly and universal connection protocol that eliminates many of the problems associated with those legacy interfaces, including serial RS-232 or RS-422 and parallel ports.
* Plug and Play ease of use. No configuration or complex setup required.
* A high bandwidth interface providing advanced functionality and a quality user experience.
* Versatility. Multiple device types providing a variety of user applications and functions can be connected to the same port type.
* Low cost, enabling implementation into very cost sensitive CE devices.
* Powered interface to enable simple device connectivity without additional power cables, or batteries.
* Embedded support for the USB communications protocol in the operating system to simplify system integration and operation.
By providing a powered, high data rate, low cost interface that enables PC connectivity to multiple devices, USB handles virtually all of the connection responsibilities on today's PCs.
Input devices, storage devices, music players, web cameras and printers all connect via USB, enriching and simplifying our experience every time we sit down in front of a PC to make a VoIP call or upload photos from the day's activities.
Ethernet and IP, like USB for peripheral device connectivity, have become the de-facto connectivity standards for computing networks. Most of us are familiar with the convenience of simply plugging in a wire or finding a wireless hot spot to connect and have the online world at our fingertips.
Instead of a standalone machine capable of storing information, authoring documents or tracking finances, IP networking has turned the computer into a portal to the world, bringing information and the global community to our desktop each day.
Ethernet and IP provide connectivity and communication across a wide array of applications from connecting PCs on a simple home network to long-haul managed Internet data services between major metropolitan centers. IP plays a central role in simplifying and delivering connectivity between PCs.
The all-IP network is often touted as the holy grail of network connectivity, one protocol delivering connectivity for everything from simple in home devices to wide area network transmission equipment.
Considerable research and development has gone into delivering more and more content and services over IP connections. Streaming video, file sharing, network attached storage have all become more commonplace and easy to use through advances in IP based technology.
Serving a much more robust function, IP trades off simplicity of implementation for operational flexibility. A deep software stack is required on top of the physical layer hardware to ensure reliable network connectivity. Depending on the application, the level of sophistication of the implementation can be adjusted, but IP often requires setup, unlike USB.
The USB model of just plug it in and it works isn't always the case with an IP enabled device. A level of technical awareness is required to leverage the value of IP enabled services.
In combination, USB and IP provide the control and connection services that have become commonplace in our modern computing experience. As computing and network connectivity extends beyond the desktop, the question of how to simply connect the USB devices becomes more complex. Converge with IP, or extend native USB?
Extending USB, IP and USB Convergence?
As consequence of the simplicity and efficiency of the USB interface, USB imposes a very strict transmit/acknowledge timing protocol that limits the wired reach of a USB connection to 5m (16ft). The distance limitation can restrict advanced usage and further expansion of the value that USB has brought to the modern PC.
There are a number of USB Extension technologies that can overcome the 5m (16ft) distance limitation of USB and offer the benefits of USB connectivity beyond the desktop, applications that complement, but also compete with IP connections.
USB extension can be achieved by the following methods: USB over IP, Hub Chain, Delay budget use, custom host/device sharing, and ExtremeUSB.
USB over IP: This technology requires software to intercept traffic occurring over the USB software stack running in the PC. The traffic is diverted away from the local host controller and rerouted over the PC's TCP/IP stack to a remote host controller.
This system has the disadvantage of requiring custom software that alters the operation of the OS. It is by design platform specific and is often limited in the types of devices it can support (often printers and hard drives only). Isochronous endpoints are rarely, if ever, supported.
Hub chain: This is the method provided by the USB 2.0 specification. USB allows five hubs to be connected in series by cables that are each (16ft) 5m in length. When the device cable is added, a maximum distance of 100ft (30m) can be obtained. This method also requires that power be provided to every second hub. This system is clearly clumsy and expensive.
Delay budget use: The USB specification allows approximately 1s for round-trip transmission through the maximum length chain of hubs. If this budget is reallocated to a dedicated cable with no hubs, then approximately (164ft) 50m distance can be achieved. This system only supports USB 1.1. Icron's Rover products exploit this method.
Custom host / Device sharing: This is a more invasive scheme that requires custom host controller hardware to be provided in the PC. The approach is designed for sharing printers and USB hard drives, and for server farms / blade server implementations.
This is Icron's patented USB technology that eliminates the round-trip delay limitation by creating separate timing domains at each end of the link. Distances are essentially unlimited and transmission delays in the millisecond range can be accommodated.
ExtremeUSB is a hardware solution that maintains native USB and is therefore cross-platform applicable, fully supports USB 2.0, and requires no software additions to the host PC.
|Table 1. ExtremeUSB vs. USB over IP|
Depending upon the requirements of the end solution, all of these USB Extension technologies can work, however clearly the latter three have significant drawbacks, including not supporting USB Extension beyond 50m.
USB or IP – How Do You Want to Connect?
Both USB over IP and ExtremeUSB technologies are capable of providing extended USB connections, however, the USB over IP solution does lose some of the fundamental benefits of USB, namely Plug and Play (no drivers or software required), universality (not all devices work), and OS independence.
Determining the type of extended USB connection and application is key to selecting the right solution. ExtremeUSB offers a simple, Plug and Play hardware solution that is true USB over long reach connections supporting multiple device types and standard USB topologies, allowing the user to extend the value of a wide variety of USB devices from simple interface devices to webcams, music players and smart phones.
USB over IP applications are more complex to implement, requiring network aware hardware and software to integrate into the shared network. Historically, performance and device support has been limited by the variability in bandwidth on the shared network link and without a dedicated connection free from general network traffic, USB device support is often restricted to simple keyboard and mouse.
Advances in switching and quality of service protocols continue to improve IP connections and provide bandwidth for dedicated services such as video and USB transport.
For selected applications, USB over IP implementations provide a level of convenience and convergence, simplifying the variety of connections and end user system complexity. There are, however, some disadvantages to a USB over IP implementation versus alternatives:
* Altered USB. To transport over an IP network, the USB connections are terminated and converted, adding complexity and overhead into the implementation.
* Non Standards Based. Each version of a USB over IP implementation is a customized, non-standard implementation that is not compatible with other USB over IP implementations, thus leading to potential interoperability issues.
* Conflicting connection models. Fundamentally, USB and IP serve differing connection models. USB is a host controlled, point-to-point connection dedicated to device control with specific bandwidth and latency restrictions ensuring performance. IP is a shared medium with a variety of topologies and inherently non-deterministic bandwidth and latency.
* Added complexity of network aware hardware for simple devices. USB over IP transport, especially in integrated cases requires significant development effort to implement network aware USB connections, the result is a costly implementation that adds to development time.
Traditional USB simplifies hardware components, relying on the PC host controller for virtually all connection intelligence and functionality.
Extended USB connections using ExtremeUSB provide some additional advantages over the more complex USB over IP solutions such as:
* True Standards-based USB. No protocol conversion or additional software drivers. A simple hardware implementation that leverages existing USB resources and maintains true standards-based USB thus guaranteeing compatibility with USB devices.
* Simple, yet flexible. A single hardware solution requiring no software configuration or sophisticated networking protocol implementation. A variety of physical connections can be implemented, all using essentially the same functional solution.
* High performance. A dedicated link at data rates above traditional IP networking enables high speed USB connections over long reach wires that mirror direct connected USB performance.
* Roadmap to integration. ExtremeUSB is a media agnostic solution that is capable of providing USB connections over a variety of media. Next generation solutions look to address IP convergence and support link sharing without incurring the “IP aware” complexity on end users.
A feature comparison of ExtremeUSB versus USB over IP is shown in Figure 1 above. As shown in the chart, although both solutions promise USB Extension, there are certain limitations to the customized nature of USB over IP solutions.
USB has become the most successful peripheral computing interface in history, enhancing the computing experience and enabling simple connectivity of an ever growing variety of electronic devices.
For applications reaching beyond the desktop, a variety of options are available, each with advantages and tradeoffs. True USB extension, such as ExtremeUSB, maintains the simplicity and user experience of traditional USB. More advanced solutions such as USB over IP offer convergence but lose implementation and setup simplicity, flexibility, and device compatibility.
Bill De Vries, B.A.Sc. (Hons) Simon Fraser University, is Product Marketing Manager at Icron Technologies, handling specification, development and release of 3 generations of USB extender products. He previously held Product Marketing and Applications Engineering positions at PMC-Sierra specializing in high performance solutions for SONET/SDH and Ethernet networking.