2008年10月16日星期四

Host controller interface

A host controller interface (HCI) is a register level interface which allows a host controller for USB or FireWire to communicate with the operating system of a personal computer.
On the expansion card or motherboard controller, this involves much custom logic, with digital logic engines in FPGAs plus analog circuitry managing the high speed differential signals. On the software side, it requires a device driver (called a Host Controller Driver, or HCD).

OHCI
Open Host Controller Interface, or OHCI, is an open standard.
When applied to a FireWire card, OHCI means that the card supports a standard interface to the PC and can be used by the OHCI FireWire drivers that come with all modern operating systems. Because the card has a standard OHCI interface, the OS does not need to know in advance exactly who makes the card or how it works, it can safely assume that the card understands the set of well-defined commands that are defined in the standard protocol.
The OHCI standard for USB is similar, but supports USB 1.1 (full and low speeds) only; so as a result its register interface looks completely different. Compared to UHCI, it moves more intelligence into the controller so is accordingly much more efficient; this was part of the motivation for defining it. If a computer provides non-x86 USB 1.1, or x86 USB 1.1 without an Intel or VIA chipset, it probably uses OHCI (e.g. OHCI is common on add-in PCI Cards based on an NEC chipset).
UHCI
Universal Host Controller Interface (UHCI) was created by Intel for USB 1.0 (full and low speeds).
Far from being "universal", it is actually proprietary and is incompatible with OHCI; OHCI was developed in part to overcome the problems caused by UHCI. OHCI advanced the USB specification from the (now obsolete) OHCI standard, USB 1.0, to its eventual replacement, USB 1.1, during the initial phase of USB development.
UHCI is also a Linux kernel module for general Intel PCI chipset USB controllers. The Linux kernel module supports Intel and VIA UHCI controllers. The kernel module is called USB_UHCI_HCD and is located under "Device Drivers / USB Support".
EHCI
Enhanced Host Controller Interface (EHCI) is a high speed controller standard which is publicly specified. The USB-IF insisted on this for USB 2.0 instead of having a different standard for PCI-based USB interfaces, which would have increased complexity and therefore costs. Intel hosted the EHCI conformance testing, which helped to prevent divergence from the standard.
EHCI only provides USB 2.0 (i.e. high speed USB) functions. It relies on a "companion controller", either OHCI or UHCI, to handle USB 1.1 (full and low speed) devices. Motherboards and PCI Cards that provide USB 2.0 ports thus have two controllers, one handling USB 2.0 devices and the other handling USB 1.1 devices.
It is not uncommon to find UHCI, OHCI and EHCI all co-existing within a standard PC computer, with a UHCI driver providing USB 1.1 ports on the (Intel chipset) motherboard, an OHCI driver providing USB 1.1 functions for the USB ports on an add-in (NEC chipset) PCI expansion card, and an EHCI driver providing USB 2.0 functions for the USB ports on that expansion card.
NOTE:

dual wavelength laser module


dvb s tuner module


silicon cases for iphone


Remote Control Transmitter Module


mpeg4 wireless network bridge


Wireless GSM GPRS Module


magnetic card reader module


cooler pad with hub


a si solar module


multicrystalline silicon photovoltaic module


green laser diode module


TFT Color LCD Module


GPS GSM GPRS Module


Gigabit Fiber Optic Module


light sensor voice module


gprs wireless internet card


4 Port USB2.0 Hub


card bus lan card


silicon case for iphone


cooler with usb hub


card reader and hub


apple shape usb hub


Color Active LCD Module


LCD Dot Matrix Module


1.3 TFT Lcd Module


lcd tv monitor module


10 STN LCD Module


5 NTSC LCD Module


Cisco Switch Router Cable


crystal cases of iphone

没有评论: