Skip to main content

Types of priority interrupt

Short answer

The three types are software polling (testing devices in priority order), daisy chaining (serial priority where the first requesting device on the interrupt acknowledge line supplies its vector), and parallel priority (using interrupt register, mask register, and priority encoder to select the highest‑priority unmasked request).

What are the different types of priority interrupt?

A priority interrupt system decides which interrupt is served first when several devices request service at the same time. The three types are:

  1. Software polling (polling): on any interrupt, a single branch address starts a polling routine that tests each device's status flag in priority order. The first device found with its flag set is serviced. It is simple and needs little hardware, but it is slow because identifying the device takes a long time.
  2. Daisy chaining (serial priority): all devices share one interrupt request line. The interrupt acknowledge signal passes through the devices in series, starting from the highest-priority one. The first requesting device blocks the signal and puts its vector address on the data bus. It is cheap, but a failure breaks the chain and low-priority devices may starve.
  3. Parallel priority: each device has its own bit in an interrupt register and a bit in a mask register. A priority encoder selects the highest-priority unmasked request and generates its vector address. It is fast and flexible (masking) but needs more hardware.
 Daisy chain:
 CPU INTACK -> [Dev1 PI/PO] -> [Dev2] -> [Dev3] -> ...
 Interrupt request line (common, wired OR) <- all devices

 Parallel priority:
 Dev0..Dev3 -> Interrupt reg & Mask reg -> Priority encoder
                                             -> vector (x y) -> CPU

✓ Answer checked by Claude Opus 5.5 (high effort)

All Computer Organization and Architecture chapter 7 questions →