Tải bản đầy đủ (.pdf) (18 trang)

Bài giảng Kỹ nghệ máy tính: Chương 5 - Nguyễn Văn Thọ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (828.05 KB, 18 trang )

ĐẠI HỌC DUY TÂN
KHOA ĐIỆN TỬ VIỄN THÔNG

CHƯƠNG 5
ĐẠI CƯƠNG VỀ KIẾN
TRÚC MÁY TÍNH

Nguyễn Văn Thọ
Khoa Điện tử viễn thơng
Đại học Duy Tân – 2010

Nguyen Van Tho – Duy Tan University.

VON NEUMANN & MÁY TÍNH VON NEUMANN
John Louis von Neumann (19031957)
Nhà toán học, vật lý học người
Hungari
Người đề xuất khái niệm chương
trình được lưu trữ qua bản phác
thảo đầu tiên cho EDVAC (1945)
Bản phác thảo cấu trúc cơ bản
trở thành Máy tính Von Neumann.
• memory, chứa đựng chỉ thị và dữ
liệu
• processing unit, xử lý các phép
tính số học và logic
• a control unit, cung cấp chỉ thị
2-2

1



Nguyen Van Tho – Duy Tan University.

MÁY TÍNH VON NEUMANN

MEMORY
MAR

MDR

INPUT
Keyboard
Mouse
Scanner
Disk

OUTPUT
PROCESSING UNIT
ALU

TEMP

Monitor
Printer
LED
Disk

CONTROL UNIT
PC


IR

2-3

Nguyen Van Tho – Duy Tan University.

MEMORY - BỘ NHỚ
Một mảng k x m bit (k = 2n)
Address(Địa chỉ)
• Giá trị địa chỉ là duy nhất
cho mỗi vị trí trong bộ nhớ

Contents (Nội dung)
• m-bit value stored in location

Hoạt động cơ bản:
LOAD

0000
0001
0010
0011
0100
0101
0110
1101
1110
1111

00101101





10100010

• Đọc 1 giá trị từ 1 vị trí trong bộ nhớ

STORE
• Ghi 1 giá trị vào 1 vị trí trong bộ nhớ
2-4
1-4

2


Nguyen Van Tho – Duy Tan University.

GIAO TIẾP VỚI BỘ NHỚ
Đơn vị xử lý làm gì để đọc/ghi ở bộ nhớ ?
MAR: Memory Address Register
MEMORY
Thanh ghi địa chỉ bộ nhớ
MAR
MDR
MDR: Memory Data Register
Thanh ghi dữ liệu bộ nhớ
Đọc từ 1 vị trí có địa chỉ (A):
1. Ghi địa chỉ (A) vào MAR.
2. Gửi tín hiệu điều khiển đọc tới bộ nhớ.

3. Đọc dữ liệu từ MDR.

Ghi giá trị (X) vào vị trí (A):
1. Ghi giá trị (X) vào MDR.
2. Ghi địa chỉ (A) vào MAR.
3. Gửi tín hiệu điều khiển ghi vào bộ nhớ.

2-5
1-5

Nguyen Van Tho – Duy Tan University.

Control Unit - Đơn vị điều khiển
Điều khiển thi hành chương trình
IR - Instruction Register
Thanh ghi chỉ thị
PC - Program Counter
Thanh ghi Bộ đếm chương trình

CONTROL UNIT
PC

IR

IR chứa chỉ thị hiện tại.
PC chứa địa chỉ của chỉ thị kế tiếp sẽ xử lý
Control unit:
• Đọc 1 chỉ thị từ bộ nhớ (địa chỉ của chỉ thị nằm trong PC)
• Căn cứ vào chỉ thị nhận được, phát tín hiệu điều khiển để gọi thành
phần tương ứng thực hiện tác vụ


1 chỉ thị có thể mất nhiều chu kỳ máy để thực hiện xong
2-6
1-6

3


Nguyen Van Tho – Duy Tan University.

Processing Unit – Đơn vị xử lý
Functional Units
• ALU = Arithmetic and Logic Unit
• Có nhiều đơn vị chức năng,
trong đó có 1 số chức năng đặc biệt
(nhân, căn bậc 2, …)
• LC-2 thực hiện được ADD, AND, NOT

PROCESSING UNIT
ALU

TEMP

Registers ( Thanh ghi)
• Dung lượng nhỏ, lưu trữ tạm thời
• Chứa tốn hạng và kết quả của các đơn vị chức năng
• LC-2 có 8 thanh ghi (R0, …, R7)

Word Size (Độ dài từ)
• Số bit ALU có thể xử lý trong 1 chỉ thị

• Khác với độ rộng của thanh ghi
• LC-2 là 16 bits
2-7
1-7

Nguyen Van Tho – Duy Tan University.

Input & Output
Dùng để đưa dữ liệu vào bộ nhớ máy tính hoặc lấy dữ
liệu ra từ bộ nhớ máy tính
OUTPUT
Các thiết bị thường sử dụng giao diện là các
Monitor
Printer
LED
thanh ghi giống như 2 thanh ghi MAR và MDR
Disk
của bộ nhớ
• LC-2 hỗ trợ keyboard (input) và bảng điện tử (output)
• keyboard: thanh ghi dữ liệu KBDR( data register) & thanh ghi
trạng thái KBSR (status register)
• console: data register (CRTDR) & status register (CRTSR)

Một vài thiết bị có thể vừa là input , vừa là output
disk, network

Chương trình truy cập thiết bị thường sử dụng thơng
qua trình điều khiển thiết bị (driver)
2-8
1-8


4


Nguyen Van Tho – Duy Tan University.

Instruction Processing - Xử lý chỉ thị
Lấy chỉ thị từ bộ nhớ

FETCH
FETCH

Giải mã chỉ thị

DECODE
DECODE

Tính tốn địa chỉ

EVALUATE
EVALUATE ADDRESS
ADDRESS

Lấy các tốn hạng từ bộ nhớ

FETCH
FETCH OPERANDS
OPERANDS

Xử lý tính tốn


EXECUTE
EXECUTE

Lưu trữ kết quả

STORE
STORE
2-9
1-9

Nguyen Van Tho – Duy Tan University.

Instruction - Chỉ thị
Chỉ thị là đơn vị cơ bản của cơng việc
Thành phần :
• opcode: tác vụ cần thi hành (cộng , trừ …)
• operands: (tốn hạng) số liệu hoặc địa chỉ số liệu cần cho tác vụ

1 chỉ thị được mã hóa thành 1 chuỗi các bit
(Just like data!)
• Chỉ thị thường có chiều dài 16, 32 bit.
• Control unit thể hiện chỉ thị : phát 1 chuỗi các tín hiệu điều khiển để thi
hành tác vụ.
• Operation is either executed completely, or not at all.
Chỉ thị của computer và định dạng của nó được gọi là Instruction
Set Architecture (ISA).
2-10
1-10


5


Nguyen Van Tho – Duy Tan University.

Ví dụ : LC-3 ADD Instruction
LC-3 có chỉ thị là 16-bit
• Mỗi chỉ thị có 4 bit opcode [15:12].

LC-3 có 8 thanh ghi (R0-R7) .
• Nguồn và đích của chỉ thị ADD là các thanh ghi.

“Cộng nội dung của thanh ghi R2 với thanh ghi R6,
lưu trữ kết quả trong thanh ghi R6.”
2-11
1-11

Nguyen Van Tho – Duy Tan University.

Instruction Processing: FETCH
Lấy chỉ thị kế tiếp từ PC
đưa vào Instruction Register (IR).
• Lấy nội dung của PC đưa vào MAR.
• Gửi tín hiệu điều khiển đọc tới bộ nhớ
• Đọc nội dung của MDR, đưa vào IR.

Thanh ghi PC chỉ đến chỉ thị kế tiếp
• PC = PC+1.

F

D
EA
OP
EX
S
2-12
1-12

6


Nguyen Van Tho – Duy Tan University.

Instruction Processing: DECODE
Nhận dạng opcode.
• LC-3 : 4 bit [12-15] của chỉ thị. [0001]

Xác định giá trị các tốn hạng từ các bit cịn li
ã Example:
ắADD 3 bit [6-8] toỏn hng ngun 1 : 010
3 bit [0-2] toán hạng nguồn 2 : 110
3 bit [9-10] tốn hạng đích : 110

F
D
EA
OP
EX
S
2-13

1-13

Nguyen Van Tho – Duy Tan University.

Instruction Processing: EVALUATE ADDRESS
Trong những chỉ thị cần truy cập bộ nhớ,
tính tốn địa chỉ sử dụng cho việc truy cập
bộ nhớ.

F
D
EA
OP
EX
S
2-14
1-14

7


Nguyen Van Tho – Duy Tan University.

Instruction Processing: FETCH OPERANDS
Lấy các tốn hạng nguồn để thi hành tác vụ.
Examples:
• Lấy dữ liệu từ bộ nhớ (LDR)
• Đọc dữ liệu từ thanh ghi

F

D
EA
OP
EX
S
2-15
1-15

Nguyen Van Tho – Duy Tan University.

Instruction Processing: EXECUTE
Thi hành tác vụ với các tốn hạng nguồn
Examples:
• Gửi tốn hạng tới ALU và tín hiệu xác định ADD

F
D
EA
OP
EX
S
2-16
1-16

8


Nguyen Van Tho – Duy Tan University.

Instruction Processing: STORE

Lưu trữ kết quả ra bộ nhớ hoặc thanh ghi

F

Examples:

D

• result of ADD is placed in destination register
• result of memory load is placed in destination register
• for store instruction, data is stored to memory
¾write address to MAR, data to MDR
¾assert WRITE signal to memory

EA
OP
EX
S
2-17
1-17

Nguyen Van Tho – Duy Tan University.

Ideal Pipelining
Cycle:
Instr:

1

2


3

4

5

i

F

D

R

X

M W

F

D

R

X

M W

F


D

R

X

M W

F

D

R

X

M W

F

D

R

X

i+1
i+2
i+3

i+4

6

7

8

9

1
0

1
1

1
2

1
3

M W

2-18

9


Nguyen Van Tho – Duy Tan University.


VON NEUMAN VS. HARDVARD

2-19

Nguyen Van Tho – Duy Tan University.

3 MỨC ĐỘ XỬ LÝ SONG SONG
Many applications have thread-level parallelism
• Web server: 100s of users connected simultaneously
• O/S has many threads to choose from

Could run more than one thread at the same time
Possible approaches
• Multithreading (Intel hyperthreading)
• Multiple processor cores per chip
• Multiple processor chips per system

2-20

10


Nguyen Van Tho – Duy Tan University.

Multithreading (Intel hyperthreading)
Bản chất của siêu phân luồng ?

AS


AS

Tài nguyên
thực thi

Mô phỏng mỗi bộ xử lý vật lý
như là 2 bộ xử lý logic, tài
nguyên vật lý sẽ được chia sẻ
và có cấu trúc chung giống hệt
nhau cho cả 2 bộ xử lý logic.
Hệ điều hành và phần mềm
coi nó như 2 bộ xử lý song
song

Kết quả là tốc độ trung bình tăng lên khoảng 20-30%.

2-21

Nguyen Van Tho – Duy Tan University.

Multithreading (Intel hyperthreading)
Hạn chế của siêu phân luồng ?

Khi CPU thực hiện đồng thời 2 chuỗi lệnh đơn
giản (add, load,store) Ỉ xung đột do cả hai chuỗi
lệnh đều cùng dùng đến một đơn vị thực thi. Khi
đó CPU sử dụng kỹ thuật siêu phân luồng hố ra
chậm hơn so với CPU thơng thường (10%)

2-22


11


Nguyen Van Tho – Duy Tan University.

BỘ XỬ LÝ ĐA NHÂN

AS

AS

Tài nguyên
thực thi

Tài nguyên
thực thi

Bộ xử lý đa nhân được kiến
trúc bởi 2 hay nhiều CPU
vật lý thực sự, có khả năng
thực hiện đồng thời 2 chuỗi
lệnh song song thực sự .

9CPU 2 nhân (Core 2 Duo) tăng 40% hiệu năng
9CPU 4 nhân (Quad Core) tăng 50% hiệu năng hệ
thống so với CPU 2 nhân.
2-23

Nguyen Van Tho – Duy Tan University.


Multiple Processor Cores per Chip
Processor Processor
Core & L1 Core & L1

Processor Processor
Core & L1 Core & L1

L2 Cache

L2 Cache

L2 Cache

Bus I/F

Bus I/F

Intel Pentium D

L2 Cache

Processor Processor
Core & L1 Core & L1
L2 Cache

Bus I/F

Bus I/F


AMD Athlon X2

IBM Power5
Intel Core2 Duo

Increased level of integration per package/chip
Perception of 2x performance (not always reality)
Can share nothing (Intel), Bus interface (AMD), L2 (IBM)
2-24

12


Nguyen Van Tho – Duy Tan University.

Multiple Processor Cores per Chip

2-25

Nguyen Van Tho – Duy Tan University.

Multiple processor chips per system

2-26

13


Nguyen Van Tho – Duy Tan University.


ĐA NHIỆM VS SONG SONG
Xử lý đa nhiệm :
- Máy tính có khả năng thực hiện nhiều cơng việc cùng 1
lúc nhưng có thể không đồng thời
- Các công việc được chia nhỏ ra và máy tính luân phiên
thực hiện
Xử lý song song :
-Xử lý đồng thời 2 hoặc nhiều hơn các công việc cùng 1
lúc.
- Phải có phần cứng có khả năng xử lý song song

2-27

Nguyen Van Tho – Duy Tan University.

Clock (xung nhịp ) – Đơn vị đo tốc độ
Clock là tín hiệu để giữ cho đơn vị điều khiển hoạt động.
• Tại mỗi nhịp clock, control unit chuyển tới chu kỳ kế tiếp
Ỉ có thể là chỉ thị kế tiếp hoặc bước(phase) kế tiếp của chỉ thị.
(1 chỉ thị có thể thực hiện trong 1 hoặc vài chu kỳ)

Mạch phát xung nhịp (Clock):
• Dao động thạch anh
• Phát ổn định liên tục các mức logic 0 và 1
• Chu kỳ - Clock cycle (or machine cycle)

“1”
“0”

Machine

Cycle

time→

2-28
1-28

14


Nguyen Van Tho – Duy Tan University.

Instructions & Clock Cycles
MIPS & MHz
• MIPS = millions of instructions per second
số triệu chỉ thị thực hiện được trong 1 giây
Ví dụ: Máy tính có tốc độ 1 MIPS nghĩa là máy tính có khả năng
thực hiện 1 triệu chỉ thị trong 1 giây
• MHz = millions of clock cycles per second
số triệu chu kỳ lệnh trong 1 giây
Ví dụ : Máy tính có tốc độ 1MHz nghĩa là máy tính có 1 triệu chu
kỳ lệnh trong 1 giây

MIPS và MHz có khác nhau không ?

2-29
1-29

Nguyen Van Tho – Duy Tan University.


CISC & RISC
• CISC (complex Instruction Set computer): máy tính có tập lệnh
phức tạp
¾nhiều lệnh
¾cấu trúc phức tạp
¾mỗi lệnh: có độ dài khác nhau và thực hiện trong 1 đến chục
chu kỳ xung nhp
ắVớ d: Intel x86, AMD
ã RISC (reduced instruction Set computer): máy tính có tập lệnh rút
gọn
¾ít lệnh
¾mỗi lệnh có độ dài cố định và thực hiện trong 1 đến 2 chu ký
xung nhịp
¾cấu trúc vi xử lý đơn giản, có nhiều thanh ghi
¾tốc độ xung nhịp lớn và tiêu thụ năng lượng thấp
¾Ví dụ: ARM, PowerPC
2-30

15


Nguyen Van Tho – Duy Tan University.

KiẾN TRÚC MÁY TÍNH HiỆN ĐẠI

Cầu Bắc
North Bridge

Cầu Nam
Sound Bridge


2-31

Nguyen Van Tho – Duy Tan University.

DUAL CHANNEL MEMORY
Sử dụng 2 kênh truyền để tăng tốc độ truy xuất RAM
Chanel A
North
Bridge

Chanel B

DDR2

DDR2
Main Memory

Để tận dụng cơng nghệ này phải có cặp RAM cắm theo
2-32
quy định

16


Nguyen Van Tho – Duy Tan University.

DUAL CHANNEL MEMORY

2-33


Nguyen Van Tho – Duy Tan University.

SERIAL VS. PARALLEL
Parallel : Cổng Printer, giao tiếp ổ cứng ATA , khe cắm
mở rộng PCI , chuẩn đồ hoạ AGP…
Serial : Cổng COM, USB , S-ATA, PCI-Express
Xu hướng công nghệ : chuyển từ song song sang nối tiếp
PCI,AGP Ỉ PCI Express
ATA Ỉ S-ATA
0
1
0
0
A
Truyền 0
0
0
1

B
Nhận

Parallel

A
Truyền

01000001


Serial

B
Nhận

2-34

17


Nguyen Van Tho – Duy Tan University.

VI KIẾN TRÚC NAHALEM (CORE I7)

2-35

Nguyen Van Tho – Duy Tan University.

2-36

18



×