Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
0,93 MB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Giảng viên: Điện thoại/E-mail: TS Hoàng Xuân Dậu dau@ekabiz.vn Bộ mơn: Khoa học máy tính - Khoa CNTT1 BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Học kỳ/Năm biên soạn: Học kỳ năm học 2009-2010 NỘI DUNG Giới thiệu nhớ cấu trúc phân cấp nhớ Phân loại nhớ tổ chức mạch nhớ ROM RAM Bộ nhớ cache www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU TÍNH - KHOA CNTT1 Trang 2BỘ MÔN: KHOA HỌC MÁY BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Câu hỏi ơn tập www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU TÍNH - KHOA CNTT1 Trang 3BỘ MÔN: KHOA HỌC MÁY BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG 4.1 Hệ thống nhớ - mơ hình phân cấp www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU TÍNH - KHOA CNTT1 Trang 4BỘ MÔN: KHOA HỌC MÁY BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG 4.1 Hệ thống nhớ - tham số 4.1 Hệ thống nhớ - Các thành phần CPU registers (các ghi CPU): www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XUÂN DẬU TÍNH - KHOA CNTT1 Trang 5BỘ MƠN: KHOA HỌC MÁY BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Dung lượng nhỏ, khoảng từ vài chục bytes đến vài KB Tốc độ truy nhập cao (các ghi hoạt động với tốc độ CPU); thời gian truy nhập khoảng 0,25ns Giá thành đắt Sử dụng để lưu toán hạng đầu vào kết lệnh Cache (bộ nhớ cache): Dung lượng tương đối nhỏ (khoảng 64KB đến 16MB) Tốc độ truy nhập cao; thời gian truy nhập khoảng 1-5ns Giá thành đắt Cịn gọi “bộ nhớ thơng minh” (smart memory) Sử dụng để lưu lệnh liệu cho CPU xử lý www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XUÂN DẬU TÍNH - KHOA CNTT1 Trang 6BỘ MƠN: KHOA HỌC MÁY BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG 4.1 Hệ thống nhớ - Các thành phần Main memory (bộ nhớ chính): Gồm ROM RAM, có kích thước lớn; với hệ thống 32 bít, dung lượng khoảng 256MB-4GB Tốc độ truy nhập chậm; thời gian truy nhập khoảng 50-70ns Giá thành tương đối rẻ Sử dụng để lưu lệnh liệu hệ thống người dùng Secondary memory (bộ nhớ thứ cấp – nhớ ngoài): Có dung lượng lớn, khoảng từ 20GB-1000GB Tốc độ truy nhập chậm; thời gian truy nhập khoảng 5ms Giá thành rẻ www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XN DẬU TÍNH - KHOA CNTT1 Trang 7BỘ MƠN: KHOA HỌC MÁY BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Sử dụng để lưu liệu lâu dài dạng tệp (files) 4.1 Hệ thống nhớ - Vai trị mơ hình phân cấp Tăng hiệu hệ thống Dung hoà CPU có tốc độ cao phần nhớ nhớ ngồi có tốc độ thấp; Thời gian trung bình CPU truy nhập liệu từ hệ thống nhớ tiệm cận thời gian truy nhập cache Giảm giá thành sản xuất Các thành phần đắt tiền (thanh ghi cache) sử dụng với dung lượng nhỏ; Các thành phần rẻ tiền (bộ nhớ nhớ ngồi) sử dụng với dung lượng lớn; www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XUÂN DẬU TÍNH - KHOA CNTT1 Trang 8BỘ MƠN: KHOA HỌC MÁY BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG tổng giá thành hệ thống nhớ theo mơ hình phân cấp rẻ so với hệ thống nhớ khơng phân cấp có tốc độ 4.2 Phân loại nhớ Dựa kiểu truy nhập: Random Access Memory (RAM): nhớ truy nhập ngẫu nhiên Serial Access Memory (SAM) : nhớ truy nhập Read Only Memory (ROM): nhớ đọc Dựa trì liệu: khả Volatile memory: nhớ không ổn định; thông tin mất nguồn nuôi: RAM Non-volatile memory: nhớ ổn định; thông tin trì nguồn ni: ROM,HDD, www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU TÍNH - KHOA CNTT1 Trang 9BỘ MÔN: KHOA HỌC MÁY BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Dựa công nghệ chế tạo: Bộ nhớ bán dẫn (Semiconductor memory): ROM, RAM Bộ nhớ từ tính (Magnetic memory): HDD, FDD, băng từ Bộ nhớ quang học (Optical memory): CD, DVD www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XUÂN DẬU MÁY TÍNH - KHOA CNTT1 Trang 10BỘ MƠN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Trường hợp miss (mẩu tin cần ghi khơng có cache) • Ghi có đọc lại (write allocate / fetch on write): mẩu tin trước hết ghi nhớ sau dịng chứa mẩu tin đọc vào cache; • Ghi khơng đọc lại (write non-allocate): mẩu tin ghi nhớ (dịng chứa mẩu tin khơng đọc vào cache) 4.5.9 Các sách thay dịng cache Vì phải thay dịng cache? Ánh xạ dòng (bộ nhớ) dòng (cache) thường ánh xạ nhiều một; Nhiều dòng nhớ chia sẻ dòng cache các dòng nhớ nạp vào cache sử dụng thời gian thay dịng khác theo u cầu thơng tin phục vụ CPU Chính sách thay (replacement policies) xác định www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 60BỘ MÔN: KHOA HỌC BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG dòng cache chọn để thay dịng khác từ nhớ Các sách thay thế: Ngẫu nhiên (Random) Vào trước trước (FIFO) Thay dịng sử dụng gần (LRU) 4.5.9 Các sách thay dòng cache Thay ngẫu nhiên (Radom Replacement): Các dòng cache chọn ngẫu nhiên để thay Ưu: • Cài đặt đơn giản Nhược: www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 61BỘ MÔN: KHOA HỌC BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG • Hệ số miss cao: – Thay ngẫu nhiên không xem xét đến dòng cache thực sử dụng – Nếu dòng cache sử dụng bị thay xảy miss lại cần đọc từ nhớ vào cache 4.5.9 Các sách thay dịng cache Thay kiểu vào trước trước (FIFO-First In First Out): Các dòng cache đọc vào cache trước bị thay trước Ưu: • Có hệ số miss thấp o với thay ngẫu nhiên (tại sao?) Nhược: • Hệ số miss cịn cao – Thay chưa thực xem xét đến dòng cache sử dụng www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 62BỘ MƠN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Một dòng cache “già” sử dụng • Cài đặt phức tạp cần có mạch điện tử để theo dõi trật tự nạp dòng nhớ vào cache 4.5.9 Các sách thay dịng cache Thay dịng sử dụng gần (LRULeast Recently Used): Các dịng cache sử dụng gần lựa chọn để tha Ưu: • Có hệ số miss thấp so với thay ngẫu nhiên thay FIFO • Do thay LRU có xem xét đến dịng sử dụng Nhược: • Cài đặt phức tạp cần có mạch điện tử để theo dõi tần suất sử dụng www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XUÂN DẬU MÁY TÍNH - KHOA CNTT1 Trang 63BỘ MƠN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG dòng cache 4.5.10 Hiệu cache Thời gian truy nhập truy bình hệ thống nhớ có cache: taccess = (Hit cost) + (miss rate) * (miss penalty) taccess = tcache + (1 - H) * (tmemory) H hệ số hit If tcache = 5ns, tmemory = 60ns H=80%, ta có: taccess = + (1 – 0.8) * (60) = 5+12 = 17ns www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 64BỘ MÔN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG If tcache = 5ns, tmemory = 60ns H=95%, ta có: taccess = + (1 – 0.95) * (60) = 5+3 = 8ns Thời gian truy nhập truy bình tiệm cận thời gian truy nhập cache 4.5.10 Hiệu cache – Các yếu tố ảnh hưởng Các yếu tố ảnh hưởng đến hiệu cache: Kích thước cache: • Kích thước cache nên lớn hay nhỏ? Tách cache: • Cache tách thành phần: cache lệnh (I-Cache) D-Cache Tạo cache thành nhiều mức: www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 65BỘ MÔN: KHOA HỌC BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG • Cache thiết kế thành nhiều mức: L1 – L2 – L3, với kích thước tăng dần 4.5.10 Hiệu cache – Các yếu tố ảnh hưởng Kích thước cache: Số liệu thống kê cho thấy: • Kích thước cache không ảnh hưởng nhiều đến hệ số miss • Hệ số miss cache lệnh thấp nhiều so với cache liệu 8KB cache lệnh có hệ số miss < 1% 256KB cache lệnh có hệ số miss < 0.002% > tăng kích thước cache lệnh không giảm miss hiệu 8KB cache liệu có hệ số miss < 4% www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 66BỘ MƠN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG 256KB cache liệu có hệ số miss < 3% > tăng kích thước cache liệu lên 32 lần, hệ số miss giảm 25% (từ 4% xuống 3%) 4.5.10 Hiệu cache – Các yếu tố ảnh hưởng Kích thước cache: Cache có kích thước lớn: • Có thể tăng số dịng nhớ lưu cache • Giảm tần suất tráo đổi dòng cache chương trình khác với nhớ • Cache lớn thường chậm cache nhỏ (tại sao?) – Không gian tìm kiếm địa nhớ lớn Xu hướng tương lai: cache lớn tốt (tại sao?) • Hỗ trợ đa nhiệm tốt www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 67BỘ MÔN: KHOA HỌC BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG • Hỗ trợ xử lý song song tốt • Hỗ trợ tốt hệ thống CPU nhiều nhân 4.5.10 Hiệu cache – Các yếu tố ảnh hưởng Tách cache: Cache tách thành cache lệnh (I-Cache) cache liệu (D-Cache) để cải thiện hiệu năng, do: • Dữ liệu lệnh có tính lân cận khác nhau; • Dữ liệu thường có tính lân cận thời gian cao lân cận khơng gian; lệnh có tính lân cận khơng gian cao lân cận thời gian; • Cache lệnh cần hỗ trợ thao tác đọc; cache liệu cần hỗ trợ thao tác đọc ghi tách cache giúp tối ưu hố dễ dàng hơn; • Tách cache hỗ trợ nhiều lệnh truy nhập đồng thời hệ thống nhớ giảm xung đột tài nguyên cho CPU pipleline www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 68BỘ MÔN: KHOA HỌC BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG 4.5.10 Hiệu cache – Các yếu tố ảnh hưởng Tách cache: Trên thực tế, hầu hết cache L1 tách thành phần: • I-Cache (Instruction Cache): cache lệnh • D-Cache (Data Cache): cache liệu • I-Cache D-Cache thường hỗ trợ nhiều lệnh truy nhập Các cache mức cao khơng tách Tại sao? • Cache L1 tách gần CPU nhất; CPU trực tiếp đọc ghi lên cache L1 Cache L1 cần hỗ trợ nhiều lệnh truy nhập đồng thời biện pháp tối ưu hố; • Các mức cao cache tách do: – Điều khiển phức tạp – Hiệu mang lại không thực cao, CPU không trực tiếp đọc/ghi mức cache Hơn nữa, mức cache cao trao đổi liệu với cache www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XUÂN DẬU MÁY TÍNH - KHOA CNTT1 Trang 69BỘ MƠN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG L1 theo khối, nên việc hỗ trợ nhiều lệnh truy nhập đồng thời khơng có nhiều ý nghĩa 4.5.10 Hiệu cache – Các yếu tố ảnh hưởng Tạo cache thành nhiều mức: Cải thiện hiệu hệ thống hệ thống cache nhiều mức có khả dung hồ tốt tốc độ CPU với nhớ CPU 1ns 1ns L1 5ns 5ns L2 15ns L3 30ns Bộ nhớ 60ns 60ns Trên thực tế, đa số cache tổ chức thành mức: L1 L2 Một số cache có mức: L1, L2 L3 www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 70BỘ MƠN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Giảm giá thành hệ thống nhớ 4.5.10 H.năng cache – Các biện pháp giảm miss Cache tốt: Hệ số hit cao Hệ số miss thấp Nếu xảy miss không chậm Các loại miss: Miss bắt buộc (Compulsory misses): thường xảy thời điểm chương trình kích hoạt, mã chương trình tải vào nhớ chưa nạp vao cache Miss dung lượng (Capacity misses): thường xảy kích thước cache hạn chế, đặc biết mơi trường đa nhiệm Do kích thước cach nhỏ nên mã chương trình thường xuyên bị tráo đổi nhớ cache www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XUÂN DẬU MÁY TÍNH - KHOA CNTT1 Trang 71BỘ MƠN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Miss xung đột (Conflict misses): xảy có nhiều dịng nhớ cạnh tranh dòng cache 4.5.10 H.năng cache – Các biện pháp giảm miss Tăng kích thước dịng cache: Giảm miss bắt buộc • Dịng kích thước lớn có khả bao phủ lận tốt giảm miss bắt buộc; Tăng miss xung đột • Dịng kích thước lớn làm giảm số dịng cache tăng mức độ cạnh tranh tăng miss xung đột Dịng kích thước lớn gây lãng phí dung lượng cache Do dịng lớn nên có nhiều phần dịng cache khơng sử dụng www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 72BỘ MÔN: KHOA HỌC BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Kích thước dịng thường dùng 64 bytes 4.5.10 H.năng cache – Các biện pháp giảm miss Tăng mức độ liên kết cache (tăng số đường cache): Giảm miss xung đột: • Tăng số đường cache tăng tính mềm dẻo ánh xạ trang nhớ đường cache (nhiều lựa chọn hơn) giảm miss xung đột Làm cache chậm hơn: • Tăng số đường cache tăng khơng gian tìm kiếm địa nhớ làm cache chậm 4.6 Câu hỏi ôn tập Hệ thống nhớ phân cấp: đặc điểm, vai trò www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 73BỘ MÔN: KHOA HỌC BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG ROM gì? loại ROM RAM, SRAM, DRAM gì? Cấu tạo SRAM DRAM Bộ nhớ cache: a Cache gì? vai trị nguyên lý hoạt động b Kiến trúc cache c Tổ chức/ánh xạ cache d Đọc ghi thông tin cache e Các sách thay dịng cache f Hiệu năng, yếu tố ảnh hưởng biện pháp cải thiện hiệu cache www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 74BỘ MƠN: KHOA HỌC ... MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG 4. 2 Tổ chức mạch nhớ www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 11BỘ MÔN: KHOA HỌC BÀI GIẢNG MÔN KIẾN TRÚC MÁY TÍNH CHƯƠNG... HỌC MÁY BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG 4. 1 Hệ thống nhớ - mơ hình phân cấp www.ptit.edu.vn GIẢNG VIÊN: TS HỒNG XN DẬU TÍNH - KHOA CNTT1 Trang 4BỘ MÔN: KHOA HỌC MÁY BÀI GIẢNG... GIẢNG VIÊN: TS HỒNG XN DẬU MÁY TÍNH - KHOA CNTT1 Trang 23BỘ MÔN: KHOA HỌC BÀI GIẢNG MƠN KIẾN TRÚC MÁY TÍNH CHƯƠNG – BỘ NHỚ TRONG Transistor www.ptit.edu.vn GIẢNG VIÊN: TS HOÀNG XUÂN DẬU MÁY TÍNH