Bộ nhớ chính
? Các đặc trng cơ bản
„ 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
„ Đợc đánh địa chỉ trực tiếp bởi CPU: có nhiều
ngăn nhớ, mỗi ngăn nhớ đợc gán một địa chỉ xác
định
„ Việc quản lý lôgic BNC tùy thuộc vào từng HĐH
„ Về nguyên tắc, ngời lập trình có thể can thiệp
trực tiếp vào toàn bộ BNC của máy tính44
Bộ nhớ chính
? Tổ chức bộ nhớ đan xen
„ Độ rộng của bus dữ liệu để trao đổi với bộ nhớ:
m = 8, 16, 32, 64, . bit
„ Các ngăn nhớ tổ chức theo byte
106 trang |
Chia sẻ: trungkhoi17 | Lượt xem: 516 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Kiến trúc máy tính - Chương 3: Hệ thống nhớ máy tính - Vũ Thị Thu Hiền, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
u của chỳng sử dụng. Cỏc chip nhớ cú
lỳc được gọi là “lưu trữ khụng ổn định” (volatile
storage) bởi vỡ khi tắt mỏy hoặc cú sự cố về
nguồn điện, lưu trữ trong RAM sẽ bị mất. Vỡ bản
chất bất ổn định như vậy cho nờn nhiều người
dựng cú thúi quen ghi lại thường xuyờn (một số
chương trỡnh ứng dụng cú thể ghi một cỏch tự
động theo thời gian đó định).
6
2. Các đặc trng của hệ thống nhớ
Vị trí (location)
„ Bên trong Bộ xử lý: Tập các thanh ghi, cache
„ Bộ nhớ trong: Bộ nhớ chính
Bộ nhớ cache
„ Bộ nhớ ngoài: Các thiết bị nhớ, Đĩa từ, băng từ
Đĩa quang
Dung lợng (capacity)
„ Độ dài từ nhớ (đơn vị là bit)- Kích thớc trên 1 đơn vị lu
trữ.
„ Số lợng từ nhớ- Dung lợng bộ nhớ
7
Các đặc trng của hệ thống nhớ
Đơn vị truyền (unit of transfer)
„ Truyền theo từ nhớ- Truyền tuần tự từng Word
„ Truyền theo khối nhớ- Truyền 1 khối gồm n Word
Hiệu năng
„ Thời gian truy cập.
„ Chu kỳ truy xuất bộ nhớ.
„ Tốc độ truyền.
8
Các đặc trng của hệ thống nhớ
Phơng pháp truy nhập (access method)
„ Truy nhập tuần tự (băng từ)- Để đến đợc điểm n đầu từ
phải duyệt qua n-1 vị trí trớc.
„ Truy nhập trực tiếp (đĩa từ, đĩa quang)- Đầu từ di chuyển
trực tiếp đến vị trí cần đọc.
„ Truy nhập ngẫu nhiên (bộ nhớ trong)- ô nhớ cần đọc sẽ
đợc giải mã để lấy thông tin ngay lập tức.
„ Truy nhập liên kết (bộ nhớ cache)- Truy cập thông qua
bản sao của ô nhớ cần đọc.
9
Các đặc trng của hệ thống nhớ
Kiểu vật lý của bộ nhớ (physical type)
„ Bộ nhớ bán dẫn- Lu trữ bằng điện
„ Bộ nhớ từ- Lu trữ dùng từ tính.
„ Bộ nhớ quang: Lu trữ sử dụng công nghệ Laze
Các đặc trng vật lý (physical characteristics)
„ Bộ nhớ khả biến / không khả biến
„ Bộ nhớ xóa đợc / không xóa đợc
10
3. Mô hình phân cấp hệ thống nhớ
Việc trao đổi dữ liệu giữa BVXL và BNC là
một thao tỏc quan trọng, chiếm đa số trong cỏc
lệnh xử lý dữ liệu nờn nú quyết định hiệu suất
của hệ thống VXL núi chung và mỏy tớnh núi
riờng. Bộ nhớ chớnh và bộ nhớ ngoài thường cú
tốc độ trao đổi dữ liệu chậm (chờnh lệch) hơn so
với tốc độ làm việc của CPU (kể cả việc vận
chuyển dữ liệu trong BVXL). Để nõng cao tốc độ
xử lý dữ liệu chung của toàn hệ thống, người ta
tỡm cỏch nõng cao tốc độ trao đổi dữ liệu (kể cả
lệnh) giữa BVXL và bộ nhớ. Dựa trờn nguyờn lý
cục bộ về khụng gian và thời gian mà người ta
xõy dựng hệ thống nhớ 5 cấp như sau:
11
3. Mô hình phân cấp hệ thống nhớ
CPU Registers
100s Bytes
1s ns
Cache
K Bytes
4 ns
1-0.1 cents/bit
Main Memory
M Bytes
100ns- 300ns
$.0001-.00001 cents /bit
Disk
G Bytes, 10 ms
(10,000,000 ns)
10 - 10 cents/bit
Capacity
Access Time
Cost
Tape
infinite
sec-min
10 -8
Upper Level
-5 -6
Registers
Cache
Memory
Disk
Tape
Instr. Operands
Blocks
Pages
Files
Staging
Xfer Unit
prog./compiler
1-8 bytes
cache cntl
8-128 bytes
OS
512-4K bytes
user/operator
Mbytes
Lower Level
faster
Larger
12
3. Mô hình phân cấp hệ thống nhớ
Cấp 0: Tập cỏc thanh ghi nằm trong bộ
vi xử lý. Thanh ghi là bộ nhớ kiểu SRAM
nờn tỏc động nhanh và thụng tin ổn định.
Đõy là thành phần nhớ cú tốc độ trao đổi
dữ liệu nhanh nhất trong hệ thống vỡ nú
gần ALU và CU. Tuy nhiờn nú cú dung
lượng nhỏ.
13
3. Mô hình phân cấp hệ thống nhớ
Cấp 1: Primary cache (cache sơ cấp): Là
bộ nhớ cú tốc độ trao đổi dữ liệu rất nhanh
(nhỏ hơn thanh ghi), cú dung lượng nhỏ và
được đặt trong bộ vi xử lý, nhưng cũng cú
thể nằm ngoài bộ vi xử lý. Trong cỏc bộ vi
xử lý tiờn tiến, bộ nhớ cache thường được
tỏch (chia) làm 2 với mục đớch trỏnh xung
đột trong xử lý song song (đại diện là
pipeline) là Icache: dành cho lệnh và
Dcache: dành cho dữ liệu.
14
3. Mô hình phân cấp hệ thống nhớ
Cấp 2: Secondary cache (cache thứ
cấp): Cũng giống như Primary cache,
nhưng loại này nằm ngoài bộ vi xử lý. Nú
chỉ cú khi cú Primary cache (ngược lại, nú
chớnh là Primary cache). Dung lượng của
Secondary cache thường lớn hơn Primary
cache và nhỏ hơn bộ nhớ.
15
3. Mô hình phân cấp hệ thống nhớ
Cấp 3: Main Memory (Bộ nhớ chớnh):
Chứa chương trỡnh và dữ liệu đang hoạt
động. BN này được BVXL đỏnh địa chỉ trực
tiếp và quản lý thụng qua địa chỉ đú. Một
phần của chương trỡnh đang được thi hành
cú thể nằm trong cache (lệnh và dữ liệu)
nhằm tăng tốc độ hoạt động của hệ thống.
Dung lượng của BN chớnh thường lớn hơn
rất nhiều lần dung lượng BN cache. Như
đó biết, trong cỏc hệ thống mỏy tớnh hiện
đại ngày nay thỡ BNC thường là DRAM.
16
3. Mô hình phân cấp hệ thống nhớ
Cấp 4: Secondary memory (Bộ nhớ thứ
cấp – bộ nhớ ngoài): Bộ nhớ này cú dung
lượng rất lớn nhưng tốc độ trao đổi dữ liệu
chậm. Bộ nhớ này để lưu trữ chương trỡnh
và dữ liệu một cỏch lõu dài, cho nhiều
người sử dụng (ghi/đọc, mất nguồn điện
vẫn cũn thụng tin). Đại diện cho cỏc bộ
nhớ loại này đú chớnh là cỏc ổ đĩa cứng,
mềm CD ROM, CD – WOM, CD WR, băng
từ,
17
3. Mô hình phân cấp hệ thống nhớ
Từ trái sang phải:
„ Dung lợng tăng dần
„ Tốc độ trao đổi dữ liệu giảm dần
„ Giá thành /1 bit giảm dần
„ Tần suất BXL truy nhập giảm dần
„ Mức trái chứa một phần dữ liệu của mức phải
Tập
thanh
ghi
Cache
L1
Cache
L2
Bộ
nhớ
chính
Bộ
nhớ
ngoài
Bộ xử lý
18
4. Bộ nhớ bán dẫn
Phân loại
Tổ chức chip nhớ bán dẫn
Thiết kế các modul nhớ bán dẫn
Bài tập
19
Bộ nhớ bán dẫn
Kiểu bộ nhớ Tiêu chuẩn Khả năng xóa Cơ chế ghi Tính
thay đổi
Read Only Memory
(ROM)
Bộ nhớ
chỉ đọc
Không
xóa đợc
Mặt nạ
Không
khả biến
Programmable ROM
(PROM)
Bằng điện
Erasable PROM
(EPROM)
Bộ nhớ
hầu nh
chỉ đọc
Bằng tia cực tím,
cả chip
Electrically Erasable PROM
(EEPROM)
Bằng điện,
mức từng byte
Flash memory
Bộ nhớ
đọc - ghi
Bằng điện,
từng khối
Random Access Memory
(RAM)
Bằng điện,
từng byte
Khả biến
20
ROM (Read Only Memory)
Là loại bộ nhớ không khả biến
Lu trữ các thông tin:
„ Th viện các chơng trình con
„ Các chơng trình hệ thống (BIOS)
„ Các bảng chức năng
„ Vi chơng trình
21
Các kiểu ROM
ROM mặt nạ (ROM cố định):
„ Thông tin đợc ghi ngay khi sản xuất
„ Rất đắt
PROM (Programmble ROM):
„ Khi sản xuất cha ghi dữ liệu
„ Cần thiết bị chuyên dùng để ghi bằng chơng trình, chỉ
ghi đợc một lần
EPROM (Erasable PROM):
„ Khi sản xuất cha ghi dữ liệu
„ Cần thiết bị chuyên dụng để ghi bằng chơng trình, ghi đ-
ợc nhiều lần
„ Trớc khi ghi lại, phải xóa bằng tia cực tím
22
Các kiểu ROM
EEPROM (Electrically Erasable PROM):
„ Có thể ghi theo từng byte
„ Xóa bằng điện
„ Ghi lâu hơn đọc
Flash memory (bộ nhớ cực nhanh)
„ Ghi theo khối
„ Xóa bằng điện
23
RAM (Random Access Memory)
Bộ nhớ đọc / ghi
Khả biến
Lu trữ thông tin tạm thời
Có hai loại RAM:
„ SRAM (Static RAM)
„ DRAM (Dynamic RAM)
24
Các kiểu RAM
DRAM
„ Các bit đợc lu 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 SRAM
„ Rẻ hơn SRAM
„ Dùng làm bộ nhớ chính
25
Các kiểu RAM
SRAM
„ Các bit đợc lu trữ bằng các Flip-Flop
„ Không cần mạch làm tơi
„ Cấu trúc phức tạp hơn DRAM
„ Dung lợng nhỏ
„ Tốc độ nhanh hơn DRAM
„ Đắt hơn DRAM
„ Dùng làm bộ nhớ cache
26
Ví dụ về DRAM
27
Tổ chức ô nhớ
Ô nhớ là phần tử nhớ đợc 1 bit thông tin
Các tín hiệu:
„ Tín hiệu chọn đợc gửi đến để chọn ô nhớ
„ Tín hiệu điều khiển chỉ thị việc ghi hay đọc
„ Tín hiệu thứ ba là đờng dữ liệu
Chọn
Điều khiển
Dữ liệu vào Chọn
Điều khiển
Dữ liệu ra
Ô nhớ Ô nhớ
a) Ghi b) Đọc
28
Tổ chức của chip nhớ (SRAM)
Chip nhớ
D
0
D
1
D
m - 1
A
0
A
1
A
n - 1
CS
RD WR
.
.
.
.
.
.
.
.
29
Các tín hiệu của chip nhớ (SRAM)
Các đờng địa chỉ: A0 An - 1 có 2
n ngăn
nhớ.
Các đờng dữ liệu: D0 Dm - 1 độ dài ngăn
nhớ là m bit.
Dung lợng chip nhớ: 2n x m bit
Các đờng điều khiển:
„ Tín hiệu chọn chip: CS (Chip Select)/CE
„ Tín hiệu điều khiển đọc: RD / OE
„ Tín hiệu điều khiển ghi: WR / WE
30
Tổ chức của DRAM
Dùng n đờng địa chỉ dồn kênh cho phép
truyền 2n bit địa chỉ
Tín hiệu chọn địa chỉ hàng RAS (Row
Address Select)
Tín hiệu chọn địa chỉ cột CAS (Column
Address Select)
Dung lợng của DRAM: 22n x m bit
31
Ví dụ: chip 16Mb DRAM (4M x 4 bit)
32
Các chip nhớ (nhìn bên ngoài)
33
Thiết kế modul nhớ bán dẫn
Dung lợng chip nhớ là 2n x m bit
Cần thiết kế để tăng dung lợng:
„ Tăng độ dài ngăn nhớ (tăng m)
„ Tăng số lợng ngăn nhớ (tăng n)
„ Kết hợp cả hai loại (tăng m và n)
34
Tăng độ dài ngăn nhớ
Ví dụ 1:
„ Cho chip nhớ SRAM: 8K x 4 bit
„ Hãy thiết kế modul nhớ 8K x 8 bit
Giải:
„ Dung lợng chip nhớ: 213 x 4 bit
„ Chip nhớ có:
13 đờng địa chỉ (A0
A12), 4 đờng dữ liệu (D0 D3)
„ Modul nhớ cần có:
13 đờng địa chỉ (A0
A12), 8 đờng dữ liệu (D0 D7)
35
Hình vẽ (ví dụ 1)
A0 A12
8K x 4 bit
D0 D3
CS
WE OE
A0 A12
A0 A12
8K x 4 bit
D0 D3
CS
WE OE
CS
WE
OE
D0D3
D4D7
36
Tăng độ dài ngăn nhớ
Bài toán tăng độ dài tổng quát:
Cho chip nhớ 2n x m bit
Cần thiết kế modul nhớ 2n x (k.m) bit
Cần ghép nối k chip nhớ (k>=1)
37
Tăng số lợng ngăn nhớ
Ví dụ 2:
„ Cho chip nhớ SRAM: 4K x 4 bit
„ Hãy thiết kế modul nhớ 8K x 4 bit
Giải:
„ Dung lợng chip nhớ: 212 x 4 bit
„ Chip nhớ có:
12 đờng địa chỉ (A0
A11), 4 đờng dữ liệu (D0
D3)
„ Modul nhớ cần có:
13 đờng địa chỉ (A0
A12), 4 đờng dữ liệu (D0
D3)
38
Hình vẽ (ví dụ 2)
A0A11
D0D3
CS
WE OE
A0A11
D0D3
CS
WE OE
G A Y1 Y0
0
0
0
1
0
1
1
0
1 X 1 1
A0 A11
WE
OE
A Y0
G Y1
A12
D0 D3
CS
39
Tăng số lợng ngăn nhớ
Bài toán tăng số lợng tổng quát:
Cho chip nhớ 2n x m bit
Cần ghép nối modul nhớ: 2k+n x m bit
Cần ghép nối 2k chip
và phải dùng bộ giải mã k: 2k (k 2k)
40
Tăng số lợng và độ dài ngăn nhớ
Ví dụ 3:
„ Cho chip nhớ SRAM: 8K x 4 bit
„ Hãy thiết kế modul nhớ 16K x 8 bit
Giải:
„ Dung lợng chip nhớ: 213 x 4 bit
„ Chip nhớ có:
13 đờng địa chỉ (A0
A12), 4 đờng dữ liệu (D0
D3)
„ Modul nhớ cần có:
14 đờng địa chỉ (A0
A13), 8 đờng dữ liệu (D0
D7)
41
Hình vẽ (ví dụ 3)
A0A12
D0D3
CS
WE OE
A0A12
D0D3
CS
WE OE
A0A12
D0D3
CS
WE OE
A0A12
D0D3
CS
WE OE
A Y0
G Y1
A0A12
WE
OE
A13
CS
D0D7
D0D7
42
Tăng số lợng và độ dài ngăn nhớ
Bài toán tăng số lợng và độ dài tổng quát:
Cho chip nhớ 2n x m bit
Cần ghép nối modul nhớ: 2p+n x (q.m) bit
Cần ghép nối q.2p chip thành 2p bộ, mỗi bộ q
chip và phải dùng bộ giải mã p: 2p (p 2p)
43
5. Bộ nhớ chính
Các đặc trng cơ bản
„ 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
„ Đợc đánh địa chỉ trực tiếp bởi CPU: có nhiều
ngăn nhớ, mỗi ngăn nhớ đợc gán một địa chỉ xác
định
„ Việc quản lý lôgic BNC tùy thuộc vào từng HĐH
„ Về nguyên tắc, ngời lập trình có thể can thiệp
trực tiếp vào toàn bộ BNC của máy tính
44
Bộ nhớ chính
Tổ chức bộ nhớ đan xen
„ Độ rộng của bus dữ liệu để trao đổi với bộ nhớ:
m = 8, 16, 32, 64, ... bit
„ Các ngăn nhớ tổ chức theo byte
45
Ví dụ: m = 8 bit
Bus hệ thống
Bank nhớ Địa chỉ
0
1
2
3
n
. . . . .
46
m = 16 bit
Bus hệ thống
Bank 0 Bank 1 Địa chỉ
. . . . .
0
2
4
6
2n
Địa chỉ
1
3
5
7
2n+1
. . . . .
47
m = 32 bit
Bus hệ thống
Bank 0 Địa chỉ
. . . . .
0
4
8
12
4n
Bank 1 Địa chỉ
. . . . .
1
5
9
13
4n+1
Bank 2 Địa chỉ
. . . . .
2
6
10
14
4n+2
Bank 3
. . . . .
3
7
11
15
4n+3
Địa chỉ
48
6. Bộ nhớ cache
Nguyên tắc chung
Các kỹ thuật ánh xạ địa chỉ
Các thuật toán thay thế
Hoạt động của cache
Bài tập
49
Nguyên tắc chung
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 độ truy nhập bộ nhớ của CPU
Cache có thể đợc đặt trên chip CPU
50
Các khái niệm
Cache hit, cache miss:
„ Cache hit (trúng cache): khi CPU truy nhập một từ nhớ
mà từ nhớ đó đang có trong cache.
„ Cache miss (trợt cache): khi CPU truy nhập một từ nhớ
mà từ nhớ đó không có trong cache.
Nguyên lý định vị tham số bộ nhớ:
„ Định vị về thời gian: Một mục thông tin vừa đợc truy
nhập thì có xác suất lớn là ngay sau đó nó đợc truy
nhập lại.
„ Định vị về không gian: Một mục thông tin vừa đợc truy
nhập thì có xác suất lớn là ngay sau đó các mục lân cận
sẽ đợc truy nhập.
51
Các khái niệm
Trao đổi thông tin giữa cache và BNC:
„ BNC đợc chia thành các Block nhớ
„ Cache đợc chia thành các Line nhớ
„ Kích thớc Line bằng kích thớc Block
Số lợng Line << Số lợng Block
Mỗi Line trong cache đợc gắn thêm một Tag
để xác định Block nào (của BNC) đang ở
trong Line
52
Hình vẽ minh họa
BXL
Tag Dữ liệu
Bộ nhớ cache
Bộ nhớ chính
L
0
L
1
L
m-2
L
m-1
B
0
B
1
B
2
B
p-2
B
p-1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
53
Các kỹ thuật ánh xạ địa chỉ
Ánh xạ trực tiếp (direct mapping)
Ánh xạ liên kết hoàn toàn
(fully associative mapping)
Ánh xạ liên kết tập hợp
(set associative mapping)
54
Ánh xạ trực tiếp
Mỗi Block của BNC chỉ đợc ánh xạ vào một
Line duy nhất:
i = j mod m
„ i: số hiệu Line trong cache
„ j: số hiệu Block trong BNC
„ m: số lợng Line trong cache
Cụ thể: B0 L0 Bm L0 . . .
B1 L1 Bm+1 L1 . . .
. . . . . .
Bm-1 Lm-1 B2m-1 Lm-1 . . .
55
Ánh xạ trực tiếp
Nh vậy:
L0 : B0, Bm, B2m, ..., Bnm
L1 : B1, Bm+1, B2m+1, ..., Bnm+1
. . . . . . .
Lm-1: Bm-1, B2m-1, B3m-1, ..., B(n+1)m-1
56
Ánh xạ trực tiếp
Khi đó, địa chỉ do CPU phát ra gồm 3 trờng:
„ Word: xác định số hiệu ngăn nhớ trong Block
Block (Line) có 2w ngăn nhớ
„ Line: xác định số hiệu Line trong cache
Cache có 2r Line, cache chứa 2r + w ngăn nhớ
„ Tag: xác định Block nào đang ở trong Line
BNC chứa 2(s - r) + r + w = 2s + w ngăn nhớ
Tag Line Word
s - r bit w bit r bit
57
Ví dụ 1
Cho máy tính có dung lợng:
„ BNC = 128 MB, cache = 256 KB, line = 32 byte,
„ Độ dài ngăn nhớ = 1 byte.
Tìm dạng địa chỉ do BXL phát ra?
Giải: Ta có:
„ BNC = 128 MB = 27 * 220 byte = 227 byte
„ Cache = 256 KB = 28 * 210 byte = 218 byte
„ Line = 32 byte = 25 byte w = 5
„ Số lợng Line trong cache: 218/25 = 213 r = 13
„ Số bit của phần Tag: 27 - 13 - 5 = 9, s - r = 9
5 13 9
58
Ví dụ 2
Cho máy tính có dung lợng:
„ BNC = 256 MB, cache = 64 KB, line = 16 byte,
„ Độ dài ngăn nhớ = 4 byte.
Tìm dạng địa chỉ do BXL phát ra?
Giải: Ta có:
„ BNC = 256 MB = 228 byte = 228/22 = 226 ng/nhớ
„ Cache = 64 KB = 216 byte = 216/22 = 214 ng/nhớ
„ Line = 16 byte =24/22 = 22 ng/nhớ w = 2
„ Số lợng Line trong cache: 214/22 = 212 r = 12
„ Số bit của phần Tag: 26 - 12 - 2 = 12, s - r = 12
2 12 12
59
Sơ đồ thực hiện
60
Nhận xét
Ưu điểm:
„ Dễ thực hiện, vì một Block đợc ánh xạ cố định
vào một Line không cần thuật toán chọn Line.
„ Thiết kế mạch đơn giản.
Nhợc điểm:
„ Tỉ lệ cache hit thấp.
61
Ánh xạ liên kết hoàn toàn
Mỗi Block trong BNC đợc ánh xạ vào một Line bất
kỳ trong Cache
Khi đó, địa chỉ do BXL phát ra có dạng:
„ Word: xác định ngăn nhớ trong Block
Block có 2w ngăn nhớ
„ Tag: xác định Block đang ở trong Line
Số lợng Block: 2s
Dung lợng BNC: 2s + w ngăn nhớ
Tag Word
s bit w bit
62
Sơ đồ thực hiện
63
Nhận xét
Ưu điểm:
„ Tỉ lệ cache hit cao hơn ánh xạ trực tiếp vì một
Block đợc phép vào một Line bất kỳ.
Nhợc điểm:
„ Thiết kế mạch tơng đối phức tạp, thể hiện ở
mạch so sánh.
64
Ánh xạ liên kết tập hợp
Cache đợc chia thành nhiều Set, mỗi Set gồm
nhiều Line liên tiếp
Một Block của BNC chỉ đợc ánh xạ vào một
Set duy nhất trong cache, nhng đợc ánh xạ
vào Line bất kỳ trong set đó:
i = j mod v
„ i: số hiệu Set trong cache
„ j: số hiệu Block trong BNC
„ v: số lợng Set trong cache
65
Ánh xạ liên kết tập hợp
Khi đó, địa chỉ do BXL phát ra gồm:
„ Word: xác định số hiệu ngăn nhớ trong Block
Block (Line) có 2w ngăn nhớ
„ Set: xác định số hiệu Set trong cache
Cache có 2d Set
„ Tag: xác định Block nào đang ở trong Line
BNC chứa 2(s - d) + d + w = 2s + w ngăn nhớ
Tag Set Word
s - d bit w bit d bit
66
Ví dụ 1
Cho máy tính có dung lợng:
„ BNC = 512 MB, cache = 128 KB, line = 32 byte,
„ Set = 8 Line, độ dài ngăn nhớ = 1 byte.
Tìm dạng địa chỉ do BXL phát ra?
Giải: Ta có:
„ BNC = 512 MB = 229 byte; Cache = 128 KB = 217 byte
„ Line = 25 byte w = 5
„ Dung lợng Set: 23 * 25 = 28 byte
số lợng Set trong Cache: 217/28 = 29 d = 9
„ Số bit của phần Tag: 29 - 9 - 5 = 15, s - d = 15
5 9 15
67
Ví dụ 2
Cho máy tính có dung lợng:
„ BNC = 256 MB, cache = 128 KB, line = 64 byte,
„ Set = 4 Line, độ dài ngăn nhớ = 4 byte.
Tìm dạng địa chỉ do BXL phát ra?
Giải: Ta có:
„ BNC = 228 byte = 228/22 = 226 ng/nhớ
„ Cache = 217 byte = 217/22 = 215 ng/nhớ
„ Line = 26/22 = 24 ng/nhớ w = 4
„ D/l Set: 22 * 24= 26 s/l Set: 215/26 = 29 d = 9
„ Số bit của phần Tag: 26 - 9 - 4 = 13, s - d = 13
4 9 13
68
Sơ đồ thực hiện
69
Nhận xét
Ưu điểm:
„ Tỉ lệ cache hit cao vì một Block đợc phép vào
một Line bất kỳ trong Set, và dễ so sánh.
„ Đây là kỹ thuật ánh xạ tốt nhất trong 3 kỹ thuật.
Nhợc điểm:
„ Thiết kế mạch phức tạp.
70
Các thuật toán thay thế
Kỹ thuật ánh xạ trực tiếp: Không thay đợc
Hai kỹ thuật ánh xạ liên kết: có 4 thuật toán
„ Random: thay ngẫu nhiên một Block cũ nào đó
Dễ thực hiện, nhanh nhất, tỉ lệ cache hit thấp.
„ FIFO (First In - First Out): thay Block ở đầu tiên trong số
các Block đang có trong cache
tỉ lệ cache hit không cao
„ LFU (Least Frequently Used): thay Block đợc dùng với
tần suất ít nhất tỉ lệ cache hit tơng đối cao
„ LRU (Least Recently Used): thay Block đợc dùng gần
đây ít nhất tỉ lệ cache hit cao
71
Hoạt động của cache
Đọc:
„ Nếu cache hit: đọc ngăn nhớ từ cache
„ Nếu cache miss: thay Block cache hit
Ghi:
„ Nếu cache hit: có 2 phơng pháp:
Write through: ghi dữ liệu vào cả cache và cả BNC
không cần thiết, tốc độ chậm, mạch đơn giản.
Write back: chỉ ghi vào cache, khi nào Block (trong
cache) đợc ghi bị thay đi ghi vào BNC
tốc độ nhanh, mạch phức tạp.
„ Nếu cache miss: thay Block cache hit
72
Hoạt động của cache
BXL Cache BNC
a) Write Through
BXL Cache BNC
b) Write Back
73
Ví dụ cache trên các bộ xử lý Intel
80386: không có cache trên chip
80486: „ 8KB, kích thớc Line: 16 byte
„ ánh xạ liên kết tập hợp 4 đờng
Pentium: có hai cache L1 trên chip
„ Cache lệnh: 8KB, cache dữ liệu: 8KB:
Petium 4: cache L1 (2 loại) và L2 trên chip:
„ Cache L1: + Mỗi cache: 8KB, kích thớc Line: 64 byte
+ ánh xạ liên kết tập hợp 4 đờng
„ Cache L2: + 256KB, kích thớc Line: 128 byte
+ ánh xạ liên kết tập hợp 8 đờng
74
7. Bộ nhớ ngoài
Đĩa từ
RAID
Đĩa quang
Flash disk
Băng từ
75
Các đặc tính của đĩa từ
Đầu từ cố định hay chuyển động
Đĩa cố định hay thay đổi
Một mặt hay hai mặt
Một hay nhiều đĩa
Cơ chế đầu từ
„ Tiếp xúc (đĩa mềm)
„ Không tiếp xúc: + Khe cố định
+ Khe thay đổi
76
Mặt đĩa
77
Khuôn dạng của một rãnh (track)
Gap1 ID Gap2 Data Gap3 Gap1 ID Gap2 Data Gap3
Track
Sync
Byte
Head Sector CRC Sync
Byte
Data CRC
Byte 1 2 1 1 2 1 512 2
Sector 0 Sector 1
Byte 17 7 41 515 20 17 7 41 515 20
78
Nhiều đĩa
79
Cylinders
80
Tốc độ đĩa
Thời gian truy nhập = t/g tìm kiếm + t/g trễ
Tốc độ truyền
Thời gian tìm kiếm
„ Di chuyển đầu từ đến đúng rãnh
Thời gian trễ
„ Chờ đến khi dữ liệu nằm ngay dới đầu từ
81
Đĩa mềm
8”, 5.25”, 3.5”
Tốc độ chậm
Thông dụng
Dung lợng nhỏ
„ Chỉ tới 1.44MB
(loại 2.88 MB không phổ dụng)
Rẻ tiền
Tơng lai có thể không dùng nữa?
82
Đĩa mềm
ổ đĩa mềm
83
Đĩa cứng
Do IBM phát triển
Một hoặc nhiều đĩa
Thông dụng
Dung lợng tăng rất nhanh
„ 2003: 20 GB, 30 GB, 40 GB
„ 2004: > 300 GB
Tốc độ đọc/ghi nhanh
Giá thành rẻ
84
Đĩa cứng
Đĩa
Trục quay
Cần mang đầu từ
Cơ cấu chuyển động
đầu từ
Cáp dữ liệu
(SCSI hoặc EIDE)
Điện
Đầu từ
85
RAID
Redundant Array of Independent Disks
Có 7 loại RAID (RAID 0 RAID 6)
Không phân cấp RAID
Tập hợp nhiều đĩa vật lý đợc HĐH coi nh một đĩa
(logic) duy nhất
Dữ liệu đợc phân bố trên nhiều đĩa vật lý khác nhau
Dung lợng RAID lên tới hàng nghìn GB
Do dung lợng lớn cần có một phần đĩa dùng để
lu trữ thông tin an toàn
86
RAID 0
Không có phần d thừa (thông tin an toàn)
Dữ liệu đợc chứa trong các strip
Tăng tốc độ:
„ Dữ liệu không chứa trên cùng một đĩa
„ Các đĩa tìm kiếm theo cơ chế song song
87
ánh xạ dữ liệu đối với RAID 0
88
RAID 1
Dùng kỹ thuật mirroring (n + n đĩa)
Dữ liệu đợc chứa trong các strip, đợc nhân thành 2
bản chứa trên 2 đĩa khác nhau
Khi đọc: bất kỳ bản nào; Khi ghi: ghi vào cả hai bản
Khi bị lỗi: đọc từ bản kia và nhân bản lại
Giá thành đắt
89
RAID 2
Dùng (n + m) đĩa: n đĩa dữ liệu, m đĩa mã Hamming
Các strip rất bé: khoảng 1 hoặc 2 byte
Việc sửa lỗi đợc tính dựa theo các bit tơng ứng trên các đĩa
Nhiều đĩa chứa mã Hamming để sửa lỗi ở các vị trí tơng
ứng
Nhiều phần d thừa: đắt; không phổ dụng
90
RAID 3
Tơng tự RAID 2, nhng phần thông tin an toàn chỉ dùng
1 đĩa
Chỉ dùng 1 bit parity cho tập các bit dữ liệu tơng ứng
Dữ liệu bị lỗi đợc khôi phục lại nhờ phần dữ liệu “còn
sống” và thông tin parity:
1 + 3 + 8 + ? = 20 ? = 7
Tốc độ truyền dữ liệu nhanh
91
RAID 4
Mỗi đĩa hoạt động độc lập
Thích hợp với truyền dữ liệu tốc độ cao
Strip lớn
Bit parity đợc tính toán dựa vào các strip trên mỗi
đĩa
Parity đợc lu trữ trên đĩa parity theo từng khối
92
RAID 5
Tơng tự RAID 4, nhng parity đợc phân bố đều trên
các đĩa tránh đợc tắc nghẽn trên đĩa parity.
Thờng đợc dùng trong các server mạng
93
RAID 6
Dùng (n + 2) đĩa
Dùng 2 khối parity
Hai khối parity đợc lu trữ riêng biệt trên các đĩa
khác nhau
94
Đĩa quang CD-ROM
Dung lợng thông dụng: 650MB 700MB
Chất dẻo đợc phủ một lớp polycarbonate, bên
dới tráng lớp có khả năng phản xạ cao, thờng
là nhôm
Dữ liệu đợc lu trữ nhờ các hốc (pit) và phần
bằng (land)
Đọc dữ liệu dựa vào sự phản xạ tia laser
95
Hoạt động của đĩa CD
Nhãn đĩa
Tầng bảo vệ (axit acrylic)
Tầng phản xạ (nhôm)
Lớp polycarbonate (plastic)
Đĩa CD-ROM, dung l-ợng 682 MB
Các tiêu điểm laser trên các hốc
polycarbonate ở phía tr-ớc tầng phản xạ
Axit acrylic bảo vệ
Polycarbonate
Hốc
Phần
bằng Nhôm
Gửi/nhận tia laser
96
Vận tốc đĩa CD-ROM
Đĩa nhạc có vận tốc đơn
„ Kiểu đọc: vận tốc tuyến tính không đổi (CLV -
Constant Linier Velocity)
„ 1,2 m/s
„ Rãnh (xoáy ốc) dài khoảng 5,27 km
„ Thời gian đọc cần 4391giây = 73,2 phút
„ Tốc độ đọc cơ sở: 150KB/s
Các tốc độ khác là bội số, ví dụ: 48x, 52x, ...
97
Khuôn dạng CD-ROM
Mode 0: trờng dữ liệu trống
Mode 1: 2048 byte dữ liệu + sửa lỗi
Mode 2: 2336 byte dữ liệu
98
Các bộ nhớ quang khác
CD-R (CD Recordable)
„ WORM
„ Tơng thích với ổ đĩa CD-ROM
CD-RW (CD ReWriteable)
„ Có thể xóa đợc
„ Không đắt
„ Hầu hết tơng thích với ổ đĩa CD-ROM
„ Thay đổi pha
Dùng vật liệu có hai hệ số phản xạ khác nhau thuộc
hai pha khác nhau
99
Các bộ nhớ quang khác
DVD
„ Digital Video Disk: chỉ dùng trên ổ đĩa xem video
„ Digital Versatile Disk: dùng trên ổ máy tính
„ Ghi một hoặc hai mặt
„ Nhiều lớp trên một mặt
„ Dung lợng: 4,7 GB trên một lớp
Lớp polycarbonate, mặt 2
Lớp polycarbonate, mặt 1
Tầng bán phản xạ, mặt 2
Tầng bán phản xạ, mặt 1
Tầng polycarbonate, mặt 2
Tầng polycarbonate, mặt 1
Tầng phản xạ hoàn toàn, mặt 2
Tầng phản xạ hoàn toàn, mặt 1
Các tiêu điểm trên các hốc của
một tầng (của một mặt). Đĩa
phải đ-ợc lật để đọc mặt kia
Đĩa DVD, hai mặt, hai tầng, dung l-ợng: 17 GB
100
Flash disk
Kết nối qua cổng USB
Không phải dạng đĩa
Bộ nhớ bán dẫn cực nhanh (flash memory)
Dung lợng tăng nhanh
Thuận tiện
101
Băng từ
Băng từ
„ Truy nhập tuần tự
„ Tốc độ chậm
„ Giá thành rất rẻ
„ Dùng để lu trữ và backup
Băng audio số (DAT)
„ Đợc dùng với đầu từ quay (nh đầu từ video)
„ Dung lợng tơng đối lớn
4 GB không nén
8 GB nén
„ Dùng để backup PC, server mạng
102
Kiến trúc máy tính
Hết chương 1
103
Bài tập
Bài 1: Cho IC nhớ có dung lợng 8K x 8 bit. Hãy thiết
kế modul nhớ có dung lợng 8K x 32 bit.
Bài 2: Cho IC n
Các file đính kèm theo tài liệu này:
- bai_giang_kien_truc_may_tinh_chuong_3_he_thong_nho_may_tinh.pdf