outline 1-1 historical background
TRANSCRIPT
1
EEB531 Microprocessor Systems微處理機系統
吳俊興高雄大學 資訊工程學系
March 2005
2
Outline
1-1 Historical Background
1-2 Microprocessor-Based Personal Computer System
1-3 Number Systems
1-4 Computer Data Formats
3
Chapter ObjectivesUpon completion of this chapter, you will be able to:1. Converse by using appropriate computer terminology such as bit, byte,
data, real memory system, expanded memory system (EMS), extendedmemory system (XMS), DOS, BIOS, 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 – Pentium 4 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.
4
1-1 Historical Background
• The Mechanical Age• The Electrical Age• The Microprocessor Age• The Intel Age – The Modern Microprocessor
– 1970s– 1980s– 1990s– 2000s
5
Dream: calculating with a machine• The Mechanical Age
– Abacus – Babylonians / Chinese, 500 B.C.– Analytical Engine – Charles Babbage, 1823
• programmable calculating machine• Input through punched cards
• The Electrical Age– Z3, Konrad Zuse, German, 1941
• first electronic calculating machine, 5.33 Hz clocking• used in aircraft and missile design during World War II
– Colossus, Alan Turing, British, 1943• first electronic computer using vacuum tube• not-programmable special-purpose computer
– used to break secret German military codes– ENIAC, U. Pennsylvania, 1946
• first modern (general-purpose, programmable) electronic computer performing about 100,000 operations per second
• using over 17,000 vacuum tubes and over 500 miles of wires• programmed by rewiring its circuits
6
The Microprocessor Age• Breakthroughs Followed
– transistor, Bell Labs, 1948– integrated circuit, Jack Kilby, Texas Instruments, 1958
• The Microprocessor Age– Intel 4004, 1971
• First microprocessor at 50 KIPS• 4-bit, 45 instructions, programmable• 4096 location addressable• used in calculators, video games
– Intel 8008, 1972• 8-bit
• Problems:– small memory size, slow speed, limited instruction set
ULSI2005VLSI1995IC1975Transistor1965Vacuum tube1951Computer TechnologyYear
7
The Modern Microprocessor• Intel 8080, 1973
– first modern 8-bit microprocessors• Table 1-1 Early 8-bit µPs
8
The Intel Age
Pentium IV: boosting the performance (IA-64)2000sPentium – Pentium III : competing RISC1990s
80286 – 80486: matching the demands (IA-32)– demand faster speeds, more memory and wider data paths
1980s4004 – 8086/80881970s
9
1970s Intel Processors
Identical to 8086 except for its 8-bit external bus
10X the performance of the 8080
10X the performance of the 8008Building the 1st PC
Data / character manipulation
First micro-computer chip, Arithmetic manipulation
Brief Description
----------Virtual Memory
1 MB1 MB(Segmented)
64 KBytes16 KBytes640 bytesAddressable Memory
29,000(3 microns)
29,000(3 microns)
4.500(6 microns)
3,500(10 microns)
2,300(10 microns)
Number of Transistors
8 bits16 bits8 bits8 bits4 bitsBus Width
5MHz, 8MHz5MHz, 8MHz, 10MHz
2MHz200KHz108KHzClock Speeds6/1/19796/8/19784/1/19744/1/197211/15/1971Introduced
80888086808080084004
http://www.intel.com/intel/intelis/museum/online/hist_micro/hof/tspecs.htm
10
1980s Intel Processors
• Level 1 cache on chip• Internal structure modified
First X86 to handle 32-bit data sets
3-6X performance of the 8086
Brief Description
64 terabytes64 terabytes1 gigabyteVirtual Memory
4 gigabytes4 gigabytes(Memory Paging)
16 megabytes(Protected Mode)
Addressable Memory
1.2 million (1 micron)(.8 micron with 50MHz)
275,000(1 micron)
134,000(1.5 microns)
Number of Transistors
32 bits32 bits16 bitsBus Width
25MHz, 33MHz, 50MHz16MHz, 20MHz, 25MHz, 33MHz
6MHz, 8MHz, 10MHz, 12.5MHz
Clock Speeds
4/10/198910/17/19852/1/1982Introduced
Intel 486 DX Microprocessor
Intel 386 DX Microprocessor80286
11
1990s Intel Processors
Dual independent bus, dynamic execution, Intel MMX™technology
Dynamic execution architecture drives high-performing processor
Superscalar architecture brought 5X the performance of the 33-MHz Intel486™DX processor
Brief Description
64 terabytes64 terabytes64 terabytesVirtual Memory
64 gigabytes64 gigabytes4 gigabytesAddressable Memory
7.5 million(0.35 micron)
5.5 million(0.35 micron)
3.1 million(.8 micron)
Number of Transistors
64 bits64 bits64 bitsBus Width
200MHz, 233MHz, 266MHz, 300MHz
150MHz, 166MHz, 180MHz, 200MHz
60MHz, 66MHzClock Speeds
5/07/199711/01/19953/22/1993Introduced
Pentium® II Processor
Pentium® Pro ProcessorPentium® Processor
12
2000s Intel Pentium IV Processors• Intel P6 Microarchitecture
– The basis for Pentium Pro, Pentium II and Pentium III– A dynamically scheduled processor that translates each IA-32
instruction to a series of micro-operations (uops) executed by the pipeline
– uops are similar to typical RISC instructions
Differ in clock rate, cache architecture, and memory interface. Pentium II added MMX (multimedia extension). Pentium III added SSE (Streaming SIMD Extensions). Pentium IV added VLIW (EPIC).
13
Table 1–2 Many modern Intel microprocessorsPart Bus Width Memory Size8048 8 2K internal8051 8 8K internal8085A 8 64K8086 16 1M8088 8 1M8096 16 8K internal80186 16 1M80188 8 1M80251 8 16K internal80286 16 16M80386EX 16 64M80386DX 32 4G80386SL 16 32M80386SLC 16 32M + 1K cache80386SX 16 16M80486DX/DX2 32 4G + 8K cache80486SX 32 4G + 8K cache80486DX4 32 4G + 16K cachePentium 64 4G + 16K cachePentium Overdrive (P24T) 32 4G + 16K cachePentium Pro processor 64 64G + 16K L1 cache + 256K L2 cachePentium II 64 64G + 32K L1 cache + 512K L2 cachePentium II Xeon 64 64G + 32K L1 cache + 512K or 1M L2 cachePentium III, Pentium 4 64 64G + 32K L1 cache + 256K L2 cache
14
Figure 1-4 Conceptual views of 80486 and Pentium microprocessors
15
1-2 The Microprocessor-based Personal Computer System
• The Memory and I/O System• The DOS Operating System• The Microprocessor
16
Bus Architecture
Processor Memory
I/O Devices
Backplane Bus
MemoryProcessor Memory Bus
BusAdaptor
BusAdaptor
I/O Bus
Backplane Bus
I/O Bus
“backsidecache”
Processor
Director
ISA (Industry Standard Architecture)EISA (Extended ISA)PCI (Peripheral Component Interconnect) / PCI ExpressVESA (Video Electronic Standards Association) or VL local busAGP (Advanced Graphics Port)
USB (Universal Serial Bus)1394IDE / E-IDESCSIParallel PortRS-232 / RS-422 / …
17
Figure 1-6 The memory map of the PC
• Extended memory (XMS)– PC/AT ≥286
• TPA (transient program area)– real mode– hold DOS OS and applications– 640KB (0x00000-0x9FFFF)
18
Figure 1-7/1-8 (1MB) real memory mapTPA: 640K (0x00000-9FFFF)
System: 384K (0xA0000-FFFFF)
19
0x00000-9FFFF: Transient Program Area (TPA)• TPA: DOS, drivers, control
programs, TSR (terminate and stay resident) programs, and applications (AP)
• MS-DOS/PC-DOS: two area– control the PC and I/O devices– provide functions to AP– Three parts:
• IO.SYS: contains BIOS and SYSINITSYSINIT– relocate itself to high memory– move MSDOS.SYS to final location– call init code in MSDOS.SYS– open CONFIG.SYS and load files– load default shell, COMMAND.COM
• MSDOS.SYS• COMMAND.COM
• Interrupt vectors– access DOS, BIOS, and applications
20
0xA0000-FFFFF: System Area• contains programs on either ROM or
flash memory, and areas of read/write (RAM) memory for data storage
• A0000H-C7FFFH: Video RAM– CGA, EGA, VGA, etc.
• A0000H-AFFFFH: bit-mapped data• B0000H-BFFFFH: text data• C0000H-C7FFFH: programs
– E1800000H-E2FFFFFFH: Windows• C8000H-DFFFFH: device BIOS, EMS
– MFM/RLL hard disk drives: low-level format software at C8005H
– EMS 64KB page frame• EMS (Expanded Memory System)• LIM (Lotus, Intel, and Microsoft)
memory management driver• usually D0000H-DFFFFH
• E0000H-EFFFFH: BASIC or upper memory blocks (4KB block)
• BIOS– set up the computer: may be relocated– basic I/O functions
21
Figure 1-9 EMS showing a page frame
• available to AP as 16 KB pages• up to 32 MB in EMS4.0
• 80286+ can address 16MB• APs in earlier MS-DOS are
crowded in 640KB.
22
I/O (Input/Output) Space: I/O port addresses• Addresses an I/O device
F000:420A E461 IN AL, 61HF000:420C E620 OUT 20H, AL
• Two major sections– below 0400H: system devices
specified by original IBM PC (ISA bus)• 0000H-00FFH: components on mainboard• 0100H-03FFH: plug-in cards
– remaining area: available in newer systems• 0000H - FFFFH• 00000000H - FFFFFFFFH
• I/O port vs. BIOS ROM– I/O port: control operations of devices– BIOS ROM: provide functions or access
data
23
Memory/IRQ/IO Resource Management
控制台→系統→硬體→裝置管理員→檢視→資源(依類型)
24
The DOS Operating System• OS: the program that operates the computer
– stored on a disk or on a ROM– Three parts:
• IO.SYS: contains BIOS and SYSINIT. SYSINIT will– relocate itself to high memory and move MSDOS.SYS to final location– call init code in MSDOS.SYS– open CONFIG.SYS and load files– load default shell, COMMAND.COM
• MSDOS.SYS: contains advanced MS-DOS functions• COMMAND.COM
– execute AUTOEXEC.BAT (automatic execution batch)• Function calls
– DOS• INT 21H: files, memory, programs, etc
– BIOS• INT 10H: video BIOS• INT 13H: diskettes or hard disk drives• INT 14H: COM port• INT 17H: parallel LPT port
See Appendix A. pp. 808 – 875
25
Examples of CONFIG.SYS and AUTOEXEC.BAT
26
The Microprocessor• The heart of microprocessor-based computer system
– three main tasks• data transfer between itself and the memory or I/O systems• simple arithmetic and logic operations
– basic instructions capable to solve complex problems– million instructions per seconds– variable data widths
» 8086-80286: directly manipulate 8- and 16-bit numbers» 80386 or higher: 32-bit numbers» 80486 or higher: floating-point arithmetic
• program flow via simple decisions– determine numerical conditions– branch on the conditions
– control memory and I/O through a series of connections called buses• select an I/O or memory device• transfer data between an I/O device or memory and the microprocessor• control the I/O and memory system
27
Operations and Decisions
28
Bus Structure
Four basic control bus connections• MRDC (Memory ReaD Control)• MWTC (Memory WriTe Control)
(over-bar = active-low)• IORC (I/O Read Control)• IOWC (I/O Write Control)
29
Table 1–5 The Intel family of microprocessor bus and memory sizes
In all family members, the memory is numbered by byte
30
Figure 1-12 Physical memory systems31
1-3 Number Systems• Digits• Positional Notation
– number base, decimal point• Conversion to Decimal• Conversion from Decimal
– Whole Number Conversion from Decimal– Converting from a Decimal Fraction
• Binary-Coded Hexadecimal (BCH): 2 16• Complements: radix and radix-1
32
Conversion to Decimal
33
Conversion from Decimal
34
Binary-Coded Hexadecimal and Complements35
1-4 Computer Data FormatsCommon data types
– ASCII (American Standard Code for Information Interchange)• standard ASCII cod: 7-bit• extended ASCII code: 8-bit• Unicode
– 0000H-00FFH: the same as ASCII– 0100H-FFFFH: store world-wide character sets
• Assembler: DB defines byte (s)– BCD (Binary-Coded Decimal)– signed and unsigned integers
• Byte-sized data: 8-bit• Word-sized data: 16-bit• doubleword-sized data: 32-bit
– floating-point numbers (real numbers)• single-precision: 4-byte
– IEEE-754: 1 sign-bit, an 8-bit exponent, a (23+1)-bit fraction (mantissa)• double-precision: 8-byte
– 1 sign-bit, an 11-bit exponent, a (52+1)-bit fraction
36
ASCII Code
37
Extended ASCII Code
38
BCD (Binary-coded decimal)• packed BCD: two digits per byte• unpacked BCD: one digit per byte
39
Byte-Sized Data
40
Byte-Sized Data (cont.)
41
Word-Sized Data
42
Doubleword Sized Data43
Real Numbers
44
Real Numbers (cont.)
DD: 32-bitDQ (quadword): 64-bitREAL4, REAL8 and REAL10 for defining single-, double- and extended
precision