Intel microprocessors Architecture programming and Interfacing

intel microprocessor family .THE INTEL MICROPROCESSORS 8086/8088, 80186/80188, 80286, 80386,80486, Pentium, Pentium Pro Processor,Pentium II, Pentium III, Pentium 4, and Core2 with 64-Bit Extensions pdf free download
VoiletFord Profile Pic
VoiletFord,United States,Professional
Published Date:12-07-2017
Your Website URL(Optional)
CHAPTER 1 Introduction to the Microprocessor and Computer INTRODUCTION This chapter provides an overview of the Intel family of microprocessors. Included is a discus- sion of the history of computers and the function of the microprocessor in the microprocessor- based computer system. Also introduced are terms and jargon used in the computer field, so that computerese is understood and applied when discussing microprocessors and computers. The block diagram and a description of the function of each block detail the operation of a computer system. Blocks, in the block diagram, show how the memory and input/output (I/O) system of the personal computer interconnect. Detailed is the way data are stored in the mem- ory so each data type can be used as software is developed. Numeric data are stored as integers, floating-point, and binary-coded decimal (BCD); alphanumeric data are stored by using the ASCII (American Standard Code for Information Interchange) code and the Unicode. CHAPTER OBJECTIVES Upon completion of this chapter, you will be able to: 1. Converse by using appropriate computer terminology such as bit, byte, data, real memory system, protected mode memory system, Windows, DOS, I/O, and so forth. 2. Briefly detail the history of the computer and list applications performed by computer systems. 3. Provide an overview of the various 80X86 and Pentium family members. 4. Draw the block diagram of a computer system and explain the purpose of each block. 5. Describe the function of the microprocessor and detail its basic operation. 6. Define the contents of the memory system in the personal computer. 7. Convert between binary, decimal, and hexadecimal numbers. 8. Differentiate and represent numeric and alphabetic information as integers, floating-point, BCD, and ASCII data. 12 CHAPTER 1 1–1 A HISTORICAL BACKGROUND This first section outlines the historical events leading to the development of the microprocessor 1 and, specifically, the extremely powerful and current 80X86, Pentium, Pentium Pro, Pentium III, 2 Pentium 4, and Core2 microprocessors. Although a study of history is not essential to understand the microprocessor, it furnishes interesting reading and provides a historical perspective of the fast-paced evolution of the computer. The Mechanical Age The idea of a computing system is not new—it has been around long before modem electrical and electronic devices were developed. The idea of calculating with a machine dates to 500 BC when the Babylonians, the ancestors of the present-day Iraqis, invented the abacus, the first mechanical calculator. The abacus, which uses strings of beads to perform calculations, was used by the ancient Babylonian priests to keep track of their vast storehouses of grain. The abacus, which was used extensively and is still in use today, was not improved until 1642, when mathematician Blaise Pascal invented a calculator that was constructed of gears and wheels. Each gear contained 10 teeth that, when moved one complete revolution, advanced a second gear one place. This is the same principle that is used in the automobile’s odometer mechanism and is the basis of all mechanical calculators. Incidentally, the PASCAL programming language is named in honor of Blaise Pascal for his pioneering work in mathematics and with the mechanical calculator. The arrival of the first practical geared mechanical machines used to automatically com- pute information dates to the early 1800s. This is before humans invented the lightbulb or before much was known about electricity. In this dawn of the computer age, humans dreamed of mechanical machines that could compute numerical facts with a program—not merely calculat- ing facts, as with a calculator. In 1937 it was discovered through plans and journals that one early pioneer of mechanical com- puting machinery was Charles Babbage, aided by Augusta Ada Byron, the Countess of Lovelace. Babbage was commissioned in 1823 by the Royal Astronomical Society of Great Britain to produce a programmable calculating machine. This machine was to generate navigational tables for the Royal Navy. He accepted the challenge and began to create what he called his Analytical Engine. This engine was a steam-powered mechanical computer that stored a thousand 20-digit decimal num- bers and a variable program that could modify the function of the machine to perform various calcu- lating tasks. Input to his engine was through punched cards, much as computers in the 1950s and 1960s used punched cards. It is assumed that he obtained the idea of using punched cards from Joseph Jacquard, a Frenchman who used punched cards as input to a weaving machine he invented in 1801, which is today called Jacquard’s loom. Jacquard’s loom used punched cards to select intricate weav- ing patterns in the cloth that it produced. The punched cards programmed the loom. After many years of work, Babbage’s dream began to fade when he realized that the machinists of his day were unable to create the mechanical parts needed to complete his work. The Analytical Engine required more than 50,000 machined parts, which could not be made with enough precision to allow his engine to function reliably. The Electrical Age The 1800s saw the advent of the electric motor (conceived by Michael Faraday); with it came a multitude of motor-driven adding machines, all based on the mechanical calculator developed by Blaise Pascal. These electrically driven mechanical calculators were common pieces of office 1 80X86 is an accepted acronym for 8086, 8088, 80186, 80188, 80286, 80386, and 80486 microprocessors and also include the Pentium series. 2 Pentium, Pentium Pro, Pentium II, Pentium III, Pentium 4, and Core2 are registered trademarks of Intel Corporation.INTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 3 equipment until well into the early 1970s, when the small handheld electronic calculator, first introduced by Bomar Corporation and called the Bomar Brain, appeared. Monroe was also a leading pioneer of electronic calculators, but its machines were desktop, four-function models the size of cash registers. In 1889, Herman Hollerith developed the punched card for storing data. Like Babbage, he too apparently borrowed the idea of a punched card from Jacquard. He also developed a mechan- ical machine—driven by one of the new electric motors—that counted, sorted, and collated information stored on punched cards. The idea of calculating by machinery intrigued the United States government so much that Hollerith was commissioned to use his punched-card system to store and tabulate information for the 1890 census. In 1896, Hollerith formed a company called the Tabulating Machine Company, which developed a line of machines that used punched cards for tabulation. After a number of mergers, the Tabulating Machine Company was formed into the International Business Machines Corporation, now referred to more commonly as IBM, Inc. The punched cards used in early computer systems are often called Hollerith cards, in honor of Herman Hollerith. The 12-bit code used on a punched card is called the Hollerith code. Mechanical machines driven by electric motors continued to dominate the information processing world until the construction of the first electronic calculating machine in 1941. A German inventor named Konrad Zuse, who worked as an engineer for the Henschel Aircraft Company in Berlin, invented the first modern electromechanical computer. His Z3 calculating computer, as pictured in Figure 1–1, was probably invented for use in aircraft and missile design during World War II for the German war effort. The Z3 was a relay logic machine that was clocked at 5.33 Hz (far slower than the latest multiple GHz microprocessors). Had Zuse been given adequate funding by the German government, he most likely would have developed a FIGURE 1–1 The Z3 computer developed by Konrad Zuse uses a 5.33 hertz clocking frequency. (Photo courtesy of Horst Zuse, the son of Konrad.)4 CHAPTER 1 much more powerful computer system. Zuse is today finally receiving some belated honor for his pioneering work in the area of digital electronics, which began in the 1930s, and for his Z3 computer system. In 1936 Zuse constructed a mechanical version of his system and later in 1939 Zuse constructed his first electromechanical computer system, called the Z2. It has recently been discovered (through the declassification of British military documents) that the first electronic computer was placed into operation in 1943 to break secret German mili- tary codes. This first electronic computing system, which used vacuum tubes, was invented by Alan Turing. Turing called his machine Colossus, probably because of its size. A problem with Colossus was that although its design allowed it to break secret German military codes generated by the mechanical Enigma machine, it could not solve other problems. Colossus was not programmable—it was a fixed-program computer system, which today is often called a special- purpose computer. The first general-purpose, programmable electronic computer system was developed in 1946 at the University of Pennsylvania. This first modem computer was called the ENIAC (Electronic Numerical Integrator and Calculator). The ENIAC was a huge machine, con- taining over 17,000 vacuum tubes and over 500 miles of wires. This massive machine weighed over 30 tons, yet performed only about 100,000 operations per second. The ENIAC thrust the world into the age of electronic computers. The ENIAC was programmed by rewiring its circuits—a process that took many workers several days to accomplish. The workers changed the electrical connections on plug-boards that looked like early telephone switchboards. Another problem with the ENIAC was the life of the vacuum tube components, which required frequent maintenance. Breakthroughs that followed were the development of the transistor on December 23, 1947 at Bell Labs by John Bardeen, William Shockley, and Walter Brattain. This was followed by the 1958 invention of the integrated circuit by Jack Kilby of Texas Instruments. The integrated circuit led to the development of digital integrated circuits (RTL, or resistor-to-transistor logic) in the 1960s and the first microprocessor at Intel Corporation in 1971. At that time, Intel engi- neers Federico Faggin, Ted Hoff, and Stan Mazor developed the 4004 microprocessor (U.S. Patent 3,821,715)—the device that started the microprocessor revolution that continues today at an ever-accelerating pace. Programming Advancements Now that programmable machines were developed, programs and programming languages began to appear. As mentioned earlier, the first programmable electronic computer system was programmed by rewiring its circuits. Because this proved too cumbersome for practical applica- tion, early in the evolution of computer systems, computer languages began to appear in order to control the computer. The first such language, machine language, was constructed of ones and zeros using binary codes that were stored in the computer memory system as groups of instruc- tions called a program. This was more efficient than rewiring a machine to program it, but it was still extremely time-consuming to develop a program because of the sheer number of program codes that were required. Mathematician John von Neumann was the first modern person to develop a system that accepted instructions and stored them in memory. Computers are often called von Neumann machines in honor of John von Neumann. (Recall that Babbage also had developed the concept long before von Neumann.) Once computer systems such as the UNIVAC became available in the early 1950s, assembly language was used to simplify the chore of entering binary code into a computer as its instructions. The assembler allows the programmer to use mnemonic codes, such as ADD for addition, in place of a binary number such as 0100 0111. Although assembly language was an aid to programming, it wasn’t until 1957, when Grace Hopper developed the first high-level programming language called FLOWMATIC, that computers became easier to program. In theINTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 5 same year, IBM developed FORTRAN (FORmula TRANslator) for its computer systems. The FORTRAN language allowed programmers to develop programs that used formulas to solve mathematical problems. Note that FORTRAN is still used by some scientists for computer programming. Another similar language, introduced about a year after FORTRAN, was ALGOL (ALGOrithmic Language). The first truly successful and widespread programming language for business applications was COBOL (COmputer Business Oriented Language). Although COBOL usage has dimin- ished considerably in recent years, it is still a player in some large business and government systems. Another once-popular business language is RPG (Report Program Generator), which allows programming by specifying the form of the input, output, and calculations. Since these early days of programming, additional languages have appeared. Some of the more common modern programming languages are BASIC, C, C/C++, Java, PASCAL, and ADA. The BASIC and PASCAL languages were both designed as teaching languages, but have escaped the classroom. The BASIC language is used in many computer systems and may be one of the most common programming languages today. The BASIC language is probably the easiest of all to learn. Some estimates indicate that the BASIC language is used in the personal computer for 80% of the programs written by users. In the past decade, a new version of BASIC, Visual BASIC, has made programming in the Windows environment easier. The Visual BASIC lan- guage may eventually supplant C/C++ and PASCAL as a scientific language, but it is doubtful. It is more apparent that the C language is gaining headway and may actually replace C/C++ and most other languages including Java and may eventually replace BASIC. This of course is con- jecture and only the future will show which language eventually becomes dominant. In the scientific community, primarily C/C++ and occasionally PASCAL and FORTRAN appear as control programs. One recent survey of embedded system developers showed that C was used by 60% and that 30% used assembly language. The remainder used BASIC and JAVA. These languages, especially C/C++, allow the programmer almost complete control over the pro- gramming environment and computer system. In many cases, C/C++ is replacing some of the low-level machine control software or drivers normally reserved for assembly language. Even so, assembly language still plays an important role in programming. Many video games written for the personal computer are written almost exclusively in assembly language. Assembly language is also interspersed with C/C++ to perform machine control functions efficiently. Some of the newer parallel instructions found on the newest Pentium and Core2 microprocessors are only programmable in assembly language. The ADA language is used heavily by the Department of Defense. The ADA language was named in honor of Augusta Ada Byron, Countess of Lovelace. The Countess worked with Charles Babbage in the early 1800s in the development of software for his Analytical Engine. The Microprocessor Age The world’s first microprocessor, the Intel 4004, was a 4-bit microprocessor–programmable con- troller on a chip. It addressed a mere 4096, 4-bit-wide memory locations. (A bit is a binary digit with a value of one or zero. A 4-bit-wide memory location is often called a nibble.) The 4004 instruction set contained only 45 instructions. It was fabricated with the then-current state-of- the-art P-channel MOSFET technology that only allowed it to execute instructions at the slow rate of 50 KIPs (kilo-instructions per second). This was slow when compared to the 100,000 instructions executed per second by the 30-ton ENIAC computer in 1946. The main difference was that the 4004 weighed much less than an ounce. At first, applications abounded for this device. The 4-bit microprocessor debuted in early video game systems and small microprocessor-based control systems. One such early video game, a shuffleboard game, was produced by Bailey. The main problems with this early microprocessor were its speed, word width, and memory size. The evolution of the 4-bit microprocessor ended6 CHAPTER 1 TABLE 1–1 Early 8-bit Manufacturer Part Number microprocessors. Fairchild F-8 Intel 8080 MOS Technology 6502 Motorola MC6800 National Semiconductor IMP-8 Rockwell International PPS-8 Zilog Z-8 when Intel released the 4040, an updated version of the earlier 4004. The 4040 operated at a higher speed, although it lacked improvements in word width and memory size. Other companies, particularly Texas Instruments (TMS-1000), also produced 4-bit microprocessors. The 4-bit microprocessor still survives in low-end applications such as microwave ovens and small control systems and is still available from some microprocessor manufacturers. Most calculators are still based on 4-bit microprocessors that process 4-bit BCD (binary-coded decimal) codes. Later in 1971, realizing that the microprocessor was a commercially viable product, Intel Corporation released the 8008—an extended 8-bit version of the 4004 microprocessor. The 8008 addressed an expanded memory size (16K bytes) and contained additional instructions (a total of 48) that provided an opportunity for its application in more advanced systems. (A byte is generally an 8-bit-wide binary number and a K is 1024. Often, memory size is spec- ified in K bytes.) As engineers developed more demanding uses for the 8008 microprocessor, they discov- ered that its somewhat small memory size, slow speed, and instruction set limited its usefulness. Intel recognized these limitations and introduced the 8080 microprocessor in 1973—the first of the modem 8-bit microprocessors. About six months after Intel released the 8080 microproces- sor, Motorola Corporation introduced its MC6800 microprocessor. The floodgates opened and the 8080—and, to a lesser degree, the MC6800—ushered in the age of the microprocessor. Soon, other companies began to introduce their own versions of the 8-bit microprocessor. Table 1–1 lists several of these early microprocessors and their manufacturers. Of these early microprocessor producers, only Intel and Motorola (IBM also produces Motorola-style microprocessors) continue successfully to create newer and improved versions of the microprocessor. Motorola has sold its microprocessor division, and that company is now called Freescale Semiconductors, Inc. Zilog still manufactures microprocessors, but remains in the background, concentrating on microcon- trollers and embedded controllers instead of general-purpose microprocessors. Rockwell has all but abandoned microprocessor development in favor of modem circuitry. Motorola has declined from having nearly 50% share of the microprocessor market to a much smaller share. Intel today has nearly 100% of the desktop and notebook market. What Was Special about the 8080? Not only could the 8080 address more memory and exe- cute additional instructions, but it executed them 10 times faster than the 8008. An addition that took 20 μs (50,000 instructions per second) on an 8008-based system required only 2.0 μs (500,000 instructions per second) on an 8080-based system. Also, the 8080 was compatible with TTL (transistor-transistor logic), whereas the 8008 was not directly compatible. This made inter- facing much easier and less expensive. The 8080 also addressed four times more memory (64K bytes) than the 8008 (l6K bytes). These improvements are responsible for ushering in the era of the 8080 and the continuing saga of the microprocessor. Incidentally, the first personal computer, the MITS Altair 8800, was released in 1974. (Note that the number 8800 was proba- bly chosen to avoid copyright violations with Intel.) The BASIC language interpreter, written for the Altair 8800 computer, was developed in 1975 by Bill Gates and Paul Allen, the founders ofINTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 7 Microsoft Corporation. The assembler program for the Altair 8800 was written by Digital Research Corporation, which once produced DR-DOS for the personal computer. The 8085 Microprocessor. In 1977, Intel Corporation introduced an updated version of the 8080—the 8085. The 8085 was to be the last 8-bit, general-purpose microprocessor developed by Intel. Although only slightly more advanced than an 8080 microprocessor, the 8085 executed software at an even higher speed. An addition that took 2.0 μs (500,000 instructions per second on the 8080) required only 1.3 μs (769,230 instructions per second) on the 8085. The main advantages of the 8085 were its internal clock generator, internal system controller, and higher clock frequency. This higher level of component integration reduced the 8085’s cost and increased its usefulness. Intel has managed to sell well over 100 million copies of the 8085 microprocessor, its most successful 8-bit, general-purpose microprocessor. Because the 8085 is also manufactured (second-sourced) by many other companies, there are over 200 million of these microprocessors in existence. Applications that contain the 8085 will likely continue to be popular. Another company that sold 500 million 8-bit microprocessors is Zilog Corporation, which produced the Z-80 microprocessor. The Z-80 is machine language–compatible with the 8085, which means that there are over 700 million microprocessors that execute 8085/Z-80 compatible code The Modern Microprocessor In 1978, Intel released the 8086 microprocessor; a year or so later, it released the 8088. Both devices are 16-bit microprocessors, which executed instructions in as little as 400 ns (2.5 MIPs, or 2.5 millions of instructions per second). This represented a major improvement over the exe- cution speed of the 8085. In addition, the 8086 and 8088 addressed 1M byte of memory, which was 16 times more memory than the 8085. (A 1M-byte memory contains 1024K byte-sized memory locations or 1,048,576 bytes.) This higher execution speed and larger memory size allowed the 8086 and 8088 to replace smaller minicomputers in many applications. One other feature found in the 8086/8088 was a small 4- or 6-byte instruction cache or queue that prefetched a few instructions before they were executed. The queue sped the operation of many sequences of instructions and proved to be the basis for the much larger instruction caches found in modem microprocessors. The increased memory size and additional instructions in the 8086 and 8088 have led to many sophisticated applications for microprocessors. Improvements to the instruction set included multiply and divide instructions, which were missing on earlier microprocessors. In addition, the number of instructions increased from 45 on the 4004, to 246 on the 8085, to well over 20,000 variations on the 8086 and 8088 microprocessors. Note that these microprocessors are called CISC (complex instruction set computers) because of the number and complexity of instructions. The additional instructions eased the task of developing efficient and sophisticated applications, even though the number of instructions are at first overwhelming and time- consuming to learn. The 16-bit microprocessor also provided more internal register storage space than the 8-bit microprocessor. The additional registers allowed software to be written more efficiently. The 16-bit microprocessor evolved mainly because of the need for larger memory systems. The popularity of the Intel family was ensured in 1981, when IBM Corporation decided to use the 8088 microprocessor in its personal computer. Applications such as spreadsheets, word processors, spelling checkers, and computer-based thesauruses were memory-intensive and required more than the 64K bytes of memory found in 8-bit microprocessors to execute effi- ciently. The 16-bit 8086 and 8088 provided 1M byte of memory for these applications. Soon, even the 1M-byte memory system proved limiting for large databases and other applications. This led Intel to introduce the 80286 microprocessor, an updated 8086, in 1983.8 CHAPTER 1 The 80286 Microprocessor. The 80286 microprocessor (also a 16-bit architecture microprocessor) was almost identical to the 8086 and 8088, except it addressed a 16M-byte memory system instead of a 1M-byte system. The instruction set of the 80286 was almost identical to the 8086 and 8088, except for a few additional instructions that managed the extra 15M bytes of memory. The clock speed of the 80286 was increased, so it executed some instructions in as little as 250 ns (4.0 MIPs) with the original release 8.0 MHz version. Some changes also occurred to the internal execution of the instructions, which led to an eightfold increase in speed for many instructions when compared to 8086/8088 instructions. The 32-Bit Microprocessor. Applications began to demand faster microprocessor speeds, more memory, and wider data paths. This led to the arrival of the 80386 in 1986 by Intel Corporation. The 80386 represented a major overhaul of the 16-bit 8086–80286 architecture. The 80386 was Intel’s first practical 32-bit microprocessor that contained a 32-bit data bus and a 32-bit memory address. (Note that Intel produced an earlier, although unsuccessful, 32-bit microprocessor called the iapx-432.) Through these 32-bit buses, the 80386 addressed up to 4G bytes of memory. (1G of memory contains 1024M, or 1,073,741,824 locations.) A 4G-byte memory can store an astound- ing 1,000,000 typewritten, double-spaced pages of ASCII text data. The 80386 was available in a few modified versions such as the 80386SX, which addressed 16M bytes of memory through a 16-bit data and 24-bit address bus, and the 80386SL/80386SLC, which addressed 32M bytes of memory through a 16-bit data and 25-bit address bus. An 80386SLC version contained an internal cache memory that allowed it to process data at even higher rates. In 1995, Intel released the 80386EX microprocessor. The 80386EX microprocessor is called an embedded PC because it contains all the components of the AT class personal computer on a single integrated circuit. The 80386EX also contains 24 lines for input/output data, a 26-bit address bus, a 16-bit data bus, a DRAM refresh controller, and programmable chip selection logic. Applications that require higher microprocessor speeds and large memory systems include software systems that use a GUI, or graphical user interface. Modem graphical displays often contain 256,000 or more picture elements (pixels, or pels). The least sophisticated VGA (variable graphics array) video display has a resolution of 640 pixels per scanning line with 480 scanning lines (this is the resolution used when the computer boots and display the boot screen). To display one screen of information, each picture element must be changed, which requires a high-speed microprocessor. Virtually all new software packages use this type of video interface. These GUI-based packages require high microprocessor speeds and accelerated video adapters for quick and efficient manipulation of video text and graphical data. The most striking system, which requires high-speed computing for its graphical display interface, is Microsoft 3 Corporation’s Windows. We often call a GUI a WYSIWYG (what you see is what you get) display. The 32-bit microprocessor is needed because of the size of its data bus, which transfers real (single-precision floating-point) numbers that require 32-bit-wide memory. In order to effi- ciently process 32-bit real numbers, the microprocessor must efficiently pass them between itself and memory. If the numbers pass through an 8-bit data bus, it takes four read or write cycles; when passed through a 32-bit data bus, however, only one read or write cycle is required. This significantly increases the speed of any program that manipulates real numbers. Most high-level languages, spreadsheets, and database management systems use real numbers for data storage. Real numbers are also used in graphical design packages that use vectors to plot images on the video screen. These include such CAD (computer-aided drafting/design) systems as AUTOCAD, ORCAD, and so forth. 3 Windows is a registered trademark of Microsoft Corporation and is currently available as Windows 98, Windows 2000, Windows ME, and Windows XP.INTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 9 Besides providing higher clocking speeds, the 80386 included a memory management unit that allowed memory resources to be allocated and managed by the operating system. Earlier microprocessors left memory management completely to the software. The 80386 included hard- ware circuitry for memory management and memory assignment, which improved its efficiency and reduced software overhead. The instruction set of the 80386 microprocessor was upward-compatible with the earlier 8086, 8088, and 80286 microprocessors. Additional instructions referenced the 32-bit registers and managed the memory system. Note that memory management instructions and techniques used by the 80286 are also compatible with the 80386 microprocessor. These features allowed older, 16-bit software to operate on the 80386 microprocessor. The 80486 Microprocessor. In 1989, Intel released the 80486 microprocessor, which incorpo- rated an 80386-like microprocessor, an 80387-like numeric coprocessor, and an 8K-byte cache memory system into one integrated package. Although the 80486 microprocessor was not radi- cally different from the 80386, it did include one substantial change. The internal structure of the 80486 was modified from the 80386 so that about half of its instructions executed in one clock instead of two clocks. Because the 80486 was available in a 50 MHz version, about half of the instructions executed in 25 ns (50 MIPs). The average speed improvement for a typical mix of instructions was about 50% over the 80386 that operated at the same clock speed. Later versions of the 80486 executed instructions at even higher speeds with a 66 MHz double-clocked version (80486DX2). The double-clocked 66 MHz version executed instructions at the rate of 66 MHz, with memory transfers executing at the rate of 33 MHz. (This is why it was called a double-clocked microprocessor.) A triple-clocked version from Intel, the 80486DX4, improved the internal execution speed to 100 MHz with memory transfers at 33 MHz. Note that the 80486DX4 microprocessor executed instructions at about the same speed as the 60 MHz Pentium. It also contained an expanded 16K-byte cache in place of the standard 8K-byte cache found on earlier 80486 microprocessors. Advanced Micro Devices (AMD) has produced a triple-clocked version that runs with a bus speed of 40 MHz and a clock speed of 120 MHz. The future promises to bring microprocessors that internally execute instructions at rates of up to 10 GHz or higher. 4 Other versions of the 80486 were called OverDrive processors. The OverDrive processor was actually a double-clocked version of the 80486DX that replaced an 80486SX or slower- speed 80486DX. When the OverDrive processor was plugged into its socket, it disabled or replaced the 80486SX or 80486DX, and functioned as a doubled-clocked version of the micro- processor. For example, if an 80486SX, operating at 25 MHz, was replaced with an OverDrive microprocessor, it functioned as an 80486DX2 50 MHz microprocessor using a memory transfer rate of 25 MHz. Table 1–2 lists many microprocessors produced by Intel and Motorola with information about their word and memory sizes. Other companies produce microprocessors, but none have attained the success of Intel and, to a lesser degree, Motorola. The Pentium Microprocessor. The Pentium, introduced in 1993, was similar to the 80386 and 80486 microprocessors. This microprocessor was originally labeled the P5 or 80586, but Intel decided not to use a number because it appeared to be impossible to copyright a number. The two introductory versions of the Pentium operated with a clocking frequency of 60 MHz and 66 MHz, and a speed of 110 MIPs, with a higher-frequency 100 MHz one and one-half clocked version that operated at 150 MIPs. The double-clocked Pentium, operating at 120 MHz and 133 MHz, was also available, as were higher-speed versions. (The fastest version produced by Intel is the 233 MHz Pentium, which is a three and one-half clocked version.) Another difference was that the cache size was increased to 16K bytes from the 8K cache found in the basic version 4 OverDrive is a registered trademark of Intel Corporation.10 CHAPTER 1 TABLE 1–2 Many modern Intel and Motorola microprocessors. Manufacturer Part Number Data Bus Width Memory Size Intel 8048 8 2K internal 8051 8 8K internal 8085A 8 64K 8086 16 1M 8088 8 1M 8096 16 8K internal 80186 16 1M 80188 8 1M 80251 8 16K internal 80286 16 16M 80386EX 16 64M 80386DX 32 4G 80386SL 16 32M 80386SLC 16 32M + 8K cache 80386SX 16 16M 80486DX/DX2 32 4G + 8K cache 80486SX 32 4G + 8K cache 80486DX4 32 4G + 16 cache Pentium 64 4G + 16K cache Pentium OverDrive 32 4G + 16K cache Pentium Pro 64 64G + 16K L1 cache + 256K L2 cache Pentium II 64 64G + 32K L1 cache + 256K L2 cache Pentium III 64 64G + 32K L1 cache + 256K L2 cache Pentium 4 64 64G+32K L1 cache+ 512K L2 cache (or larger) (1T for 64-bit extensions) Pentium4 D 64 1T + 32K L1 cache + 2 or (Dual Core) 4 M L2 cache Core2 64 1T + 32K L1 cache + a shared 2 or 4 M L2 cache Itanium (Dual Core) 128 1T + 2.5 M L1 and L2 cache + 24 M L3 cache Motorola 6800 8 64K 6805 8 2K 6809 8 64K 68000 16 16M 68008D 8 4M 68008Q 8 1M 68010 16 16M 68020 32 4G 68030 32 4G + 256 cache 68040 32 4G + 8K cache 68050 32 Proposed, but never released 68060 64 4G + 16K cache PowerPC 64 4G + 32K cacheINTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 11 of the 80486. The Pentium contained an 8K-byte instruction cache and an 8K-byte data cache, which allowed a program that transfers a large amount of memory data to still benefit from a cache. The memory system contained up to 4G bytes, with the data bus width increased from the 32 bits found in the 80386 and 80486 to a full 64 bits. The data bus transfer speed was either 60 MHz or 66 MHz, depending on the version of the Pentium. (Recall that the bus speed of the 80486 was 33 MHz.) This wider data bus width accommodated double-precision floating-point numbers used for modem high-speed, vector-generated graphical displays. These higher bus speeds should allow virtual reality software and video to operate at more realistic rates on current and future Pentium-based platforms. The widened data bus and higher execution speed of the Pentium allow full-frame video displays to operate at scan rates of 30 Hz or higher—comparable to commercial television. Recent versions of the Pentium also included additional instructions, called multimedia extensions, or MMX instructions. Although Intel hoped that the MMX instructions would be widely used, it appears that few software companies have used them. The main reason is there is no high-level language support for these instructions. Intel had also released the long-awaited Pentium OverDrive (P24T) for older 80486 systems that operate at either 63 MHz or 83 MHz clock. The 63 MHz version upgrades older 80486DX2 50 MHz systems; the 83 MHz version upgrades the 80486DX2 66 MHz systems. The upgraded 83 MHz system performs at a rate somewhere between a 66 MHz Pentium and a 75 MHz Pentium. If older VESA local bus video and disk-caching controllers seem too expensive to toss out, the Pentium OverDrive represents an ideal upgrade path from the 80486 to the Pentium. Probably the most ingenious feature of the Pentium is its dual integer processors. The Pentium executes two instructions, which are not dependent on each other, simultaneously because it contains two independent internal integer processors called superscaler technology. This allows the Pentium to often execute two instructions per clocking period. Another feature that enhances performance is a jump prediction technology that speeds the execution of program loops. As with the 80486, the Pentium also employs an internal floating-point coprocessor to handle floating-point data, albeit at a five times speed improvement. These features portend continued success for the Intel family of microprocessors. Intel also may allow the Pentium to replace some of the RISC (reduced instruction set computer) machines that currently execute one instruction per clock. Note that some newer RISC processors execute more than one instruc- tion per clock through the introduction of superscaler technology. Motorola, Apple, and IBM produce the PowerPC, a RISC microprocessor that has two integer units and a floating-point unit. The PowerPC certainly boosts the performance of the Apple Macintosh, but at present is slow to efficiently emulate the Intel family of microprocessors. Tests indicate that the current emulation software executes DOS and Windows applications at speeds slower than the 80486DX 25 MHz microprocessor. Because of this, the Intel family should survive for many years in per- 5 sonal computer systems. Note that there are currently 6 million Apple Macintosh systems and well over 260 million personal computers based on Intel microprocessors. In 1998, reports showed that 96% of all PCs were shipped with the Windows operating system. Recently Apple computer replaced the PowerPC with the Intel Pentium in most of its com- puter systems. It appears that the PowerPC could not keep pace with the Pentium line from Intel. In order to compare the speeds of various microprocessors, Intel devised the iCOMP- rating index. This index is a composite of SPEC92, ZD Bench, and Power Meter. The iCOMP1 rating index is used to rate the speed of all Intel microprocessors through the Pentium. Figure 1–2 shows relative speeds of the 80386DX 25 MHz version at the low end to the Pentium 233 MHz version at the high end of the spectrum. Since the release of the Pentium Pro and Pentium II, Intel has switched to the iCOMP2-rating index, which is scaled by a factor of 10 from the iCOMP1 index. A microprocessor with an index of 1000 using iCOMP1 is rated as 100 using iCOMP2. Another difference is the benchmarks used for 5 Macintosh is a registered trademark of Apple Computer Corporation.12 CHAPTER 1 0 100 200 400 600 800 1000 1200 1400 1600 1800 FIGURE 1–2 The Intel iCOMP-rating index. Pentium 200 1810 Pentium 166 1570 Pentium 133 1110 1000 Pentium 120 815 Pentium 100 Pentium 90 735 Pentium 75 610 Pentium 83 583 Pentium 66 567 Pentium 60 510 Pentium 63 443 486 DX4 100 435 486 DX4 75 319 486 DX2 66 297 486 DX 50 249 486 DX2 50 231 486 SX2 50 180 486 DX 33 166 486 SX2 40 145 486 SX 33 136 486 DX 25 122 486 SX 25 100 486 SX 20 78 386 DX 33 68 386 SX 33 56 386 DX 25 49 386 SX 25 39 386 SX 20 32 386 SX 16 22 Note: Pentium OverDrive, the first part of the scale is not linear, and the 166 MHz and 200 MHz are MMX technology. the scores. Figure 1–3 shows the iCOMP2 index listing the Pentium III at speeds up to 1000 MHz. Figure 1–4 shows SYSmark 2002 for the Pentium III and Pentium 4. Unfortunately Intel has not released any benchmarks that compare versions of the microprocessor since the SYSmark 2002. Newer benchmarks are available, but they do not compare one version with another. Pentium Pro Processor. A recent entry from Intel is the Pentium Pro processor, formerly named the P6 microprocessor. The Pentium Pro processor contains 21 million transistors, integer units, as well as a floating-point unit to increase the performance of most software. The basic clock frequency was 150 MHz and 166 MHz in the initial offering made available in late 1995. In addition to the internal 16K level-one (L1) cache (8K for data and 8K for instructions) the Pentium Pro processor also contains a 256K level-two (L2) cache. One other significant change is that the Pentium Pro processor uses three execution engines, so it can execute up to three instructions at a time, which can conflict and still execute in parallel. This represents a change from the Pentium, which executes two instructions simultaneously as long as they do not conflict. The Pentium Pro microprocessor has been optimized to efficiently execute 32-bit code; for this reason, it was often bundled with Windows NT rather than with normal versions of Windows 95. Intel launched the Pentium Pro processor for the server market. Still another change is that the Pentium Pro can address either a 4G-byte memory system or a 64G-byte mem- ory system. The Pentium Pro has a 36-bit address bus if configured for a 64G memory system. Pentium II and Pentium Xeon Microprocessors. The Pentium II microprocessor (released in 1997) represents a new direction for Intel. Instead of being an integrated circuit as with prior ver- sions of the microprocessor, Intel has placed the Pentium II on a small circuit board. The main reason for the change is that the L2 cache found on the main circuit board of the Pentium was notINTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 13 FIGURE 1–3 The Intel iCOMP2-rating index. Pentium III 1000 MHz 1277 Pentium III 933 MHz 1207 Pentium III 866 MHz 1125 Pentium III 800 MHz 1048 Pentium III 750 MHz 989 Pentium III 700 MHz 942 Pentium III 650 MHz 884 Pentium III 600 MHz 753 Pentium III 550 MHz 693 Pentium III 500 MHz 642 Pentium II 450 MHz 483 Pentium II 400 MHz 440 Pentium II 350 MHz 386 Pentium II 333 MHz 366 Pentium II 300 MHz 332 Pentium II 266 MHz 303 Pentium II 233 MHz 267 Pentium II 266 MHz 213 Pentium 233 MHz 203 Note: Pentium II Celeron, no cache. iCOMP2 numbers are shown above. To convert to iCOMP3, multiply by 2.568. fast enough to function properly with the Pentium II. On the Pentium system, the L2 cache oper- ates at the system bus speed of 60 MHz or 66 MHz. The L2 cache and microprocessor are on a circuit board called the Pentium II module. This onboard L2 cache operates at a speed of 133 MHz and stores 512K bytes of information. The microprocessor on the Pentium II module is actually Pentium Pro with MMX extensions. In 1998, Intel changed the bus speed of the Pentium II. Because the 266 MHz through the 333 MHz Pentium II microprocessors used an external bus speed of 66 MHz, there was a bottle- neck, so the newer Pentium II microprocessors use a 100 MHz bus speed. The Pentium II micro- processors rated at 350 MHz, 400 MHz, and 450 MHz all use this higher 100 MHz memory bus speed. The higher speed memory bus requires the use of 8 ns SDRAM in place of the 10 ns SDRAM found in use with the 66 MHz bus speed.14 CHAPTER 1 FIGURE 1–4 Intel microprocessor performance using SYSmark 2002. Pentium 4 3.2 GHz Pentium 4 2.8 GHz Pentium 4 2.4 GHz Pentium III 1000 MHz 0 200 400 6 In mid-1998 Intel announced a new version of the Pentium II called the Xeon, which was specifically designed for high-end workstation and server applications. The main difference between the Pentium II and the Pentium II Xeon is that the Xeon is available with a L1 cache size of 32K bytes and a L2 cache size of either 512K, 1M, or 2M bytes. The Xeon functions with the 440GX chip set. The Xeon is also designed to function with four Xeons in the same system, which is similar to the Pentium Pro. This newer product represents a change in Intel’s strategy: Intel now produces a professional version and a home/business version of the Pentium II microprocessor. Pentium III Microprocessor. The Pentium III microprocessor uses a faster core than the Pentium II, but it is still a P6 or Pentium Pro processor. It is also available in the slot 1 version mounted on a plastic cartridge and a socket 370 version called a flip-chip, which looks like the older Pentium package. Intel claims the flip-chip version costs less. Another difference is that the Pentium III is available with clock frequencies of up to 1 GHz. The slot 1 version contains a 512K cache and the flip-chip version contains a 256K cache. The speeds are comparable because the cache in the slot 1 version runs at one-half the clock speed, while the cache in the flip-chip version runs at the clock speed. Both versions use a memory bus speed of 100 MHz, while the 7 Celeron uses memory bus clock speed of 66 MHz. The speed of the front side bus, the connection from the microprocessor to the memory controller, PCI controller, and AGP controller, is now either 100 MHz or 133 MHz. Although the memory still runs at 100 MHz, this change has improved performance. Pentium 4 and Core2 Microprocessors. The Pentium 4 microprocessor was first made available in late 2000. The most recent version of the Pentium is called the Core2 by Intel. The Pentium 4 and Core2, like the Pentium Pro through the Pentium III, use the Intel P6 architecture. The main difference is that the Pentium 4 is available in speeds to 3.2 GHz and faster and the chip sets that support the Pentium 4 use the RAMBUS or DDR memory technologies in place of once standard SDRAM technology. The Core2 is available at speeds of up to 3 GHz. These higher microprocessor speeds are made available by an improvement in the size of the internal 6 Xeon is a registered trademark of Intel Corporation. 7 Celeron is a trademark of Intel Corporation.INTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 15 TABLE 1–3 Intel Core (P) Version Microprocessor microprocessor core (P) versions. P1 8086 and 8088 (80186 and 80188) P2 80286 P3 80386 P4 80486 P5 Pentium P6 Pentium Pro, Pentium II, Pentium III, Pentium 4, and Core2 P7 Itanium integration, which at present is the 0.045 micron or 45 nm technology. It is also interesting to note that Intel has changed the level 1 cache size from 32K to 8K bytes and most recently to 64K. Research must have shown that this size is large enough for the initial release version of the microprocessor, with future versions possibly containing a 64K L1 cache. The level 2 cache remains at 256K bytes as in the Pentium coppermine version with the latest versions containing a 512K cache. The Pentium 4 Extreme Edition contains a 2M L2 cache and the Pentium 4e con- tains a 1M level 2 cache, whereas the Core2 contains either a 2M or 4M L2 cache. Another change likely to occur is a shift from aluminum to copper interconnections inside the microprocessor. Because copper is a better conductor, it should allow increased clock fre- quencies for the microprocessor in the future. This is especially true now that a method for using copper has surfaced at IBM Corporation. Another event to look for is a change in the speed of the front side bus, which will likely increase beyond the current maximum 1033 MHz. Table 1–3 shows the various Intel P numbers and the microprocessors that belong to each class. The P versions show what internal core microprocessor is found in each of the Intel micro- processors. Notice that all of the microprocessors since the Pentium Pro use the same basic microprocessor core. Pentium 4 and Core2, 64-bit and Multiple Core Microprocessors. Recently Intel has included new modifications to the Pentium 4 and Core2 that include a 64-bit core and multiple cores. The 64-bit modification allows the microprocessor to address more than 4G bytes of memory through a wider 64-bit address. Currently, 40 address pins in these newer versions allow up to 1T (ter- abytes) of memory to be accessed. The 64-bit machine also allows 64-bit integer arithmetic, but this is much less important than the ability to address more memory. The biggest advancement in the technology is not the 64-bit operation, but the inclusion of multiple cores. Each core executes a separate task in a program, which increases the speed of execution if a program is written to take advantage of the multiple cores. Programs that do this are called multithreaded applications. Currently, Intel manufactures dual and quad core ver- sions, but in the future the number of cores will likely increase to eight or even sixteen. The prob- lem faced by Intel is that the clock speed cannot be increased to a much higher rate, so multiple cores are the current solution to providing faster microprocessors. Does this mean that higher clock speeds are not possible? Only the future portends whether they are or are not. Intel recently demonstrated a version of the Core2 that contains 80 cores that uses the 45 nm fabrication technology. Intel expects to release an 80-core version some time in the next 5 years. The fabrication technology will become slightly smaller with 35 nm and possibly 25 nm technology. The Future of Microprocessors. No one can really make accurate predictions, but the success of the Intel family should continue for quite a few years. What may occur is a change to RISC tech- nology, but more likely are improvements to a new technology jointly by Intel and Hewlett-Packard16 CHAPTER 1 called hyper-threading technology. Even this new technology embodies the CISC instruction set of the 80X86 family of microprocessors, so that software for the system will survive. The basic premise behind this technology is that many microprocessors communicate directly with each other, allowing parallel processing without any change to the instruction set or program. Currently, the superscaler technology uses many microprocessors, but they all share the same register set. This new technology contains many microprocessors, each containing its own register set that is linked with the other microprocessors’ registers. This technology offers true parallel processing without writing any special program. The hyper-threading technology should continue into the future, bringing even more paral- lel processors (at present two processors). There are suggestions that Intel may also incorporate the chip set into the microprocessor package. In 2002, Intel released a new microprocessor architecture that is 64 bits in width and has 8 a 128-bit data bus. This new architecture, named the Itanium, is a joint venture called EPIC (Explicitly Parallel Instruction Computing) of Intel and Hewlett-Packard. The Itanium architecture allows greater parallelism than traditional architectures, such as the Pentium III or Pentium 4. These changes include 128 general-purpose integer registers, 128 floating-point registers, 64 predicate registers, and many execution units to ensure enough hardware resources for software. The Itanium is designed for the server market and may or may not trickle down to the home/business market in the future. Figure 1–5 is a conceptual view, comparing the 80486 through Pentium 4 microprocessors. Each view shows the internal structure of these microprocessors: the CPU, coprocessor, and FIGURE 1–5 Conceptual views of the 80486, CPU1 CPU2 Copro CPU Coprocessor Pentium Pro, Pentium II, Pentium III, Pentium 4, and Core2 microprocessors. 8K 16K L1 Cache L1 Cache Pentium 80486DX CPU1 CPU2 CPU3 Copro CPU1 CPU2 CPU3 Copro 16K L1 Cache 32K L1 Cache 256K L2 Cache 512K L2 Cache or Pentium Pro 236K L2 Cache Pentium II, Pentium III, Pentium 4, or Core2 Module 8 Itanium is a trademark of Intel Corporation.INTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 17 cache memory. This illustration shows the complexity and level of integration in each version of the microprocessor. Because clock frequencies seemed to have peaked and the surge to multiple cores has begun, about the only major change to the Pentium will probably be a wider memory path (128 bits). Another consideration is the memory speed. Today, dynamic RAMs are the mainstay, but the speed of dynamic RAM memory has not changed for many years. A push to static RAM memory will eventually appear and will increase the performance of the PC. The main problem today with large static RAM is heat. Static RAM operates 50 times faster than dynamic RAM. Imagine a computer that contains a memory composed of static RAM. Another problem is the speed of the mass storage connected to a computer. The transfer speed of hard disk drives has changed little in the past few years. A new technology is needed for mass storage. Flash memory could be a solution, because its write speed is comparable to hard disk memory. One change that would increase the speed of the computer system is the placement of possibly 4G bytes of flash memory to store the operation system for common applications. This would allow the operating system to load in a second or two instead of the many seconds required to boot a modern computer system. 1–2 THE MICROPROCESSOR-BASED PERSONAL COMPUTER SYSTEM Computer systems have undergone many changes recently. Machines that once filled large areas have been reduced to small desktop computer systems because of the microprocessor. Although these desktop computers are compact, they possess computing power that was only dreamed of a few years ago. Million-dollar mainframe computer systems, developed in the early 1980s, are not as powerful as the Pentium Core2-based computers of today. In fact, many smaller compa- nies have replaced their mainframe computers with microprocessor-based systems. Companies such as DEC (Digital Equipment Corporation, now owned by Hewlett-Packard Company) have stopped producing mainframe computer systems in order to concentrate their resources on microprocessor-based computer systems. This section shows the structure of the microprocessor-based personal computer system. This structure includes information about the memory and operating system used in many microprocessor-based computer systems. See Figure 1–6 for the block diagram of the personal computer. This diagram also applies to any computer system, from the early mainframe computers to the latest microprocessor-based systems. The block diagram is composed of three blocks that are interconnected by buses. (A bus is the set of common connections that carry the same type of information. For example, the address bus, which contains 20 or more connections, conveys the memory address to the mem- ory.) These blocks and their function in a personal computer are outlined in this section of the text. The Memory and I/O System The memory structure of all Intel-based personal computers is similar. This includes the first per- sonal computers based upon the 8088, introduced in 1981 by IBM, to the most powerful high- speed versions of today, based on the Pentium 4 or Core2. Figure 1–7 illustrates the memory map of a personal computer system. This map applies to any IBM personal computer or to any of the many IBM-compatible clones that are in existence. The memory system is divided into three main parts: TPA (transient program area), system area, and XMS (extended memory system). The type of microprocessor in your computer deter- mines whether an extended memory system exists. If the computer is based upon a really old 8086 or 8088 (a PC or XT), the TPA and systems area exist, but there is no extended memory18 CHAPTER 1 Buses Memory system Microprocessor I/O system Dynamic RAM (DRAM) 8086 Printer Static RAM (SRAM) 8088 Serial communications Cache 80186 Floppy disk drive Read-only (ROM) 80188 Hard disk drive Flash memory 80286 Mouse EEPROM 80386 CD-ROM drive SDRAM 80486 Plotter RAMBUS Pentium Keyboard DDR DRAM Pentium Pro Monitor Pentium II Tape backup Pentium III Scanner Pentium 4 DVD Core2 FIGURE 1–6 The block diagram of a microprocessor-based computer system. area. The PC and XT computers contain 640K bytes of TPA and 384K bytes of system memory, for a total memory size of 1M bytes. We often call the first 1M byte of memory the real or con- ventional memory system because each Intel microprocessor is designed to function in this area by using its real mode of operation. Computer systems based on the 80286 through the Core2 not only contain the TPA (640K bytes) and system area (384K bytes), they also contain extended memory. These machines are FIGURE 1–7 The memory map of a personal computer. Extended memory 15M bytes in the 80286 or 80386SX 31M bytes in the 80386SL/SLC 63M bytes in the 80386EX 4095M bytes in the 80386DX, 80486, and Pentium 64G bytes in the Pentium Pro, Pentium II, Pentium III, Pentium 4, and Core2 System area 384K bytes 1M bytes of real (conventional) memory TPA 640K bytesINTRODUCTION TO THE MICROPROCESSOR AND COMPUTER 19 often called AT class machines. The PS/l and PS/2, produced by IBM, are other versions of the same basic memory design. Sometimes, these machines are also referred to as ISA (industry standard architecture) or EISA (extended ISA) machines. The PS/2 is referred to as a micro- channel architecture system, or ISA system, depending on the model number. A change beginning with the introduction of the Pentium microprocessor and the ATX class machine is the addition of a bus called the PCI (peripheral component interconnect) bus, now being used in all Pentium through Core2 systems. Extended memory contains up to 15M bytes in the 80286 and 80386SX-based computers, and up to 4095M bytes in the 80386DX, 80486, and Pentium microprocessors, in addition to the first 1M byte of real or conventional memory. The Pentium Pro through Core2 computer systems have up to 1M less than 4G or 1 M less than 64G of extended memory. Servers tend to use the larger 64G memory map, while home/business computers use the 4G-byte memory map. The ISA machine contains an 8-bit peripheral bus that is used to interface 8-bit devices to the computer in the 8086/8088-based PC or XT computer system. The AT class machine, also called an ISA machine, uses a l6-bit peripheral bus for interface and may contain the 80286 or above microprocessor. The EISA bus is a 32-bit peripheral interface bus found in a few older 80386DX- and 80486-based systems. Note that each of these buses is compatible with the earlier versions. That is, the 8-bit interface card functions in the 8-bit ISA, l6-bit ISA, or 32-bit EISA bus system. Likewise, a l6-bit inter- face card functions in the l6-bit ISA or 32-bit EISA system. Another bus type found in many 80486-based personal computers is called the VESA local bus, or VL bus. The local bus interfaces disk and video to the microprocessor at the local bus level, which allows 32-bit interfaces to function at the same clocking speed as the microproces- sor. A recent modification to the VESA local bus supports the 64-bit data bus of the Pentium microprocessor and competes directly with the PCI bus, although it has generated little, if any, interest. The ISA and EISA standards function at only 8 MHz, which reduces the performance of the disk and video interfaces using these standards. The PCI bus is either a 32- or 64-bit bus that is specifically designed to function with the Pentium through Core2 microprocessors at a bus speed of 33 MHz. Three newer buses have appeared in ATX class systems. The first to appear was the USB (universal serial bus). The universal serial bus is intended to connect peripheral devices such as keyboards, a mouse, modems, and sound cards to the microprocessor through a serial data path and a twisted pair of wires. The main idea is to reduce system cost by reducing the number of wires. Another advantage is that the sound system can have a separate power supply from the PC, which means much less noise. The data transfer rates through the USB are 10 Mbps at pre- sent for USB1; they increase to 480 Mbps in USB2. The second newer bus is the AGP (advanced graphics port) for video cards. The advanced graphics port transfers data between the video card and the microprocessor at higher speeds (66 MHz, with a 64-bit data path, or 533M bytes per second) than were possible through any other bus or connection. The latest AGP speed is 8X or 2G bytes per second. This video sub- system change has been made to accommodate the new DVD players for the PC. The latest new buses to appear are the serial ATA interface (SATA) for hard disk drives and the PCI Express bus for the video card. The SATA bus transfers data from the PC to the hard disk drive at rates of 150M bytes per second or 300M bytes for SATA-2. The serial ATA standard will eventually reach speeds of 450M bytes per second. Today PCI Express bus video cards operate at 16X speeds. The TPA. The transient program area (TPA) holds the DOS (disk operating system) operating system and other programs that control the computer system. The TPA is a DOS con- cept and not really applicable in Windows. The TPA also stores any currently active or inactive DOS application programs. The length of the TPA is 640K bytes. As mentioned, this area of memory holds the DOS operating system, which requires a portion of the TPA to function.

Advise: Why You Wasting Money in Costly SEO Tools, Use World's Best Free SEO Tool Ubersuggest.