The 8086 microprocessor uses a 20-bit address to access memory. With 20-bit address the processor can generate 220 = 1 Mega address. The basic memory word size of the memories used in the 8086 system is 8-bit or 1-byte (i.e., in one memory location an 8-bit binary information can be stored). Hence, the physical memory space of the 8086 is 1Mb (1 Mega-byte).
For the programmer, the 8086 memory address space is a sequence of one mega-byte in which one location stores an 8-bit binary code/data and two consecutive locations store 16-bit binary code/data. But physically (i.e., in the hardware), the 1Mb memory space is divided into two banks of 512kb (512kb + 512kb = 1Mb). The two memory banks are called Even (or Lower) bank and Odd (or Upper) bank. The organization of even and odd memory banks in the 8086-based system is shown in Figure.
The 8086-based system will have two sets of memory IC's. One set for even bank and another set for odd bank. The data lines D0-D7 are connected to even bank and the data lines D8 -D15 are connected to odd bank. The even memory bank is selected by the address line Ao and the odd memory bank is selected by the control signal BHE. The memory banks are selected when these signals are low(active low). Any memory location in the memory bank is selected by the address line A1 to A19.
The organization of memory into two banks and providing bank select signals allows the programmer to read/write the byte (8-bit) operand in any memory address through 16-bit data bus. It also allows the programmer to read/write the word (16-bit) operand starting from even address or odd address.
For the programmer, the 8086 memory address space is a sequence of one mega-byte in which one location stores an 8-bit binary code/data and two consecutive locations store 16-bit binary code/data. But physically (i.e., in the hardware), the 1Mb memory space is divided into two banks of 512kb (512kb + 512kb = 1Mb). The two memory banks are called Even (or Lower) bank and Odd (or Upper) bank. The organization of even and odd memory banks in the 8086-based system is shown in Figure.
The 8086-based system will have two sets of memory IC's. One set for even bank and another set for odd bank. The data lines D0-D7 are connected to even bank and the data lines D8 -D15 are connected to odd bank. The even memory bank is selected by the address line Ao and the odd memory bank is selected by the control signal BHE. The memory banks are selected when these signals are low(active low). Any memory location in the memory bank is selected by the address line A1 to A19.
The organization of memory into two banks and providing bank select signals allows the programmer to read/write the byte (8-bit) operand in any memory address through 16-bit data bus. It also allows the programmer to read/write the word (16-bit) operand starting from even address or odd address.
Organisation of even and odd memory banks in 8086 based system |
This comment has been removed by the author.
ReplyDeletewhat if required instruction is only of 1 Byte. Then 8086 cpu will access 2 cells at time but complete instruction is only in sigle cell.
ReplyDeleteThats why the A0 and BHE bar is connected to send the control signal.
Deleteyou have written an excellent blog.. keep sharing your knowledge..
ReplyDeleteGo Lang Course in Chennai
Go Lang Course in Chennai
Excellent article and with lots of information. I really learned a lot here. Do share more like this.
ReplyDeleteLatest Website Design Trends
New Website Designs
Excellent article and this helps to enhance your knowledge regarding new things.
ReplyDeletePTE Coaching in ambala
Best IELTS Institute in Ambala
Best IELTS Coaching in Ambala
micro segmentation banking
ReplyDeletePersonalize products, offers, pricing and loyalty programs; prevent revenue leakage and ensure regulatory compliance with a billing solution.
Original
ReplyDelete