Slide PDF

advertisement
Computer
System
Fundamentals
The Central
Processing Unit
CPU
Digital Forensics Center
Department of Computer Science and Statics
U
THINK BIG
The CPU
Central Processing Unit
-
-
WE DO
http://www.forensics.cs.uri.edu
Instructions and data stored in memory
Celeron, Celeron M
XEON, Itanium, Atom, i5, i7 and more
Other common CPUs
CU (Control Unit)
Instructions
and Data
Complex Instruction Set Computing (CISC)
- Intel and AMD Processors
-
Pentium Series
CPU Architecture
Memory Bus
-
80386DX/SX/SL, 80486DX/DX2/DX4
00:19
CPU Architecture
Computers have a Von Neumann
Architecture
8086/8088 (XT), 80286 (AT)
- AMD - Intel Compatible
- IBM/Motorola PowerPC, PPC
- ARM Cortex
R I
00:00
Intel CPUs
-
Reduced Instruction Set Computing (RISC)
- PowerPC (Power Macintosh)
- ARM Processors
- Smartphones
- Tablets
- Dec Alpha
- IBM RISC 6000
-
Performs fetch/execute cycle
-
Moves data to and from CPU registers and other
hardware components
Accesses program instructions and issues
commands to the ALU
ALU (arithmetic logic unit)
-
Performs calculations and comparisons
FPU - Floating Point Unit
MMU (Memory Management Unit)
-
supervises fetching instructions and data from
memory
02:42
04:48
CPU Architecture
Registers
Registers
-
Fast (expensive) memory close to CPU
Stores frequently used instructions and data
sometimes combined with memory
management unit as Bus Interface Unit
05:55
Instruction Register (IR)
- Stores instruction fetched from memory
Can hold data, an address or an instruction
I/O Interface
-
-
Each register is wired for specific function
Scratchpad for currently executing program
Program Count Register (PC)
- Memory location of next instruction
Manipulated directly by the Control Unit
Caches
-
Special Purpose Registers
-
Small storage locations within the CPU
MMU
CU
Caches
Memory Address Register (MAR)
- Where to Store/Fetch
-
ALU
FPU
-
Memory Data Register (MDR)
- What is stored/fetched
Registers
-
Status Registers
- Status of CPU and currently executing program
I/O Interface
-
I/O Registers
07:41
MMU
CU
ALU
FPU
Memory Bus
CSC414
Registers
CPU Instructions
One Bit
Accessing Memory from
the CPU
-
Address from an instruction is
copied to the MAR which finds
the location in memory
-
CU determines if it is a store or
retrieval
-
Transfer takes place between
the MDR and memory
-
MDR is a two way register
1
0
1
0
1
1
1
0
0
0
0
0
1
0
0
0
Set Bits
Address Decoder
Each memory location has a
unique address
Memory Address Register
-
Memory
Data Movement (load, store)
-
Shift and rotate
10:05
Fetch - Execute Cycle
- Use of specific registers can be implied by op code
Address Field
- Where to get the data for the operation
Execute
Number of operands
Length of operands
Example 32-bit Instruction Format
01000010011011110110110101100010
01000010011011110110110101100010
8-bit
24-bit
op code
address field
11:05
-
Performs operation that matches
op code
Moves or transforms data
Instruction Pipelining
-
Getting next instruction and data
during previous instruction's
execute cycle
12:06
Central Processing
Unit
Digital Forensics Center
Department of Computer Science and Statics
THINK BIG
WE DO
R I
http://www.forensics.cs.uri.edu
14:34
Program Counter (PC)
Memory Address
Register (MAR)
Memory Data Register
(MDR)
Instruction Register (IR)
Instruction Data
Address
(IR[address])
Memory Address
Register (MAR)
Memory Data Register
(MDR)
Execute
-
Instruction sets differ by CPU type
Length of the op code
(bring instructions & data to CPU)
Decode or find instruction
Load from memory into register
Prepare ALU
Fetch
Fetch
-
Operation (op code)
U
Flags to test for conditions
I/O and machine control
Memory Data Register
Instructions are comprised of
-
Testing AND OR XOR
Program control (branching)
0000011000001000
CPU Instructions
-
Integers and floating point
Bit manipulation instructions
-
08:43
-
Involve memory and registers
Arithmetic and Boolean Logic
Accumulator
Accumulator / MDR
Operation
Accumulator
Accumulator
Memory Data Register
(MDR)
Increment
Program Counter (PC)
Program Counter (PC)
Download