The “controller” mentioned above is part of the hardware. It contains functions for the “bridge” of communication between the USB interface and the PCI interface.
By "bridge" is meant that USB protocol packets are transferred to / from the CPU / USB ports, but usually through a PCI bus.
The reasons for using the host through the PCI bus are probably reduced to 2:
- 1 interface is better than two (cost and complexity)
- USB is much slower than PCI (of course, PCI-Express): just simply “encapsulate” the USB protocol packets on PCI to switch between them on the motherboard.
Note : there is often confusion when it comes to naming hardware chips. For effective (read $$) reasons, quite often there are chips in which there are several . It’s not that the main function of the chip is the “PCI bridge”, which should be limited to the implementation of the “PCI bridge”.
jldupont
source share