Add USB Connectivity to Your Peripherals and
Devices
- Software
building blocks for USB Host and Peripheral
connectivity.
- Host
- Create USB Class Drivers applications rapidly
by calling an open, high-level Application
Programming Interface (API).
- Speed USB integration into Host Systems with
a robust USB Host Stack.
- Develop drivers for most operating systems
through a Platform Abstraction Layer (PAL).
- Peripheral
- Migrate quickly to new USB device controllers
function cores and silicon through the Hardware
Abstraction Layer.
- Customizable to Phoenix USB Device Controller
cores and applications for complete USB solutions.
Universal Serial Bus (USB) enables cost effective
"outside-the-box" connectivity with hot-swap capability
for industrial, consumer, embedded, PC, and PC
peripheral products. USB requires a host to manage and
control bus traffic, and peripherals like keyboards or
printers to provide services to the host.
Phoenix Technologies' USBAccess
offers the USB software building blocks to developers
and manufacturers to add USB connectivity to host
systems and peripheral devices. USBAccess
products include the Host Stack, Host Class Drivers,
Peripheral Stack, and Peripheral Class Drivers.
The
USBAccess Host Stack is portable across operating
systems and USB host controllers. USBAccess
supports both Universal Host Controller Interface (UHCI)
and Open Controller Interface (OHCI) including the
Phoenix USB OHCI Synthesizable Core. Host Class Drivers
enable the Host Stack to interact with standard Device
Drivers and Applications. The USBAccess Host
Class Driver SDK 1.0 enables developers to write their
own Host Class Drivers for proprietary devices.
The
USBAccess Peripheral Stack and Class Drivers are
customizable to support USB peripheral silicon and
Phoenix USB Device Synthesizable Cores for embedding in
USB peripherals.
Phoenix's USB building blocks including Systems
Software and Synthesizable Cores make Phoenix the best
USB solution provider for developers and manufacturers
of USB enables systems and peripherals.
Host
Software Stack
The
USBAccess Host Stack initializes and controls the
USB controller hardware. The Host Stack enumerates
peripherals attached to the host, assigns a bus address
to the peripheral, allocates bandwidth on the bus, and
manages all host controller traffic. The Host Stack
supports Plug and Play, with automatic device detection
and configuration upon physical attachment as part of
the standard bus polling and device enumeration.
Host Stack Data Transfer Capabilities
- Interrupt for asynchronous non-periodic, short
burst data devices with low bandwidth but require time
sensitive responsiveness for items like mice and
keyboards.
- Bulk for asynchronous, non-periodic and data
burst devices with high bandwidth utilization.
- Control transfers for device control such as
configuration, messages and bus management.
- Isochronous for real-time data streaming of
audio and video. (99Q4).*
Operating System Support*
USBAccess supports a number of operating
systems including Wind River Systems VxWorks,
Accelerated Technologies Nucleus, OS-9, Integrated
Systems pSOS, Phar Lap TNT, and Microsoft Windows NT
4.0.
Host Class Driver
Support
The
Host Class Driver allows a device driver to communicate
with the Host Stack. The Host Class Driver provides the
communication APIs for a specific class of devices any
device driver from a class of devices (for example,
printers) requires only a single printer host class
driver.
Host Class Driver Support
USBAccess is designed for ease of adding
class drivers. The current product includes class
drivers for boot HID devices (keyboards and mice), hubs,
and printers.
Hub Host Class Driver Support
USBAccess supports a single layer of hubs
from the root hub on the host.
Host Class Driver SDK Phoenix
Technologies provides documentation for its
USBAccess API. Example class drivers are included
in the USBAccess IO Software Development Kit.
These samples enable developers to design class drivers
for their own specific applications.
Peripheral Stacks
and Class Drivers
USBAccess software building blocks also
include a Peripheral Stack and Peripheral Class Drivers
for embedding USB in devices. Peripheral components
enable only specific USB functions required by the
peripheral. The Peripheral Stack initializes the USB
device function controller on a peripheral. The
Peripheral Class Driver interfaces between the
Peripheral Stack and the Peripheral Firmware.*
Phoenix Synthesizable
Cores
USBAccess software is designed for
compatibility with the Phoenix USB synthesizable cores.
The Phoenix USBAccess Host Stacks and Class
Drivers are compatible with the Phoenix USB OHCI
Controller Synthesizable Core. USBAccess
Peripheral Stacks and Class Drivers can be customized
for use with the products incorporating the Phoenix USB
Device Controller Synthesizable Core.
* Contact
a Phoenix Sales Representative for more information.
|