RTUComputer ScienceYr 2024 · Sem 52024

Q5Microprocessor and Interfaces

Question

10 marks

(a) Explain the concept of Coprocessor (8087 NDP). (b) Discuss the multiprocessor systems and the concept of bus arbitration.

Answer

Coprocessor (8087 NDP)

The 8087 Numeric Data Processor (NDP) is a specially designed coprocessor that works in parallel with the 8086. It offloads complex floating-point, extended integer, and trigonometric calculations, executing them significantly faster than the 8086 software emulation.

It connects directly to the 8086 local bus. Both processors monitor the same instruction stream. The 8086 executes general instructions, and the 8087 executes specialized ESC instructions. The 8087 uses the BUSY/TEST signal to synchronize with the 8086 (8086 executes WAIT instruction until 8087 finishes).

In maximum mode, the 8086 supports multiprocessor configurations (Closely Coupled or Loosely Coupled) to enhance system performance by sharing system buses and resources.

Bus Arbitration is the mechanism used to decide which processor/controller gets control of the system bus to avoid collisions. Common techniques:

  • Daisy Chaining: Devices are connected in a series. Priority is based on physical proximity to the bus controller. Simple, but slow for far devices.
  • Polling: A central controller sequentially polls devices to grant access. Priority is fixed or rotating.
  • Independent Requesting: Each device has dedicated Bus Request and Bus Grant lines to the controller. Fast and priority is fully programmable.
Bus Arbitration
Independent Requesting Bus Arbitration Technique
Back to Paper