1. 程式人生 > >USB學習一:uhci ohci ehci三者區別

USB學習一:uhci ohci ehci三者區別

轉載地址:http://blog.sina.com.cn/s/blog_8e9c63c701015ip4.html

1.uhci  ohci  ehci他們都是主機控制器的規格
OHCI主要為非PC系統上以及帶有SiShe ALi晶片組的PC主機板上的USB晶片
UHCI大多為Intel和Via主機板上的USB控制器晶片。UHCI的硬體電路比OHCI簡單,成本第,但驅動複雜。但他們都是由USB1.1規格的。
EHCI是有Intel等幾個廠商研發,相容OHCI  UHCI 遵循USB2.0規範。
USB規範都是從暫存器級別規定好的,不過各個廠商可能有自己的幾個專用的暫存器。


2.
uhci(universal host controller interface): Intel用在自家晶片組上的usb 1.1主控制器(host controller)的硬體例項。
ehci(enhanced host controller interface): usb 2.0的主控制器標準介面。
ohci(open host controller inferface):一個不僅僅是usb用的主控制器介面標準,下面細分為usb,1394,或者更多(別的沒有接觸過)。主要是遵循csr (configuration space register)標準(另一個標準,呵呵)。是其他廠商在設計usb host controller時遵循的標準,如via, nec, ali, 包括nvidia等等。
uhci, ohci在硬體實現以及對底層軟體訪問上都有所不同,但二者又都完全(實際上各自多少都有些不足)支援usb 1.1 specification裡邊對usb host controller的要求。
同理,ehci是滿足usb 2.0 specification裡面對usb host controller (high speed)的要求的硬體設計。

應該是從win98之後usb1.1就被廣泛支援了,無論是uhci還是ohci。但ms真正支援usb2.0(或者說ehci)是從win2k sp4和winxp sp1。這裡所說的真正支援是指系統自帶ehci的驅動而不需要第三方的驅動程式。

apple現在胳膊拗不過大腿,在mac機上也已經都開始支援usb1.1和2.0介面。而上面的host controller一定是ohci的標準。