1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Kiến trúc máy tính: Chương 4 - TS. Vũ Đức Lung

36 11 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 36
Dung lượng 781,76 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng Kiến trúc máy tính - Chương 4: Thiết kế bộ nhớ do TS. Vũ Đức Lung biên soạn cung cấp cho người học các kiến thức: Khái niệm cơ bản, bộ nhớ Cache, bộ nhớ trong, bộ nhớ ảo. Mời các bạn cùng tham khảo nội dung chi tiết.

Trang 1

 Khái niệm cơ bản

 Bộ nhớ Cache

 Bộ nhớ trong

 Bộ nhớ ảo

Trang 3

 Thứ tự thực hiện tìm một item trong bộ nhớ:

– Tìm Item trong bộ nhớ mức cao nhất của các cấp bộ nhớ (xác suất tìm thấy item trong đó gọi là hit ratio h1 , không tìm thấy là miss ratio (1- h1) )

– Khi không tìm thấy thì tìm ở cấp thấp hơn ( h2, (1-h2))

– Quá trình tiếp diễn cho đến khi tìm thấy hoặc hết cấp bộ nhớ

– Khi tìm thấy Item sẽ được chuyển cho Bộ xử lý

 Giả sử Các cấp bộ nhớ có 3 cấp Thời gian truy cập bộ nhớ

trung bình được tính:

t = h *t + (1-h )*[t +h *t +(1-h )*(t +t3)]

Trang 4

Khoa KTMT Vũ Đức Lung 4

 Thống kê: 90% thời gian thi hành 10% số lệnh của chương

trình

 Nguyên tắc không gian:

– Khi bộ xử lý thâm nhập vào ô nhớ nào đó => nhiều khả năng sẽ thâm nhập vào những ô nhớ có địa chỉ kế tiếp trong thời gian sau đó

 Nguyên tắc về thời gian:

– Các ô nhớ được hệ thống xử lý thâm nhập có khả năng sẽ được thâm nhập lại trong tương lai gần Thông thường chỉ có một số lệnh và một phần số liệu được thâm nhập nhiều nhất mà thôi Ví dụ như một lệnh trong một vòng lặp của chương trình

Trang 5

 a small high-speed memory that is near the CPU

 Thành công cache (cache hit)

 Thất bại cache (cache miss)

 Tỷ số thành công cache hc(cache hit ratio)

 Tỷ số thất bại cache (1-hc) (cache miss ratio)

Trang 6

Khoa KTMT Vũ Đức Lung 6

 Ảnh hưởng của nguyên lý lân cận thời gian

 Ảnh hưởng của nguyên lý lân cận không gian

 Ảnh hưởng tổ hợp của hai nguyên lý

Trang 8

Khoa KTMT Vũ Đức Lung 8

Phải để một khối bộ nhớ vào chỗ nào của cache (sắp xếp khối)?

 Có 3 kỹ thuật tổ chức :

– Kiểu tương ứng trực tiếp (Direct Mapping)

– Kiểu hoàn toàn phối hợp (Fully Associative Mapping)

– Kiểu phối hợp theo tập hợp (Set – Associative Mapping)

 Dựa trên hai khía cạnh:

– Cách đặt vào cache một khối nhớ từ bộ nhớ trong

– Cách thay thế một khối cache (khi cache đầy)

Trang 9

 Kiểu tương ứng trực tiếp

– Nếu mỗi khối bộ nhớ chỉ có một vị trí đặt khối duy nhất trong cache được xác định theo công thức:

K= i mod n

Trong đó: K: vị trí khối đặt trong cache i: số thứ tự của khối trong bộ nhớ trong n: số khối của cache

 Kiểu hoàn toàn phối hợp: Một khối trong bộ nhớ trong có thể được đặt vào vị trí bất kỳ trong cache

Trang 10

Khoa KTMT Vũ Đức Lung 10

 Kiểu phối hợp theo tập hợp: cache bao gồm các tập hợp của các khối cache Mỗi tập hợp của các khối cache chứa số khối như nhau Một khối của bộ nhớ trong có thể được đặt vào một số vị trí khối giới hạn trong tập hợp được xác định bởi công thức: K= i mod s

Trong đó: K: vị trí khối đặt trong cache

i: số thứ tự của khối trong bộ nhớ trong s: số lượng tập hợp trong cache

Trang 12

Khoa KTMT Vũ Đức Lung 12

 Kiểu tương ứng trực tiếp:

Ví dụ 2: Main memory: 4K blocks

Cache : 128 blocks Block size: 16 words Ánh xạ khối bộ nhớ trong vào khối cache

Trang 13

 Địa chỉ mà bộ xử lý đưa ra có thể phân tích thành hai thành

phần: phần nhận dạng số thứ tự khối và phần xác định vị trí từcần đọc trong khối

 Căn cứ vào số từ trong một khối bộ nhớ mà số bit trong trườngđịa chỉ sẽ xác định vị trí từ cần đọc trong khối

 Phần nhận dạng số thứ tự khối sẽ khác nhau tuỳ thuộc vào

cách xếp đặt khối, trường chỉ số khối được so sánh với nhãncủa cache để xác định khối trong cache

Trang 14

Khoa KTMT Vũ Đức Lung 14

 Kiểu tương ứng trực tiếp:

– Ưu điểm: đơn giản

– Nhược điểm: không hiệu quả sử dụng cache

 MMU diễn giải địa chỉ phát ra từ CPU:

– Địa chỉ từ cần đọc trong khối (Word field) = log2B, B – kích thước khối theo từ

– Chỉ số khối cache ( Block field) = log2N, N -kích thước cache theo block – Nhãn (Tag field) = log2(M/N), M -kích thước bộ nhớ trong theo khối

– Số bit trong trường địa chỉ bộ nhớ trong = log2(B.M)

Trang 15

 VD: Xét trường hợp bộ nhớ trong chứa 4K khối, bộ nhớ cache chứa 128 khối và mối khối có kích thước 16 từ nhớ

Trang 17

 Kiểu hoàn toàn phối hợp

– Chỉ số khối trong bộ nhớ (Word field) = log2 B

– Địa chỉ từ cần đọc trong khối (Tag field) = log2 M

– Số bit trong trường địa chỉ bộ nhớ trong = log2(B.M)

Trang 18

Khoa KTMT Vũ Đức Lung 18

 Kiểu hoàn toàn phối hợp

Trang 19

 Kiểu phối hợp theo tập hợp

– Word field = log2 B

– Set field = log2 S, S – số tập hợp trong cache

– Tag field = log2 (M/S), S = N/Bs, Bs số khối trong một tập hợp

– Số bit trong trường địa chỉ bộ nhớ trong = log2(B.M)

 Ví dụ tìm số bit cho các trường ở VD1 & 2 giả sử số khối

trong một tập tương ứng là 2 và 4

Trang 20

Khoa KTMT Vũ Đức Lung 20

 Kiểu phối hợp theo tập hợp

Trang 21

khối cần thay thế trong cache được chọn ngẫu nhiên

 Khối xưa nhất (LRU: Least Recently Used): các khối đã đượcthâm nhập sẽ được đánh dấu và khối bị thay thế là khối khôngđược dùng từ lâu nhất

 Vào trước ra trước (FIFO: First In First Out): Khối được đưavào cache đầu tiên, nếu bị thay thế, khối đó sẽ được thay thếtrước nhất

Trang 22

Khoa KTMT Vũ Đức Lung 22

Ví dụ:

Ma trận số 4x8 Giả sử mỗi số lưu

trong một từ và các phần tử ma trận

lưu theo thứ tự từ địa chỉ 1000 đến

1031 Cache chứa 8 khối, mỗi khối 2

từ Áp dụng kỹ thuật LRU Thứ tự yêu

cầu từ CPU:

Trang 23

mapping

Trang 24

Khoa KTMT Vũ Đức Lung 24

Fully

associative

mapping

Trang 25

mapping

Trang 26

Khoa KTMT Vũ Đức Lung 26

 Chiến lược với cache hit:

– Ghi đồng thời (write-through): Thông tin được ghi đồng thời vào khối của cache và khối của bộ nhớ trong

– Ghi lại (write-back): T hông tin cần ghi chỉ được ghi vào khối trong cache

• Sử dụng bit trạng thái (Dirty bit hay Update bit)

• Khi một khối bị thay thế, khối này sẽ được ghi lại vào bộ nhớ trong chỉ khi bit trạng thái đã được thiết lập

 Chiến lược với cache miss

- Ghi có nạp (write-allocate): khối cần ghi từ bộ nhớ trong được nạp vào trong cache như mô tả ở trên Cách này thường được dùng trong cách ghi lại

- Ghi không nạp (write-no-allocate): khối được thay đổi ở bộ nhớ trong không được đưa vào cache Cách này được dùng trong cách ghi đồng thời

Trang 27

 Cache duy nhất để chứa đồng thời cả lệnh và dữ liệu

 Cache riêng lẻ bằng cách sử dụng một cache lệnh riêng và một cache dữ liệu riêng (ví dụ Pentium, Pentium 4, Itanium, PowerPC 620, IBM SP,…)

 Cache mức một (L1 cache): thường là cache trong (on-chip cache; nằm bên trong CPU) Cache này có kích thước nhỏ nhất và vì nằm gần CPU nhất nên dữ liệu nằm trên nó sẽ được xử lý nhanh nhất.

 • Cache mức hai (L2 cache) thường là cache ngoài (off-chip cache; cache này nằm bên ngoài CPU) Như vậy nếu các CPU được thiết kế trên cùng một lõi có thể được cài đặt cache L2 có kích thước khác nhau.

 • Ngoài ra, trong một số hệ thống (PowerPC G4, IBM S/390 G4, Itanium của Intel) còn có tổ chức cache mức ba (L3 cache), đây là mức cache trung

Trang 28

Cache organization associative

Set-Cache L1 size 8 KB Number of blocks per set - 4 block size = 64 byte

Trang 30

Khoa KTMT Vũ Đức Lung 30

Trang 32

Khoa KTMT Vũ Đức Lung 32

 Giải quyết vấn đề về kích thước bộ nhớ vật lý không đủ chứa

cả hệ điều hành cùng với các chương trình của người sử dụng

 Vấn đề các vùng nhớ phải được bảo vệ một cách chắc chắn đểkhỏi bị chương trình của người sử dụng làm hỏng

 Bộ nhớ ảo dựa trên sự kết hợp các bộ nhớ với tốc độ rất caonhư bộ nhớ trong (RAM) và bộ nhớ có tốc độ chậm như bộ

Trang 33

 Bộ nhớ ảo có thể được quản lý bằng cách chia bộ nhớ thànhcác mảng nhỏ có độ lớn tính theo đoạn, cơ chế này gọi là phânđoạn (đối với họ Intel có từ các bộ VXL 80286 trở đi) hoặctrang, cơ chế này gọi là phân trang ( đối với họ Intel có từ các

bộ VXL 80386) trở đi

 Trong các máy tính hiện đại 1 đoạn có thể có độ lớn từ 1 byte đến 4GB còn 1 trang thông thường có độ lớn từ 2KB đến 16 K bytes

Trang 36

Khoa KTMT Vũ Đức Lung 36

Cho một bộ nhớ cache tương ứng trực tiếp có 8 khối, mỗi khối có

16 byte (word) Bộ nhớ trong có 64 khối Giả sử lúc khởi độngmáy, 8 khối đầu tiên của bộ nhớ trong được đưa lên cache

a Viết bảng nhãn của các khối hiện đang nằm trong cache

b CPU lần lượt đưa các địa chỉ sau đây để đọc số liệu: O4AH, 3F5H, 27CH Nếu thất bại thì cập nhật bãng nhãn

c CPU dùng cách ghi lại Khi thất bại cache, CPU dùng cách ghi

có nạp Mô tả công việc của bộ quản lý cache khi CPU đưa racác từ sau đây để ghi vào bộ nhớ trong: 0C3H, 05AH, 1C5H

Ngày đăng: 11/05/2021, 03:32

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm