HIGHTLIGTHS

protection system and can therefore be used by all applications, including those that will run in production without protection. More impor- tantly, they provide the ability to set data breakpoints in addition to the more familiar instruction breakpoints. The 80386 monitors all four current breakpoint addresses simultaneously without slowing execution.

Instruction breakpoints trap (typically to a de- bugger) when an instruction is executed; most processors provide this capability with a special instruction that the debugger writes over the instruction of interest. By specifying instruction breakpoint addresses in registers, the 80386 eliminates the contortions required to write breakpoint instructions into protected or shared code. Data breakpoints, which are an exceptional capability for a microprocessor, are a particularly useful debugging tool. A data breakpoint can trap the instant that an address is read, or is either read or written. Using data breakpoints, a programmer can, for example, immediately locate the instruction responsible for erroneously over- writing a data structure.

In addition to the breakpoint registers, the 80386 provides the more conventional debugging fa- cilities of a breakpoint instruction and single stepping.

1.6 Object Code Compatibility

Two generations of 86 family processors have preceded the 80386, the 80286 and the 8086, and the 80386 is compatible at the binary level with both of them. This compatibility preserves soft- ware investments, allows rapid market entry, and can provide access to the vast library of software written for computers based on the 86 family.

Of course the 80386 can run 8086 programs; it can also run 80286 and 80386 programs concur- rently. But the 80386's most innovative compati- bility feature is Virtual 86 capability, which establishes a protected 8086 environment within the 80386 multitasking framework. Comple-

menting the Virtual 86 facility, 80386 paging can be used to give each Virtual 86 task a one- megabyte address space anywhere in the 80386 physical address space. Moreover, if the 80386 operating system supports virtual memory, Vir- tual 86 tasks can be swapped like other tasks without special attention. In short, the 80386's Virtual 86 facility permits three generations of86 family software to run at the same time.

1.7 Summary

The 80386 provides the raw performance required to implement high-end microprocessor-based systems. The 80386 architecture is flexible: rather than being bound to one view of the machine, system designers can choose the options that best match the needs of the application. Complete memory management facilities, including support for segmentation, paging, and virtual memory, are available on-chip. Up to four levels of protection can be used to build "firewalls" between software components, or protection can be forgone altogether. Virtual 86 tasks can enrich 32-bit systems with the extraordinary array of standard software already developed for business and other 86 family machines.

The power and versatility of the 80386 can be augmented by other Intel chips that can help maximize system performance. These include local area network controllers, advanced DMA controllers, disk controllers, and graphics coprocessors.

Design time and cost can be reduced with the aid. of Intel development tools and boards. Develop- ment tools include compilers, linking and loading utilities, operating systems, and an in-circuit emulator (ICPM 386). Hundreds of industry standard MULTIBUS® I boards are available to perform standard functions without incurring design and test costs; -the array of high- performance MULTIBUS II boards is growing rapidly. Finally, Intel's experienced staff of appli- cation engineers and specialists can provide design assistance worldwide.

1-4

Page 11
Image 11
Intel 80386 manual Object Code Compatibility, Summary