基本介紹
- 中文名:增強型主機控制器接口
- 外文名:Enhanced Host Controller Interface
- 簡稱:EHCI
- 簡介:需要從英特爾授權
EHCI簡介,EHCI(增強型主機控制器接口),EHCI1.1增編,EHCI詳細介紹,
EHCI簡介
EHCI(增強型主機控制器接口)
增強主機控制器接口規範的實施,需要從英特爾授權。增強型主機控制器USB接口規範的採用已經簽署,以增強主機控制器接口規範USB採用協定的被許可使用和實施本規範。這採納者協定提供了一個互惠的方式,免版稅許可從英特爾和其他採用者和他們的產品,增強型主機控制器與USB接口規範標準提供一定的智慧財產權的採用。
EHCI規範1.0修訂牌照允許實施兩個分立和集成兼容EHCI主控制器的。被授權的規範修訂版1.0的水平(0.95和0.96)之前的所有版本兼容的,離散的EHCI主控制器只允許實施。
該規範的最新版本是1.0版本。這次修訂是從0.96社論更新。1.0版本可以從下面的連結下載。完整的修訂版1.0下載包括兩個檔案:規範和修訂0.96和1.0之間的變化的總結。目前所有的發展應該是瞄準了這一規範的修訂。
EHCI1.1增編
定義基於EHCI規範,最顯著的USB主機控制器實現的幾種可選的能源效率擴展的EHCI1.1增編的目的是:
·連線電源管理- 軟體發現並使用USB 2.0連線電源管理(LPM),下一代主機控制器和設備提供支持的能力。
·每連線埠更改事件- 問題解決了系統軟體目前需要讀取和解析所有啟用後,每個連線埠變化事件的根連線埠(中斷),以簡化軟體的處理山泥傾瀉轉換連線埠狀態暫存器(PORTSC)
·較短的周期幀列表- 系統軟體能夠傳遞和使用更短的周期幀列表(32幀),以更好地促進硬體預取
EHCI詳細介紹
要理解"EHCI"及其同類是什麼,首先要知道每塊支持插入 USB 設備的主機板或 PCI 卡都需要有 USB 主控制器晶片組。這個特別的晶片組與插入系統的 USB 設備進行相互操作,並負責處理允許 USB 設備與系統其它部分通信所必需的所有低層次細節。
Linux USB 驅動程式有三種不同的 USB 主控制器選項是因為在主機板和 PCI 卡上有三種不同類型的 USB 晶片。"EHCI"驅動程式設計成為實現新的高速 USB 2.0 協定的晶片提供支持。"OHCI"驅動程式用來為非 PC 系統上的(以及帶有 SiS 和 ALi 晶片組的 PC 主機板上的)USB 晶片提供支持。"UHCI"驅動程式用來為大多數其它 PC 主機板(包括 Intel 和 Via)上的 USB 實現提供支持。只需選擇與希望啟用的 USB 支持的類型對應的"?HCI"驅動程式即可。如有疑惑,為保險起見,可以啟用"EHCI"、"UHCI" (兩者中任選一種,它們之間沒有明顯的區別)和"OHCI"。(趙明註:根據文檔,EHCI已經包含了UHCI和OHCI,但目前就我個人的測試,單獨加EHCI是不行的,通常我的做法是根據主機板類型載入UHCI或OHCI後,再載入EHCI這樣才可以支持USB2.0設備)。 (ehci 只支持高速(hs)模式,uhci/ohci 都只支持全速或低速(fs/ls)設備,所以echi必選,uhci ohci一個就可以了,這樣高速、全速、低速設備才會都能枚舉到)
啟用了"USB support"和適當的"?HCI"USB 主控制器驅動程式後,使 USB 啟動並運行只需再進行幾個步驟。應該啟用"Preliminary USB device filesystem",然後確保啟用所有特定於將與 Linux 一起使用的實際 USB 外圍設備的驅動程式。例如,為了啟用對 USB 遊戲控制器的支持,我啟用了"USB Human Interface Device (full HID) support"。我還啟用了主"Input core support" 節下的"Input core support"和"Joystick support"。
了解EHCI之前,需首先了解HCI (Host Controller Interface) . 即主機控制接口。
HCI 是暫存器層級的界面接口,它允許一個主控制器(Host Controller 如 主機板南橋southbridge of Motherboard)來實現與外設如(USB、火線以及藍牙)之間的通訊。
當外設與PC相連線後,系統先進行初始化,HCI 開始執行緒(threads)讀寫,建立與外設的連線。接下來,HCI會重置然後讀外設的快取大小,建立與外設的通訊。
EHCI (Enhanced Host Controller Interface)是HCI增強的(Enhanced)版本。