You are on page 1of 62

KIẾN TRÚC MÁY TÍNH

Computer Architecture
Course ID: IT3283

Nguyễn Kim Khánh


Nội dung học phần

Chương 1. Giới thiệu chung


Chương 2. Hệ thống máy tính
Chương 3. Số học và logic máy tính
Chương 4. Kiến trúc tập lệnh
Chương 5. Bộ xử lý
Chương 6. Bộ nhớ máy tính
Chương 7. Hệ thống vào-ra
Chương 8. Các kiến trúc song song

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 2


Kiến trúc máy tính

Chương 6
BỘ NHỚ MÁY TÍNH

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 3


Nội dung của chương 6

6.1. Tổng quan hệ thống nhớ


6.2. Bộ nhớ chính
6.3. Bộ nhớ đệm (cache)
6.4. Bộ nhớ ngoài

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 4


6.1. Tổng quan hệ thống nhớ
1. Các đặc trưng của bộ nhớ
§ Vị trí
§ Bên trong CPU:
§ tập thanh ghi
§ Bộ nhớ trong:
§ bộ nhớ chính
§ bộ nhớ đệm (cache)

§ Bộ nhớ ngoài:
§ các thiết bị lưu trữ
§ Dung lượng
§ Độ dài từ nhớ (tính bằng bit)
§ Số lượng từ nhớ

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 5


Các đặc trưng của bộ nhớ (tiếp)
§ Đơn vị truyền
§ Từ nhớ
§ Khối nhớ
§ Phương pháp truy nhập
§ Truy nhập tuần tự (băng từ)
§ Truy nhập trực tiếp (các loại đĩa)
§ Truy nhập ngẫu nhiên (bộ nhớ bán dẫn)
§ Truy nhập liên kết (cache)

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 6


Các đặc trưng của bộ nhớ (tiếp)
§ Hiệu năng (performance)
§ Thời gian truy nhập
§ Chu kỳ nhớ
§ Tốc độ truyền
§ Kiểu vật lý
§ Bộ nhớ bán dẫn
§ Bộ nhớ từ
§ Bộ nhớ quang

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 7


Các đặc trưng của bộ nhớ (tiếp)
§ Các đặc tính vật lý
§ Khả biến / Không khả biến (volatile / nonvolatile)
§ Xoá được / không xoá được
§ Tổ chức

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 8


2. Phân cấp bộ nhớ

Bộ vi xử lý
CPU

Tập Thiết bị
Bộ nhớ
thanh Cache lưu trữ
chính
ghi (HDD, SSD)
Bộ nhớ
mạng

Từ trái sang phải:


n dung lượng tăng dần
n tốc độ giảm dần
n giá thành cùng dung lượng giảm dần

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 9


Công nghệ bộ nhớ

Công nghệ Thời gian Giá thành/GiB


bộ nhớ truy nhập (2012)
SRAM 0,5 – 2,5 ns $500 – $1000
DRAM 50 – 70 ns $10 – $20
Flash memory 5000 – 50 000 ns $0,75 – $1
HDD 5 – 20 ms $0,05 – $0,1

n Bộ nhớ lý tưởng
n Thời gian truy nhập như SRAM
n Dung lượng và giá thành như ổ đĩa cứng

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 10


Phân cấp bộ nhớ cho thiết bị di động
2.1 Introduction ■ 7

L1 L2
C C Memory
CPU a a bus
Memory Storage
Registers c c
h h
e e
Flash
memory
Register Level 1 Level 2 Memory
reference
reference Cache Cache reference
reference reference
Size: 1000 bytes 64 KB 256 KB 1– 2 GB 4– 64 GB
Speed: 300 ps 1 ns 5-10 ns 50 –100 ns 25 – 50 us

(A) Memory hierarchy for a personal mobile device

L1 L2 L3
C C C Memory
CPU a a a bus
Memory Storage
Registers c c c
h h h
e e e
Flash
NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 11
memory
Register Level 1 Level 2 Level 3 Memory
h h
e e
Flash

Phân cấp bộ nhớ cho máy tính PC


Register
reference
Level 1
Cache
Level 2
Cache
Memory
reference
memory
reference
reference reference
Size: 1000 bytes 64 KB 256 KB 1– 2 GB 4– 64 GB
Speed: 300 ps 1 ns 5-10 ns 50 –100 ns 25 – 50 us

(A) Memory hierarchy for a personal mobile device

L1 L2 L3
C C C Memory
CPU a a a bus
Memory Storage
Registers c c c
h h h
e e e
Flash
memory
Register Level 1 Level 2 Level 3 Memory
reference
reference Cache Cache Cache reference
reference reference reference

Laptop Size: 1000 bytes 64 KB 256 KB 4-8 MB 4 –16 GB 256 GB-1 TB


Speed: 300 ps 1 ns 3–10 ns 10 – 20 ns 50 –100 ns 50-100 uS
Desktop Size: 2000 bytes 64 KB 256 KB 8-32 MB 8–64 GB 256 GB-2 TB
Speed: 300 ps 1 ns 3–10 ns 10 – 20 ns 50 –100 ns 50-100 uS

(B) Memory hierarchy for a laptop or a desktop

L1 L2 L3
C C C Memory Disk storage
CPU a a a bus I/O bus
Memory
Registers c c c
h h h
e e e Flash storage
NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 12
Register Level 1 Level 2 Level 3 Memory
Register Level 1 Level 2 reference
reference Cache Cache Cache reference
reference
Phân cấp bộ nhớ cho máy chủ
reference reference

Laptop Size: 1000 bytes 64 KB 256 KB 4-8 MB 4 –16 GB 256 GB-1 TB


Speed: 300 ps 1 ns 3–10 ns 10 – 20 ns 50 –100 ns 50-100 uS
Desktop Size: 2000 bytes 64 KB 256 KB 8-32 MB 8–64 GB 256 GB-2 TB
Speed: 300 ps 1 ns 3–10 ns 10 – 20 ns 50 –100 ns 50-100 uS

(B) Memory hierarchy for a laptop or a desktop

L1 L2 L3
C C C Memory Disk storage
CPU a a a bus I/O bus
Memory
Registers c c c
h h h
e e e Flash storage

Register Level 1 Level 2 Level 3 Memory


reference Cache Cache Cache reference Disk Flash
reference reference reference memory memory
reference reference
Size: 4000 bytes 64 KB 256 KB 16-64 MB 32–256 GB
16–64 TB 1-16 TB
Speed: 200 ps 1 ns 3–10 ns 10 – 20 ns 50 –100 ns
5 –10 ms 100-200 us

(C) Memory hierarchy for server

Figure 2.1 The levels in a typical memory hierarchy in a personal mobile device (PMD), such as a cell phone or
tablet (A), in a laptop or desktop computer (B), and in a server (C). As we move farther away from the processor, the
memory in the level below becomes slower and larger. Note that the time units change by a factor of 109 from pico-
seconds to milliseconds in the case of magnetic disks and that the size units change by a factor of 1010 from thou-
sands of bytes to tens of terabytes. If we were to add warehouse-sized computers, as opposed to just servers, the
capacity scale would increase by three to six orders of magnitude. Solid-state drives (SSDs) composed of Flash are
used exclusively in PMDs, and heavily in both laptops and
NKK-CA2021.1.0 desktops.
IT3283-Kiến Intính
trúc máy many desktops, the primary storage system is13
SSD, and expansion disks are primarily hard disk drives (HDDs). Likewise, many servers mix SSDs and HDDs.
Nguyên lý cục bộ hoá tham chiếu bộ nhớ
§ Trong một khoảng thời gian đủ nhỏ CPU
thường chỉ tham chiếu các thông tin trong
một khối nhớ cục bộ
§ Ví dụ:
§ Cấu trúc chương trình tuần tự
§ Vòng lặp có thân nhỏ
§ Cấu trúc dữ liệu mảng

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 14


6.2. Bộ nhớ chính
1. Bộ nhớ bán dẫn
Kiểu bộ nhớ Tiêu Khả năng xoá Cơ chế ghi Tính
chuẩn khả biến
Read Only Memory
Mặt nạ
(ROM) Bộ nhớ Không xoá
Programmable ROM chỉ đọc được
(PROM)
Erasable PROM bằng tia cực tím, Không
(EPROM) Bộ nhớ cả chip khả biến
hầu như Bằng điện
Electrically Erasable bằng điện,
chỉ đọc
PROM (EEPROM) mức từng byte
Flash memory bằng điện,
Bộ nhớ từng khối
Random Access đọc-ghi bằng điện, Khả biến
Bằng điện
Memory (RAM) mức từng byte
NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 15
ROM (Read Only Memory)
§ Bộ nhớ không khả biến
§ Lưu trữ các thông tin sau:
§ Thư viện các chương trình con
§ Các chương trình điều khiển hệ thống (BIOS)
§ Các bảng chức năng
§ Vi chương trình

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 16


Các kiểu ROM
§ ROM mặt nạ:
§ thông tin được ghi khi sản xuất
§ PROM (Programmable ROM)
§ Cần thiết bị chuyên dụng để ghi
§ Chỉ ghi được một lần
§ EPROM (Erasable PROM)
§ Cần thiết bị chuyên dụng để ghi
§ Xóa được bằng tia tử ngoại
§ Ghi lại được nhiều lần
§ EEPROM (Electrically Erasable PROM)
§ Có thể ghi theo từng byte
§ Xóa bằng điện
NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 17
Bộ nhớ Flash
§ Ghi theo khối
§ Xóa bằng điện
§ Dung lượng lớn

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 18


RAM (Random Access Memory)
§ Bộ nhớ đọc-ghi (Read/Write Memory)
§ Khả biến
§ Lưu trữ thông tin tạm thời
§ Có hai loại: SRAM và DRAM
(Static and Dynamic)

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 19


SRAM (Static) – RAM tĩnh
§ Các bit được lưu trữ bằng các Flip-Flop
à thông tin ổn định
§ Cấu trúc phức tạp
§ Dung lượng chip nhỏ
§ Tốc độ nhanh
§ Đắt tiền
§ Dùng làm bộ nhớ cache

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 20


DRAM (Dynamic) – RAM động
§ Các bit được lưu trữ trên tụ điện
à cần phải có mạch làm tươi
§ Cấu trúc đơn giản
§ Dung lượng lớn
§ Tốc độ chậm hơn
§ Rẻ tiền hơn
§ Dùng làm bộ nhớ chính

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 21


Một số DRAM tiên tiến thông dụng
§ Cải tiến để tăng tốc độ
§ Synchronous DRAM (SDRAM): làm việc được
đồng bộ bởi xung clock
§ DDR-SDRAM (Double Data Rate SDRAM)
§ DDR3, DDR4

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 22


2. Các đặc trưng cơ bản của bộ nhớ chính
§ Chứa các chương trình đang thực hiện và các dữ
liệu đang được sử dụng
§ Tồn tại trên mọi hệ thống máy tính
§ Bao gồm các ngăn nhớ được đánh địa chỉ trực tiếp
bởi CPU
§ Dung lượng của bộ nhớ chính nhỏ hơn không gian
địa chỉ bộ nhớ mà CPU quản lý.
§ Việc quản lý logic bộ nhớ chính tuỳ thuộc vào hệ
điều hành

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 23


Tổ chức bộ nhớ đan xen (interleaved memory)

§ Độ rộng của bus dữ liệu để trao đổi với bộ nhớ: m


= 8, 16, 32, 64,128 ... bit
§ Các ngăn nhớ được tổ chức theo byte
à tổ chức bộ nhớ vật lý khác nhau

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 24


m=8bit à một băng nhớ tuyến tính

0
1
2
3
4
5
6

...

AN-1 - A0 i

...

D7 - D0

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 25


m = 16bit à hai băng nhớ đan xen

Băng 1 Băng 0
1 0
3 2
5 4
7 6
9 8

... ...

AN-1 - A1 2i+1 2i

... ...

BE1 BE0
D15 - D8 D7 - D0

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 26


m = 32bit à bốn băng nhớ đan xen

băng 3 băng 2 băng 1 băng 0


3 2 1 0
7 6 5 4
11 10 9 8
15 14 13 12
19 18 17 16

... ... ... ...

AN-1 - A2 4i+3 4i+2 4i+1 4i

... ... ... ...

BE3 BE2 BE1 BE0


D31-D24 D23-D16 D15 - D8 D7 - D0

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 27


m = 64bit à tám băng nhớ đan xen

băng 7 băng 1 băng 0


7 1 0
15 9 8
23 17 16

...
... ... ...

AN-1 - A3 8i+7 8i+1 8i

... ... ...

BE7 BE1 BE0


D63-D56 D15 - D8 D7 - D0

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 28


6.3. Bộ nhớ đệm (cache memory)
1. Nguyên tắc chung của cache
§ Cache có tốc độ nhanh hơn bộ nhớ chính
§ Cache được đặt giữa CPU và bộ nhớ chính nhằm tăng
tốc độ CPU truy cập bộ nhớ
§ Cache có thể được đặt trên chip CPU

Bộ nhớ
CPU cache
chính

truyền theo từ nhớ truyền theo block nhớ

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 29


Ví dụ về thao tác của cache
§ CPU yêu cầu nội dung của ngăn nhớ
§ CPU kiểm tra trên cache với dữ liệu này
§ Nếu có, CPU nhận dữ liệu từ cache (nhanh)
§ Nếu không có, đọc Block nhớ chứa dữ liệu từ bộ
nhớ chính vào cache
§ Tiếp đó chuyển dữ liệu từ cache vào CPU

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 30


Cấu trúc chung của cache / bộ nhớ chính
Bộ nhớ chính
Tag Cache B0
L0 B1
L1 B2
L2 B3
L3
CPU ...
...
Bj
Li

...
...

Lm-1

BP-1

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 31


Cấu trúc chung của cache / bộ nhớ chính (tiếp)

§ Bộ nhớ chính có 2N byte nhớ


§ Bộ nhớ chính và cache được chia thành các khối
có kích thước bằng nhau
§ Bộ nhớ chính: B0, B1, B2, ... , Bp-1 (p Blocks)
§ Bộ nhớ cache: L0, L1, L2, ... , Lm-1 (m Lines)
§ Kích thước của Block (Line) = 8,16,32,64,128 byte
§ Mỗi Line trong cache có một thẻ nhớ (Tag) được
gắn vào

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 32


Cấu trúc chung của cache / bộ nhớ chính (tiếp)
§ Một số Block của bộ nhớ chính được nạp vào các
Line của cache
§ Nội dung Tag (thẻ nhớ) cho biết Block nào của bộ
nhớ chính hiện đang được chứa ở Line đó
§ Nội dung Tag được cập nhật mỗi khi Block từ bộ
nhớ chính nạp vào Line đó
§ Khi CPU truy nhập (đọc/ghi) một từ nhớ, có hai
khả năng xảy ra:
§ Từ nhớ đó có trong cache (cache hit)
§ Từ nhớ đó không có trong cache (cache miss).

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 33


2. Các phương pháp ánh xạ
(Chính là các phương pháp tổ chức bộ nhớ cache)
§ Ánh xạ trực tiếp
(Direct mapping)
§ Ánh xạ liên kết toàn phần
(Fully associative mapping)
§ Ánh xạ liên kết tập hợp
(Set associative mapping)

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 34


Ánh xạ trực tiếp
§ Mỗi Block của bộ nhớ chính chỉ có thể được nạp
vào một Line của cache:
§ B0 à L 0
§ B1 à L 1
§ ....
§ Bm-1 à Lm-1
§ Bm à L0
§ Bm+1 à L1
§ ....
§ Tổng quát
§ Bj chỉ có thể nạp vào L j mod m
§ m là số Line của cache.

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 35


Ánh xạ trực tiếp (tiếp)

Bộ nhớ
Tag Cache chính
Nbit địa chỉ bộ nhớ
L0 B0
Tag Line Word

T bit L bit W bit L1 B1

... ...

X Li Bj
X
So sánh
... ...

cache hit Lm-1 Bm-1

cache miss

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 36


Ánh xạ trực tiếp (tiếp)
§ Địa chỉ N bit của bộ nhớ chính chia thành ba
trường:
§ Trường Word gồm W bit xác định một từ nhớ trong
Block hay Line:
2W = kích thước của Block hay Line
§ Trường Line gồm L bit xác định một trong số các Line
trong cache:
2L = số Line trong cache = m
§ Trường Tag gồm T bit:
T = N - (W+L)

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 37


Ánh xạ trực tiếp (tiếp)
§ Mỗi thẻ nhớ (Tag) của một Line chứa được T bit
§ Khi Block từ bộ nhớ chính được nạp vào Line của cache thì
Tag ở đó được cập nhật giá trị là T bit địa chỉ bên trái của
Block đó
§ Khi CPU muốn truy nhập một từ nhớ thì nó phát ra một địa
chỉ N bit cụ thể
§ Nhờ vào giá trị L bit của trường Line sẽ tìm ra Line tương ứng
§ Đọc nội dung Tag ở Line đó (T bit), rồi so sánh với T bit bên trái của
địa chỉ vừa phát ra
§ Giống nhau: cache hit
§ Khác nhau: cache miss
§ Ưu điểm: Bộ so sánh đơn giản
§ Nhược điểm: Xác suất cache hit thấp

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 38


Ánh xạ liên kết toàn phần
§ Mỗi Block có thể nạp vào bất kỳ Line nào của
cache
§ Địa chỉ của bộ nhớ chính chia thành hai trường:
§ Trường Word
§ Trường Tag dùng để xác định Block của bộ nhớ chính
§ Tag xác định Block đang nằm ở Line đó

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 39


Ánh xạ liên kết toàn phần (tiếp)

Bộ nhớ
Tag Cache chính
N bit địa chỉ bộ nhớ
L0 B0
Tag Word

T bit W bit L1 B1

... ...
X
Li Bj
X

So sánh ... ...

cache hit Lm-1 Bm-1

cache miss

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 40


Ánh xạ liên kết toàn phần (tiếp)
§ Mỗi thẻ nhớ (Tag) của một Line chứa được T bit
§ Khi Block từ bộ nhớ chính được nạp vào Line của cache thì
Tag ở đó được cập nhật giá trị là T bit địa chỉ bên trái của
Block đó
§ Khi CPU muốn truy nhập một từ nhớ thì nó phát ra một địa
chỉ N bit cụ thể
§ So sánh T bit bên trái của địa chỉ vừa phát ra với lần lượt nội dung
của các Tag trong cache
§ Nếu gặp giá trị bằng nhau: cache hit xảy ra ở Line đó
§ Nếu không có giá trị nào bằng: cache miss
§ Ưu điểm: Xác suất cache hit cao
§ Nhược điểm:
§ So sánh đồng thời với tất cả các Tag à mất nhiều thời gian
§ Bộ so sánh phức tạp

Ít sử dụng
§ NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 41
Ánh xạ liên kết tập hợp
§ Dung hòa cho hai phương pháp trên
§ Cache đươc chia thành các Tập (Set)
§ Mỗi một Set chứa một số Line
§ Ví dụ:
§ 4 Line/Set à 4-way associative mapping
§ Ánh xạ theo nguyên tắc sau:
§ B 0 à S0
§ B 1 à S1
§ B 2 à S2
§ .......

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 42


Ánh xạ liên kết tập hợp (tiếp)

Bộ nhớ
Tag Cache chính
Nbit địa chỉ bộ nhớ L0 B0
L1 B1
Tag Set Word S0
L2 B2
L3 B3
T bit S bit W bit
L4 B4
L5 B5
S1
L6
L7
...
...

So sánh
X Sk X

...
cache hit ...

Sv-1

cache miss

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 43


Ánh xạ liên kết tập hợp (tiếp)
§ Kích thước Block = 2W Word
§ Trường Set có S bit dùng để xác định một trong số các Set
trong cache. 2S = Số Set trong cache
§ Trường Tag có T bit: T = N - (W+S)
§ Khi CPU muốn truy nhập một từ nhớ thì nó phát ra một
địa chỉ N bit cụ thể
§ Nhờ vào giá trị S bit của trường Set sẽ tìm ra Set tương ứng
§ So sánh T bit bên trái của địa chỉ vừa phát ra với lần lượt nội dung
của các Tag trong Set đó
§ Nếu gặp giá trị bằng nhau: cache hit xảy ra ở Line tương ứng
§ Nếu không có giá trị nào bằng: cache miss
§ Tổng quát cho cả hai phương pháp trên
§ Thông dụng với: 2,4,8,16Lines/Set

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 44


Ví dụ về ánh xạ địa chỉ
§ Giả sử máy tính đánh địa chỉ cho từng byte
§ Không gian địa chỉ bộ nhớ chính = 4GiB
§ Dung lượng bộ nhớ cache là 256KiB
§ Kích thước Line (Block) = 32byte.
§ Xác định số bit của các trường địa chỉ cho ba
trường hợp tổ chức:
§ Ánh xạ trực tiếp
§ Ánh xạ liên kết toàn phần
§ Ánh xạ liên kết tập hợp 4 đường

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 45


Với ánh xạ trực tiếp
§ Bộ nhớ chính = 4GiB = 232 byte à Số bit địa chỉ của bộ nhớ
chính là: N = 32 bit
§ Cache = 256 KiB = 218 byte
§ Kích thước Line = 32 byte = 25 byte à số bit địa chỉ của
trường Word là: W = 5 bit
§ Số Line trong cache = 218/ 25 = 213 Line à số bit địa chỉ
trường Line là: L = 13 bit
§ Số bit địa chỉ của trường Tag là:
T = 32 - (13 + 5) = 14 bit

Tag Line Word

14 bit 13 bit 5 bit

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 46


Với ánh xạ liên kết toàn phần
§ Bộ nhớ chính = 4GiB = 232 byte à số bit địa chỉ của bộ nhớ
chính là: N = 32 bit
§ Kích thước Line = 32 byte = 25 byte à số bit địa chỉ của
trường Word là: W = 5 bit
§ Số bit địa chỉ của trường Tag là:
T = 32 - 5 = 27 bit

Tag Word

27 bit 5 bit

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 47


Với ánh xạ liên kết tập hợp 4 đường
§ Bộ nhớ chính = 4GiB = 232 byte à số bit địa chỉ của bộ nhớ
chính là: N = 32 bit
§ Kích thước Line = 32 byte = 25 byte à số bit địa chỉ của
trường Word là: W = 5 bit
§ Số Line trong cache = 218/ 25 = 213 Line
§ Một Set có 4 Line = 22 Line
à số Set trong cache = 213/ 22 = 211 Set
à số bit địa chỉ của trường Set là: S = 11 bit
§ Số bit địa chỉ của trường Tag là:
T = 32 - (11 + 5) = 16 bit

Tag Set Word

16 bit 11 bit 5 bit


NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 48
3. Thay thế block trong cache
Với ánh xạ trực tiếp:
§ Không phải lựa chọn
§ Mỗi Block chỉ ánh xạ vào một Line xác định
§ Thay thế Block ở Line đó

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 49


Thay thế block trong cache (tiếp)
Với ánh xạ liên kết: cần có thuật giải thay thế:
§ Random: Thay thế ngẫu nhiên
§ FIFO (First In First Out): Thay thế Block nào nằm
lâu nhất ở trong Set đó
§ LFU (Least Frequently Used): Thay thế Block nào
trong Set có số lần truy nhập ít nhất trong cùng
một khoảng thời gian
§ LRU (Least Recently Used): Thay thế Block ở trong
Set tương ứng có thời gian lâu nhất không được
tham chiếu tới
§ Tối ưu nhất: LRU
NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 50
4. Phương pháp ghi dữ liệu khi cache hit
§ Ghi xuyên qua (Write-through):
§ ghi cả cache và cả bộ nhớ chính
§ tốc độ chậm
§ Ghi trả sau (Write-back):
§ chỉ ghi ra cache
§ tốc độ nhanh
§ khi Block trong cache bị thay thế cần phải ghi trả cả
Block về bộ nhớ chính

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 51


6.4. Bộ nhớ ngoài
§ Tồn tại dưới dạng các thiết bị lưu trữ
§ Các kiểu bộ nhớ ngoài
§ Băng từ: ít sử dụng
§ Đĩa từ: Ổ đĩa cứng HDD (Hard Disk Drive)
§ Đĩa quang: CD, DVD
§ Bộ nhớ Flash:
§ Ổ nhớ thể rắn SSD (Solid State Drive)
§ USB flash
§ Thẻ nhớ

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 52


Ổ đĩa cứng (HDD –Hard Disk Drive)
6.1 / MAGNETIC DISK

Read–write head (1 per surface) Direction of


arm motion

Surface 9
Platter
Surface 8
Surface 7

188 CHAPTER 6 / EXTERNAL MEMORY Surface 6


Sectors Tracks
Surface 5
Intersector gap

• • • Intertrack gap Surface 4


S6
Surface 3
• • •
S6
SN

Surface 2
SN
S5

Surface 1
S5

S1

Surface 0
S1
S4
S4

S2
S3

S2 Spindle Boom
S3

Figure 6.5 Components of a Disk Drive


Figure 6.2 Disk Data Layout

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 53


Figure 6.2 depicts this data layout. Adjacent tracks are separated by gaps. This
prevents, or at least minimizes, errors due to misalignment of the head or simply
HDD
§ Dung lượng lớn
§ Tốc độ đọc/ghi chậm
§ Tốn năng lượng
§ Dễ bị lỗi cơ học
§ Rẻ tiền

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 54


Ổ SSD (Solid State Drive)
§ Bộ nhớ bán dẫn flash
§ Không khả biến
§ Tốc độ nhanh
§ Tiêu thụ năng lượng ít
§ Gồm nhiều chip nhớ flash và cho phép truy cập
song song
§ Ít bị lỗi
§ Đắt tiền

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 55


Đĩa quang
§ CD (Compact Disc)
§ Dung lượng thông dụng 650MB
§ DVD
§ Digital Video Disc hoặc Digital Versatile Disk
§ Ghi một hoặc hai mặt
§ Một hoặc hai lớp trên một mặt
§ Thông dụng: 4,7GB/lớp

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 56


Hệ thống lưu trữ dung lượng lớn: RAID
§ Redundant Array of Inexpensive Disks
§ (Redundant Array of Independent Disks)
§ Tập các ổ đĩa cứng vật lý được OS coi như một ổ
logic duy nhất à dung lượng lớn
§ Dữ liệu được lưu trữ phân tán trên các ổ đĩa vật lý
à truy cập song song (nhanh)
§ Lưu trữ thêm thông tin dư thừa, cho phép khôi
phục lại thông tin trong trường hợp đĩa bị hỏng à
an toàn thông tin
§ 7 loại phổ biến (RAID 0 – 6)

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 57


RAID 0, 1, 2
198 CHAPTER 6 / EXTERNAL MEMORY

strip 0 strip 1 strip 2 strip 3


strip 4 strip 5 strip 6 strip 7
strip 8 strip 9 strip 10 strip 11
strip 12 strip 13 strip 14 strip 15

(a) RAID 0 (Nonredundant)

strip 0 strip 1 strip 2 strip 3 strip 0 strip 1 strip 2 strip 3


strip 4 strip 5 strip 6 strip 7 strip 4 strip 5 strip 6 strip 7
strip 8 strip 9 strip 10 strip 11 strip 8 strip 9 strip 10 strip 11
strip 12 strip 13 strip 14 strip 15 strip 12 strip 13 strip 14 strip 15

(b) RAID 1 (Mirrored)

b0 b1 b2 b3 f0(b) f1(b) f2(b)

(c) RAID 2 (Redundancy through Hamming code)

Figure 6.8 RAID Levels


NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 58
RAID 3 & 4
6.2 / RAID 199

b0 b1 b2 b3 P(b)

(d) RAID 3 (Bit-interleaved parity)

block 0 block 1 block 2 block 3 P(0-3)


block 4 block 5 block 6 block 7 P(4-7)
block 8 block 9 block 10 block 11 P(8-11)
block 12 block 13 block 14 block 15 P(12-15)

(e) RAID 4 (Block-level parity)

block 0 block 1 block 2 block 3 P(0-3)


block 4 block 5 block 6 P(4-7) block 7
NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 59
block 8 block 9 P(8-11) block 10 block 11
block 4 block 5 block 6 block 7 P(4-7)

RAID 5 & 6
block 8 block 9 block 10 block 11 P(8-11)
block 12 block 13 block 14 block 15 P(12-15)

(e) RAID 4 (Block-level parity)

block 0 block 1 block 2 block 3 P(0-3)


block 4 block 5 block 6 P(4-7) block 7
block 8 block 9 P(8-11) block 10 block 11
block 12 P(12-15) block 13 block 14 block 15
P(16-19) block 16 block 17 block 18 block 19

(f) RAID 5 (Block-level distributed parity)

block 0 block 1 block 2 block 3 P(0-3) Q(0-3)


block 4 block 5 block 6 P(4-7) Q(4-7) block 7
block 8 block 9 P(8-11) Q(8-11) block 10 block 11
block 12 P(12-15) Q(12-15) block 13 block 14 block 15

(g) RAID 6 (Dual redundancy)

Figure 6.8 RAID Levels (continued)

second strips on each disk; and so on. TheIT3283-Kiến


NKK-CA2021.1.0 advantage of this
trúc máy tính layout is that if a single 60
I/O request consists of multiple logically contiguous strips, then up to n strips for
Ánh xạ dữ liệu của RAID 0
200 CHAPTER 6 / EXTERNAL MEMORY

Physical Physical Physical Physical


Logical disk disk 0 disk 1 disk 2 disk 3

strip 0 strip 0 strip 1 strip 2 strip 3


strip 1 strip 4 strip 5 strip 6 strip 7
strip 2 strip 8 strip 9 strip 10 strip 11
strip 3 strip 12 strip 13 strip 14 strip 15
strip 4
strip 5
strip 6
strip 7 Array
strip 8 management
software
strip 9
strip 10
strip 11
strip 12
strip 13
strip 14
strip 15

Figure 6.9 Data Mapping for a RAID Level 0 Array

RAID 0 FOR HIGH DATA TRANSFER CAPACITY The performance of any of the
RAID levels depends critically on the request patterns of the host system and on
NKK-CA2021.1.0 the layout of the data. TheseIT3283-Kiến
issues cantrúc
bemáy tínhclearly addressed in RAID 0, where
most 61
the impact of redundancy does not interfere with the analysis. First, let us consider
Kiến trúc máy tính

Hết chương 6

NKK-CA2021.1.0 IT3283-Kiến trúc máy tính 62

You might also like