Tenasys Corporation, Real-time Virtualization Experts

 

Real-time USB

A real-time USB stack is included for the three standard USB host controller interfaces: OHCI, UHCI and EHCI. Using this stack, INtime applications can directly utilize USB 1.1/2.0 hardware interfaces for real-time control of USB devices.

Real-time USB Stack Performance

The real-time response of a USB device driver is heavily dependent upon the response characteristics of your USB I/O device. Some USB peripherals can take five milliseconds or more to respond to a read request, while other devices respond in less than a millisecond.

The INtime real-time USB stack has been designed to add a minimum of software latency to the processing of USB read and write requests. The latency measured from submission of a USB Request Block (URB) to the start of your INtime USB application callback function is less than 60 microseconds on a 2.8 GHz P4 computer.

Real-time USB Device Drivers

In addition to the examples provided with the INtime software development kit, USB device drivers can be downloaded from the TenAsys Knowledge Base. Examples drivers include:

  • USB Keyboard: provided as a simple HID (Human Interface Device) sample project as part of the INtime software development kit.
  • Measurement Computing 1024LS: illustrates the conversion of a Linux device driver to one that can be used with the INtime USB stack. The hardware used for illustration is the Measurement Computing Corporation USB-1024LS 24-bit digital I/O module. The example contains code for a variety of MCC USB I/O devices that can be adapted based on the 1024 example.
  • Edgeport Multi-channel USB to Serial Converter: 1, 2, 4, 8, and 16 channel models are supported by this driver. The supported hardware is detailed on the Digi International web-site. These devices are supported by a common serial API shared with drivers for 16550 UART devices such as the PC COM port and Comtrol Rocketport multi-channel PCI cards.

Log into the the TenAsys Knowledge Base and search for articles with the "USB" keyword to locate additional information regarding INtime real-time USB device drivers and the configuration of and use of the INtime USB stack for real-time applications.