USB 控制器 piix3-uhci, piix4-uhci, ehci, ich9-ehci1, vt82c686b-uhci, pci-ohci, nec-xhci, qemu-xhci 的区别
在折腾 TrueNAS SCALE 虚拟机的 USB Passthrough 的时候发现有很多不同种类的 USB Controller,研究了一下发现他们有这些异同点
-
piix3-uhci 和 piix4-uhci 是虚拟的 USB 1.1 控制器,可被用于 QEMU 和 VirtualBox 虚拟机中,它们有不同的版本号,但功能上差别不大。
-
ehci 是 USB 2.0 控制器,默认由虚拟机管理程序或主机控制器提供,用于实现高速 USB 数据传输,可以与 piix3-uhci 或 piix4-uhci 一起使用,实现向后兼容。
-
ich9-ehci1 是 Intel ICH9 系列芯片组的 USB 2.0 控制器,可用于物理电脑主板上,且与 ehci 效果类似,但性能更好且更稳定。
-
vt82c686b-uhci 是 VIA VT82C686B 芯片组的 USB 1.1 控制器,可用于物理电脑主板上。
-
pci-ohci 是 IEEE 1394 控制器的一种规范,可用于物理电脑主板上,用于管理 Firewire 设备,与 USB 无关。
-
nec-xhci 和 qemu-xhci 都是虚拟的 USB 3.0 控制器,可分别用于 NEC 和 QEMU 虚拟机中,实现高速 USB 3.0 数据传输。
综上所述,这些 USB 控制器的主要差别在于版本、用途、性能、向后兼容性等方面。