224 Computer Architecture and Organization
Step 15 : When the number of bytes to be read becomes zero, DMA controller asks disc controller to
stop by making EOP low, which activates TC input of disc controller. The DMA controller also makes
AEN low and withdraws the HOLD request (through HRQ) by making HRQ low.
Step 16 : Once its HOLD input is low, the processor makes its HLDA output low regaining the control
of the system bus. The target le is now loaded within system RAM.
As we can understand from the above descriptions, DMA needs both hardware as well as software
coordination.
7.9 INTEL 80386 MEMORY ORGANIZATION
In Chapter 5, we have been introduced to several processors, all from Intel. These processors were 8085,
8086, 8051, 80386 and Pentium 4. The memory organization of 8085 is very straightforward with its 16
address lines and Princeton architecture. So, also is the memory organization of 8051, which is designed
around Harvard architecture. Certain special features of 8086 memory organization were highlighted in
Chapter 5 itself (Sections 5.8.3 and 5.8.4). In Section 5.11.3, we have discussed some of the essential
features of Intel 80386 processor and, in Section 5.12.2, we have discussed about Pentium 4 architecture
and cache memory. In this section and in Section 7.9.1, we shall have some more discussions about the
memory organization of 80386 and Pentium 4.
It was already indicated that 80386 was the rst Intel processor to introduce the concept of cache
memory. Although 386 did not offer any internal cache (8 kB of L1 cache was introduced in 80486,
which was released during 1989, roughly 4 years after the introduction of 80386), it allowed the neces-
sary interface for incorporating an external cache.
In Section 5.11.3, we have mentioned about virtual memory and protected mode operation of 80386.
It was indicated in Chapter 5, that in this chapter, we shall have a detailed discussion on that topic. We
pick up the thread of that discussion here and take a closer look at the protected mode operation of
80386. To start with, let us have a quick discussion on logical and physical address spaces.
7.9.1 Physical and Logical Addresses
For quicker understanding, let us put it in this way that the physical address means the memory address
(or I/O address), which is physically present within the available primary memory area (or I/O area). On
the other hand, the logical address is the address assigned by the programmer at the time of developing
the program. For example, for 8085 processor address 0000H is a physical address as it is physically
present (reset address or starting address). If this 8085 based system is equipped with a 4K program
memory, then address 0FFFH would be a physical address (last byte of the 4K EPROM). Similarly, we
DMA is an excellent example of cooperation of different devices to achive the common target.
In this case hardware and software are properly synchronized to achieve the goal, which is
efficient data transfer from one point to another.
F
O
O
D
F
O
R
T
H
O
U
G
H
T
M07_GHOS1557_01_SE_C07.indd 224M07_GHOS1557_01_SE_C07.indd 224 4/29/11 5:12 PM4/29/11 5:12 PM