USB architecture basics: A chain (tree) of USB devices attached to a host requires how many IRQ lines to service it on the host system?
-
A1
-
B2
-
C3
-
D4
-
ENone of the above
Answer
Correct Answer: 1
Explanation
Introduction / Context:Universal Serial Bus (USB) was designed to simplify PC expansion by consolidating many peripherals onto a single, host-controlled bus. Understanding how USB maps to system interrupts clarifies why devices can be hot-plugged without consuming multiple IRQs like legacy ISA peripherals did.
Given Data / Assumptions:
- Devices are attached via hubs to a single USB host controller.
- We are considering classic PC architectures where host controllers present an IRQ to the CPU.
- Multiple peripherals may be active simultaneously.
Concept / Approach:
USB is host-centric: the host controller polls devices and schedules transfers. The host controller (UHCI/OHCI/EHCI/xHCI) is the entity that generates interrupts to the CPU. Regardless of how many devices are on that controller’s bus, the controller typically uses one IRQ line to request service; the controller’s driver then handles individual device events.
Step-by-Step Solution:
Identify the interrupting component: the host controller, not each device.Note that many devices share the controller’s resources via hubs.Map to IRQ lines: one per controller (or shared MSI/MSI-X in modern systems), not per device chain.Conclude a chain needs 1 IRQ from the host controller.Verification / Alternative check:
Device Manager (Windows) or lspci (Linux) shows the USB Host Controller using a single IRQ or MSI vector, even with many devices connected. Older systems might share interrupts across multiple controllers, but a single controller still represents one interrupt source.
Why Other Options Are Wrong:
- 2, 3, or 4 IRQs: contradict the host-centric design; multiple controllers may exist, but one chain on one controller uses one IRQ.
- None of the above: incorrect because the correct count is one.
Common Pitfalls:
Assuming every device needs an IRQ (ISA-era thinking). USB abstracts device events behind the controller and software stack, minimizing hardware interrupt consumption.
Final Answer:
1