Microprocessor: Memory Banking
Microprocessor: Memory Banking
2. How 8086 microprocessor accesses memory locations from both the banks?
8086 uses BHE^ and A0 to select the banks in the following way:
BHE^ A0 Operation
0 0 R/W 16 bit from both the banks(Aligned or Misaligned word)
0 1 R/W 8 bit from higher bank(Odd address byte transfer)
1 0 R/W 8 bit from lower bank(Even address byte transfer)
1 1 No operation (idle)
In the second memory bus cycle, the even byte located at X + 2 in the low bank is accessed
over bus lines D0 through D7.
Viva Questions:
How to avoid an odd address word transfer in 8086?
To avoid this, a programmer should specify an even memory location in the instruction or an
“EVEN” assembler directive should be used which informs the assembler to align the lower
byte at even addresses.