星期一, 12月 26, 2005

USB相關備忘資料

USB 的規格
  • USB 全名 Univeral Serial Bus (通用串列匯流排),現代 PC 常見的外部匯流排,支援熱插拔 (hot plugable)。
  • 目前規格包括 USB 1.1 及 USB 2.0。
  • USB 1.1 支援二種傳輸速率:Low speed - 1.5 Mbps 和 Full Speed - 12 Mbps。
  • USB 2.0 支援原有 USB 1.1 的傳輸速率,另外有 High Speed - 480 Mbps 的傳輸速率。

USB 的架構及技術原理

  • USB 就線路架構而言,就像是有多個點對點的樹狀結構。
  • 有 USB 介面的 PC 至少會配備一個 "root hub",並提供二個外接孔供 USB 設備或另一個 USB hub 連結。
  • USB 是 Single-Master (單主控) 的設計,在電腦中的 USB 主控器會去 poll USB 匯流排上的各個裝置。
  • 每個 USB 設備連接到主機時,USB 主控器會分配一個代碼給該裝置,並讀取該裝置的描述表 (Device Descriptor) 以獲知裝置的硬體資訊。

USB 主控器的規格

  • 現代的 PC 主機板幾乎都至少內建一個 USB 主控器 (USB hoot Controller)。
  • USB 主控器有三種規格:1. OHCI (Open Host Controller Interface) 2. UHCI (Universal Host Controller Interface) 3. EHCI (Enhanced Host Controller Interface)
  • UHCI:屬於 USB 1.1 規格,使用的廠商包括 Intel ,VIA ,採用 Memory-mapped 的 I/O 方式 (CPU 使用記憶體指令來存取 USB 主控器)。
  • OHCI:屬於 USB 1.1 規格,使用的廠商包括 Compaq, iMacs, OPTi, SIS, ALi,採用 I/O-mapped 的 I/O 方式 (CPU 使用 I/O 指令來存取 USB 主控器)。
  • EHCI 由 USB 2.0 規範所提出。
  • EHCI 相容於 OHCI 和 UHCI 且速度較快 (480 Mbps)。
  • UHCI 的硬體線路比 OHCI 簡單,所以成本較低,但需要較複雜的驅動程式,對 CPU 負荷稍重。
  • 由於 UHCI 和 OHCI 的設計方式不一樣,在 Linux 下可查詢 /proc/pci 所記錄的 PCI 子系統資源配置情況,從中分辦出 USB 主控器屬於那種規格 (參考下面表格),若看到 EHCI 則是 USB 2.0。


沒有留言: