Histry N Intro
Histry N Intro
Assembly language
CHAPTER 1 : INTRODUCTION
Architecture & Organization
• Semiconductor memories :
1K,4K,16K,64K,256K,1M,4M,16 Mbits on a single chip
• Microprocessors appeared :
Intel 4004 (1971), Intel 8008 (72), Intel 8080 (8 bit-74),
8086 (16bit-81), 80386 (32bit-85) onward.
• At almost the same time : Motorola, 6800(8bit), 68000
(16bit), 68010(16bit), 68020 (32bit), 68030/40 (32bit)
• Then Motorola’s product disappeared commercially
• Intel products dominated the market, since the
appearance of IBM PC
Evolution of Microprocessors
------------------------------------------------------------------------------------------
Feature 8008 8080 8086 80386 80486
------------------------------------------------------------------------------------------
Year introduced 1972 1974 1978 1985 1989
# of instructions 66 111 133 154 235
Address bus width 8 16 20 32 32
Data bus width 8 8 16 32 32
# of registers 8 8 16 8 8
Memory addressability 16KB 64KB 1 MB 4 GB 4 GB
Bus Bandwidth (MB/s) - 0.75 5 32 32
Reg-Reg add time (s) - 1.3 0.3 0.125 0.06
------------------------------------------------------------------------------------------
8086 (1978)
• 20-bit address bus : 1M byte(1024Kbytes) memory
• instruction : over 20,000 variation
– 4004 : 45, 8085 : 246
• A separate BIU and EU
– Fetch and Execute instruction simultaneously
• 16-bit Internal processor registers
– with the ability to access the high and low 8 bits separately
if desired
• hardware multiply and divide built in
• support for an external math coprocessor
– perform floating-point math operations as much as 100
times faster than the processor alone via software emulation
26
8088
• 8086(1978) : 16-bit data bus
– requirement of two separate 8-bit memory banks to
supply its 16-bit data bus
– quite expensive memory chip at the time
• 8088(1979) : external 8-bit data bus
• IBM announced the PC : 1981.8
– 8088, 16K memory(expandable 64K),
4.77MHz(clock speed)
– PC standard
80186/80188
• High-Integration CPUs
– schematic diagram for IBM’s original PC
• 8088 microprocessor
• several additional chips are required
– 80186 = 8086 + several additional chips
• added 9 new instructions
• clock generator
• programmable timer
• programmable interrupt controller
• circuitry to select the I/O devices
30
80286 (1982)
• some instruction executed : 250ns(4.0MIPS) at 8MHz
• 24-bit address bus : 16M byte memory
• added 16 new instructions
• Real Mode: 1st powered on
– functions exactly like an 8086
– uses only its 20 least significant address lines(1M)
• Protected :
• A “Fatal Flaw” ?
– once switched to Protected mode, should not be able to
switch back to Real mode
– 286 chips are operated in Real mode and thus function only
as fast 8086s
• IBM AT(advanced technology) Computer :1984
80386
• flexible 32-bit Microprocessor(1986) : data bus, registers
• very large address space : 32-bit address bus(4G byte physical)
– 64 terabyte virtual
– 4G maximum segment size
• integrated memory management unit
– virtual memory support, optional on-chip paging
– 4 levels of protection
• added 16 new instructions
• Real Mode, Protected mode
• Virtual 8086 mode : in a protected and paged system
• 386SX : 16-bit external data bus, 24-bit address bus
• 386EX : 16-bit external data bus, 26-bit address bus
– 1995, called embedded PC
80486
• Intel released 80486 in 1989
• maintaining compatibility : standard(8086,286,386)
– polished & refined 386 : twice as fast as 386
• redesigned using RISC concept :
– frequently used instruction : a single clock cycle
– new 5-stage execution pipeline
• highly integrated
– 8K memory cache
– floating-point processor(equivalent of the external 387)
• added 6 new instructions : for used by OS
80486
• 486SX :
– for low-end applications that do not require a coprocessor or
internal cache
– clock speed limited 33MHz
• 486DX2 & DX4 :
– internal clock rate is twice or 3 times external clock rate
– 486DX4 100 : internal 100MHz, external 33MHz
• Overdrive Processor:
– 486DX2 or DX4 chips with overdrive socket pin-outs
– to upgrade low-speed 486DX, SX with 486DX2, DX4
Pentium
• increasing the complexity of the IC: to scale the chip
down
– if every line could be shrunk in half, same circuit could be
built in one-forth the area
• Superscaler : support 2 instruction pipelines(5 stage)
– ALU, address generation circuit, data cache interface
– actually execute two different instruction simultaneously
• Pentium(1993) : originally labeled P5(80586)
– 60, 66MHz(110MIPS)
– 8K code cache, 8K data cache
– coprocessor : redesign(8-stage instruction pipeline)
– external data bus : 64 bit(higher data transfer rates)
– added 6 new instructions : for used by OS
Pentium pro
• codenamed P6 : 1995
– basic clock frequency : 150, 166MHz
• two chips in one : two separate silicon die
– processor(large chip), 256K level two cache
• Superscaler processor of degree three(12 stage)
• internal cache :
– level one(L1) : 8K instruction and data cache
– level two(L2) : 256K(or 512K)
• 36-bit address bus : 64G byte memory
• has been optimized to efficiently execute 32-bit code
– bundled with Windows NT : server market
PentiumⅡand PentiumⅡXeon Microprocessor