1
KIẾN TRÚC CÁC HỆ THỐNG TÍNH TOÁN
Nguyễn Phú Bình
Trần Trung Kiên
Bộ môn KTMT - Khoa CNTT
Trường ĐH Bách Khoa Hà Nội
2
Lưu ý của tác giả
Không được tự ý sao chép hay quảng bá bài giảng này khi
chưa được sự đồng ý của các tác giả.
Địa chỉ liên hệ của các tác giả:
Nguyễn Phú Bình
Email:
Mobile: 0983533925
Website: />Trần Trung Kiên
Email:
Mobile: 0914919392
Bộ môn Kỹ thuật Máy tính
Khoa Công nghệ Thông tin
Trường Đại học Bách Khoa Hà Nội
C1- P322, Tel: 8696125
Website:
3
Kiến trúc các hệ thống tính toán
Chương 2
KỸ THUẬT PIPELINING TRONG CÁC
HỆ THỐNG TÍNH TOÁN
Nguyễn Phú Bình – Trần Trung Kiên
Bộ môn Kỹ thuật Máy tính, Khoa Công nghệ Thông tin
Trường Đại học Bách Khoa Hà Nội
4
Chương 2
I. Kỹ thuật pipelining đối với Scalar
Processor (bộ xử lý vô hướng) ®
II. Kỹ thuật pipelining đối với Vector
Processor (bộ xử lý kiểu vector)
5
I.Pipelining đối với Scalar Processor
0. Một số kiến thức cơ bản
1. Pipelining trong kiến trúc DLX
2. Vấn đề về hiệu năng đối với
pipelining
3. Các "xung đột" trong kỹ thuật
pipelining
6
0. Một số kiến thức cơ bản
Kiến trúc tập lệnh, tập lệnh và lệnh
Phân loại kiến trúc tập lệnh theo các
cách lưu trữ toán hạng
(By Type of Internal Storage, Where are ALU operands/result?)
7
Kiến trúc tập lệnh, tập lệnh, lệnh
Kiến trúc tập lệnh (Instruction Set Architecture)®:
tập lệnh, các kiểu dữ liệu, tập thanh ghi lập trình
được, các phương pháp định địa chỉ toán hạng và
các cơ chế vào – ra
Tập lệnh (Instruction Set):
Mỗi một bộ xử lý có một tập lệnh xác định
Tập lệnh thường có hàng chục đến hàng trăm
lệnh
8
Kiến trúc tập lệnh, tập lệnh, lệnh
Khuôn dạng của một lệnh máy:
Mỗi lệnh là một chuỗi số nhị phân mà bộ xử lý hiểu
được để thực hiện một thao tác xác định
Mã thao tác: (Operation Code) mã hóa cho thao tác mà
CPU phải thực hiện vd:ADD, MULT,
Tham chiếu toán hạng: mã hóa cho toán hạng hoặc nơi
chưa toán hạng mà thao tác sẽ tác động.
Mã thao tác
Tham chiếu toán hạng
9
Phân loại kiến trúc tập lệnh
Phân loại theo các cách lưu trữ toán hạng:
Kiến trúc Stack: Toán hạng được lưu trữ tại đỉnh
của Stack
Kiến trúc Accumulator: Toán hạng là các thanh
chứa
Kiến trúc general-purpose register (GPR): Các toán
hạng là các thanh ghi hoặc ô nhớ (Còn gọi tắt là
kiến trúc Register):
10
Phân loại kiến trúc tập lệnh
C = A + B
Load A
ADD B
Store C
PUSH A
PUSH B
ADD
POP C
AccumulatorStack
11
Kiến trúc Stack
12
Kiến trúc Stack
13
Kiến trúc Stack
14
Kiến trúc Stack
15
Kiến trúc Stack
16
Kiến trúc Accumulator
17
Kiến trúc Accumulator
18
Kiến trúc Accumulator
19
Kiến trúc Accumulator
20
Phân loại kiến trúc tập lệnh
Kiến trúc General-Purpose
Register chia 3 loại:
Register-memory
Memory-memory
Register-register (load-store)
21
Kiến trúc Register-Memmory
22
Kiến trúc Register-Memmory
23
Kiến trúc Register-Memmory
24
Kiến trúc Register-Memmory
25
Kiến trúc Memory-Memory