Escolar Documentos
Profissional Documentos
Cultura Documentos
Lecture Outline
1. Introduction
2. Views of Computer Systems 3. Processor Based System 4. Processor 5. Memory 6. Input/Output 7. Interconnection: The Glue 8. Historical Perspective Introduction
Basic Terminology and Notation
Outline
Processor
Execution cycle Pipelining RISC and CISC
Memory
Basic memory operations Design issues
Introduction
Some basic terms
Computer organization Computer architecture Computer design Computer programming Users view Programmers view Architects view Implementers view
5
1. Introduction
data
address
A Programmers View
Depends on the type and level of language used A hierarchy of languages
Machine language Assembly language High-level language Application programs increasing level of abstraction
Machine-independent
High-level languages/application programs
Machine-specific
Machine and assembly languages
10
Assembly language
Slightly higher-level language Human-readable One-to-one correspondence with most machine language instructions
inc
11
count
12
Assembly Language inc mov and add result class_size,45 mask,128 marks,10
13
14
C
result++; size = 45; mask1 &= 128; marks += 10;
sum += x + y + z;
17
20
Architects View
Looks at the design aspect from a high level
Much like a building architect Does not focus on low level details Uses higher-level building blocks
Ex: Arithmetic and logical unit (ALU)
Space-efficiency
Assembly code tends to be compact
Time-efficiency
Assembly language programs tend to run faster
Only a well-written assembly language program runs faster Easy to write an assembly program that runs slower than its high-level language equivalent
21
Page 24
23 24
Implementers View
Implements the designs generated by architects
Uses digital logic gates and other hardware circuits
Example
Processor consists of
Control unit Datapath ALU Registers
27
28
29
30
Microprocessor Busses
Address
can view the entire system microprocessor, ROM, RWM, and I/O ports as a collection of addressable registers. Those registers reside within the microprocessor are internal registers, and those exist in the ROM, RWM (RAM), and I/O ports are external registers.
Bus input bus to memory device specifying location of data to read/write Bus input/output bus to memory device containing data value being read or written. Bus control signals of a processor for memory and I/O devices
Data
Control
31
32
4. Processor
5. Memory 6. Input/Output 7. Interconnection: The Glue 8. Historical Perspective
33
34
Processor Integration
Processor
Execution cycle
Fetch Decode Execute
Early computers had many separate chips for the different portions of a computer system
35
36
Microprocessors
Modern Processors
First microprocessors placed control, registers, and arithmetic logic unit (ALU) in one integrated circuit (one chip).
Modern microprocessors (general purpose Processors) also integrate memory onchip for faster access. External memory and I/O components are still required. Memory integrated on the microprocessor is called cache memory.
37
38
Microcontrollers
Microcontrollers integrate all of the components (control, memory, I/O) of a computer system into one integrated circuit. Microcontrollers are intended to be single chip solutions for systems requiring low to moderate processing power.
39
40
Pipelining (contd)
Another way of looking at pipelined execution
41
42
Microprogramming
Variations of the ISA-level can be implemented by changing the microprogram
43
44
Memory
Ordered sequence of bytes
The sequence number is called the memory address Byte addressable memory
Each byte has a unique address Almost all processors support this
5. Memory
6. Input/Output 7. Interconnection: The Glue 8. Historical Perspective
45
46
Memory (contd)
Memory unit
Address Data Control signals
Read Write
Memory (contd)
47
48
Memory (contd)
Read cycle
1. Place address on the address bus 2. Assert memory read control signal 3. Wait for the memory to retrieve the data
Introduce wait states if using a slow memory
Memory (contd)
Write cycle
1. 2. 3. 4. Place address on the address bus Place data on the data bus Assert memory write signal Wait for the memory to retrieve the data
Introduce wait states if necessary
4. Read the data from the data bus 5. Drop the memory read signal
49
50
Byte Ordering
Little-endian
Used by Pentium
Big-endian
Default in MIPS and PowerPC
On modern processors
Configurable
51
52
Design Issues
Slower memories
Problem: Speed gap between processor and memory Solution: Cache memory
Use small amount of fast memory Make the slow memory appear faster Works due to reference locality
Size limitations
Limited amount of physical memory
Overlay technique Programmer managed
Virtual memory
Automates overlay management Some additional benefits
53
54
6. Input/Output
7. Interconnection: The Glue 8. Historical Perspective
55
56
Input/Output
I/O devices are interfaced via an I/O controller
Takes care of low-level operations details
Input/Output (contd)
Isolated I/O
Separate I/O address space Separate I/O read and write signals are needed Pentium supports isolated I/O Also supports memory-mapped I/O
57
58
Input/Output (contd)
Several ways of transferring data
Programmed I/O
Program uses a busy-wait loop Anticipated transfer
1. Introduction 2. Views of Computer Systems 3. Processor Based System 4. Processor 5. Memory 6. Input/Output
Interrupt-driven I/O
Interrupts are used to initiate and/or terminate data transfers Powerful technique Handles unanticipated transfers
59
60
Interconnection
System components are interconnected by buses
Bus: a bunch of parallel wires
Interconnection (contd)
Bus is a shared resource
Bus transactions
Sequence of actions to complete a well-defined activity Involves a master and a slave Memory read, memory write, I/O read, I/O write
Bus operations
A bus transaction may perform one or more bus operations Pentium burst read Transfers four memory words Bus transaction consists of four memory read operations
Internal buses
PCI, AGP, PCMCIA
External buses
Serial, parallel, USB, IEEE 1394 (FireWire)
61
Bus arbitration
62
1. Introduction 2. Views of Computer Systems 3. Processor Based System 4. Processor 5. Memory 6. Input/Output 7. Interconnection: The Glue
Historical Perspective
The early generations
Difference engine of Charles Babbage
Transistor generation
Around the 1950s and 1960s
8. Historical Perspective
IC generation
Around the 1960s and 1970s
VLSI generation
Since the mid-1970s
63
64
4004 8008
1974-76 8-bit
8080 8085
1978-1979 16-bit
8086 8088
1976 8-bit
8048 8051
1982 16-bit
80286
1982 16-bit
80186 80188
8-bit
80251 80151
16-bit
8096 80196
1985-1988 32-bit
80386DX 80386SX
1985 32-bit
80386
80386SX 80486DX
1989 32-bit
80486DX
Pentium Mikroilemcileri
(32-bit i mimari, 64-bit veri yolu)
Mikroilemciler
Mikrodenetleyiciler
65
66
67
68
Pentium I
69
70
Pentium Pro
Pentium II
71
72
Pentium III
Pentium IV
73
74
Acknowledgement
The slides have been based in-part upon original slides of a number of books including: Fundamentals of Computer Organization and Design, S. P. Dandamudi, Springer, 1060 pages, 2003. Mikroilemciler ve Bilgisayarlar, 6. Basm, H. Gmkaya, ALFA, 2011.
75