The Bus Interface Unit

Posted By on September 15, 2014

Download PDF
Execution Unit
Pin Diagram of 8086

The BIU handles all data and addresses on the buses for the execution unit such as it sends out addresses, fetches instructions from memory, reads data from ports and memory as well as writes data to ports and memory. In BIU there are so many functional groups or parts these are as follows.

Instruction Queue

To increase the execution speed, BIU fetches as many as six instruction bytes ahead to time from memory. The prefetched instruction bytes are held for the EU in a first in first out group of registers called a instruction queue. When the EU is ready for its next instruction, it simply reads the instruction from this instruction queue. This is much faster than sending out an address to the system memory and to send back the next instruction byte. Fetching the next instruction while the current instruction executes is called pipelining.

Segment Registers

The BIU contains four 16-bit segment registers. They are: the extra segment (ES) register, the code segment (CS) registers, the data segment (DS) registers, and the stack segment (SS) registers. These segment registers are used to hold the upper 16 bits of the starting address for each of the segments.  The part of a segment starting address stored in a segment register is often called the segment base.

  1. Code Segment (CS): The CS register is used for addressing a memory location in the Code Segment of the memory, where the executable program is stored.
  2. Data Segment (DS): The DS contains most data used by program. Data are accessed in the

Data Segment by an offset address or the content of other register that holds the offset address.

  1. Stack Segment (SS): SS defined a section of memory to store addresses and data while a subprogram executes.
  2. Extra Segment (ES): ES is additional data segment that is used by some of the string to hold the extra destination data.

8086-segment registers

Fig. 2: Memory Segments of 8086

Instruction Pointer (IP)

In the BIU, the next register, below the segment register is instruction pointer. The instruction pointer (IP) holds the 16-bit address of the next code byte within this code segment.

Execution Unit
Pin Diagram of 8086

Download PDF

Posted by Akash Kurup

Founder and C.E.O, World4Engineers Educationist and Entrepreneur by passion. Orator and blogger by hobby