1 / 18

EIE311 The microprocessor and its architecture

Introduction. This chapter presents the microprocessor as a programmable device by first looking at its internal programming model and then at how it addresses its memory space. . Internal microprocessor architecture. Before a program is written or any instruction investigated, the internal configu

ura
Download Presentation

EIE311 The microprocessor and its architecture

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. EIE311 The microprocessor and its architecture

    2. Introduction This chapter presents the microprocessor as a programmable device by first looking at its internal programming model and then at how it addresses its memory space.

    3. Internal microprocessor architecture Before a program is written or any instruction investigated, the internal configuration of the microprocessor must be known. The programming model of the 8086 through the Pentium Pro is considered program visible because its registers are used during programming and specified by the instructions. Registers which can not be addressable directly during applications programming but may be used indirectly during system programming are considered program invisible.

    4. Internal microprocessor architecture Figure 2.1 illustrates the programming model of the 8086 through the Pentium II microprocessor. Some registers are general-purpose or multipurpose registers, while some have special purposes.

    5. Registers: Registers hold various data sizes (bytes, words, or doublewords) and are used for almost any purpose as dictated by a program. Multipurpose Registers Special-purpose Registers Segment Registers

    6. Real mode memory addressing Real mode operation allows the microprocessor to address only the first 1M byte of memory space - even the Pentium microprocessor. The first 1M byte of memory is called either the real memory or conventional memory system. Real mode operation allows application software written for the 8088/8086, which contain only 1M byte of memory, to function in the 80286 and above without changing the software. In all cases, each of these microprocessors begins operation in the real mode by default whenever power is applied or the microprocessor is reset.

    7. Segments and offsets A combination of a segment address and an offset address access a memory location in the real mode. The segment address, located within one of the segment registers, defines the beginning address of any 64K-byte memory segment. The offset address selects any location within the 64K-byte memory segment. Figure 2.3 Table 2.1

    8. Segments and offsets A 20-bit real mode address allows one to access the start of a segment at any 16-byte boundary within the first 1M byte of memory. Any real mode segments can only begin at a 16-byte boundary in the memory system and this boundary is often called a paragraph. In the 80286 (with special external circuitry) and the 80386 through the Pentium Pro, an extra 64K minus 16 bytes of memory is addressable when the segment address is FFFFH and the HIMEM.SYS driver is installed in the system. This area of memory (0FFFF0H-10FFEFH) is referred to as high memory.

    9. Default segment and offset registers The microprocessors has a set of rules that apply to segments whenever memory is addressed. These rules, which apply in either the real or protected mode, define the segment register and offset register combination used by certain addressing modes. Table 2.2

    10. Default segment and offset registers The code segment register defines the start of the code segment and the instruction pointer locates the next instruction within the code segment. Stack data are references through the stack segment at the memory location addressed by either the stack pointer (SP/ESP) or the base pointer (BP/EBP). Table 2.3

    11. Default segment and offset registers One can think of segments as windows that can be moved over any area of memory to access data and code. A program can have a lot of segments, but can only access four (in 8086-80286) or six (in 80386 and above) segments at a time. Figure 2.4 Figure 2.5

    12. Relocation Segment and offset addressing scheme allows relocation. A relocatable program is one that can be placed into any area of memory and executed without change. Relocatable data are data that can be placed in any area of memory and used without any change to the program.

    13. Figure 2.1 programming Model

    14. Figure 2.3 Real Mode Memory

    15. Table 2.1 Example segment addresses

    16. Table 2.2 Default Segment and Offset Registers

    17. Table 2.3 Default Segment and Offset Registers

    18. Figure 2.4 A Memory System

    19. Figure 2.5 DOS system memory

More Related