BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH tổng quát về RAM

23 11 0
BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Đ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

ĐẠI HỌC BÁCH KHOA HÀ NỘI TRƯỜNG ĐIỆN-ĐIỆN TỬ - - BÁO CÁO BÀI TẬP LỚN KĨ THUẬT MÁY TÍNH Đề Tài : Họ tên MSSV Email Nguyễn Thanh Thủy 20182815 thuy.nt182815@sis.hust.edu.vn Ngô Văn Tuấn 20182859 tuan.nv182859@sis.hust.edu.vn Nguyễn Thành Trung Mục Lục 1 RAM 1.1 Tổng quát RAM 1.2 Phân loại RAM .4 1.2.1 RAM Tĩnh .4 1.2.2 RAM Động 1.3 Các Thông số RAM 1.4 Truy cập DRAM 1.5 Chi tiết kỹ thuật truy cập DRAM .8 1.6 Giao thức truy cập đọc .9 Bộ nhớ Cache 10 2.1 Cache gì? 10 2.2 Vai trò nguyên lý hoạt động 10 2.2.1 Vai Trò 10 2.2.2 Nguyên lý hoạt động cache 11 2.2.3 Trao đổi liệu CPU – cache 12 2.2.4 Các hệ số Hit Miss .12 2.3 Các dạng kiến trúc cache 13 2.3.1 Kiến trúc Look Aside 13 2.3.2 Kiến trúc Look Through 13 2.4 Các phương pháp đọc ghi .14 2.5 Hiệu cache 15 2.6 Các phương pháp giảm miss cho cache 15 2.6.1 Các loại miss cache 15 2.6.2 Các phương pháp giảm miss cho cache .16 Bộ nhớ ảo 16 3.1 Tổng quan nhớ ảo .16 3.2 Simplest Address Translation (Dịch địa đơn giản nhất) 17 3.3 Bảng trang nhiều cấp 18 3.4 Tối ưu hóa bảng trang nhiều cấp .20 3.5 Tác động ảo hóa .21 Lời mở đầu Trong ngày đầu, máy tính đơn giản nhiều Các thành phần khác hệ thống, chẳng hạn CPU, nhớ, nhớ chung giao diện mạng, phát triển đó, hiệu suất chúng cân Ví dụ, nhớ giao diện mạng không nhanh (nhiều) so với CPU cung cấp liệu Ngày nay, Khi lõi CPU trở nên nhanh nhiều hơn, yếu tố hạn chế hầu hết chương trình khả truy cập nhớ thời gian Các nhà thiết kế phần cứng đưa kỹ thuật tăng tốc xử lý nhớ phức tạp hết - chẳng hạn nhớ đệm CPU Bài báo cáo giải thích cấu trúc hệ thống nhớ sử dụng phần cứng hàng hóa đại, minh họa lý nhớ đệm CPU phát triển, cách chúng hoạt động chương trình nên làm để đạt hiệu suất tối ưu cách sử dụng chúng 1 RAM 1.1 Tổng quát RAM RAM (viết tắt Random Access Memory) loại nhớ khả biến cho phép truy xuất đọc-ghi ngẫu nhiên đến vị trí nhớ dựa theo địa nhớ Thông tin lưu RAM tạm thời, chúng mất nguồn điện cung cấp RAM nhớ máy tính hệ thống điều khiển, để lưu trữ thông tin thay đổi sử dụng Các hệ thống điều khiển sử dụng SRAM làm thiết bị lưu trữ thứ cấp (secondary storage) Khi cần thiết bố trí pin nhỏ làm nguồn điện phụ để trì liệu RAM RAM có đặc tính thời gian thực thao tác đọc ghi ô nhớ nhau, cho dù vị trí nhớ Mỗi nhớ RAM có địa Thông thường, ô nhớ byte (8 bit); nhiên hệ thống lại đọc hay ghi vào nhiều byte (2, 4, byte) lúc Bộ nhớ RAM có đặc trưng sau:  Dung lượng nhớ: Tổng số byte nhớ (nếu tính theo byte) tổng số bit nhớ tính theo bit  Tổ chức nhớ: Số ô nhớ số bit cho ô nhớ  Thời gian thâm nhập: Thời gian từ lúc đưa địa ô nhớ đến lúc đọc nội dung nhớ  Chu kỳ nhớ: Thời gian hai lần liên tiếp thâm nhập nhớ 1.2 Phân loại RAM 1.2.1 RAM Tĩnh Bộ nhớ truy cập ngẫu nhiên tĩnh (SRAM hay RAM tĩnh) loại nhớ sử dụng công nghệ bán dẫn Từ "tĩnh" nghĩa nhớ lưu liệu có điện, khơng RAM động cần nạp lại thường xuyên Không nên nhầm RAM tĩnh với nhớ đọc nhớ flash RAM tĩnh lưu liệu có điện Hình 2.4 mơ tả cấu trúc tế bào SRAM bóng bán dẫn Lõi tế bào hình thành bốn bóng bán dẫn M1 đến M4 tạo thành hai biến tần ghép chéo Chúng có hai trạng thái ổn định, đại diện cho tương ứng Trạng thái ổn định miễn bật nguồn Vdd có sẵn Truy cập ngẫu nhiên nghĩa nhớ đọc ghi theo thứ tự Mỗi bit SRAM chứa transistor tạo thành cặp chéo Ô chứa có trạng thái Ngồi transistor sử dụng điều khiển quyền truy cập tới nhớ q trình đọc ghi Tổng cộng, cần transistor để chứa bit nhớ Truy cập tới cell kích hoạt word line (WL hình) vốn điều khiển transistor truy cập M5 M6, tới lượt, điều khiển cell kết nối tới đường bit: BL BL Đường bit sử dụng để truyền liệu cho hai tác vụ đọc ghi Mặc dù việc có hai đường bit không bắt buộc, hầu hết cung cấp hai để cải thiện biên nhiễu tín hiệu Kích thước nhớ SRAM với m đường địa n đường liệu 2m từ, tức 2m × n bit 1.2.2 RAM Động Bộ nhớ truy cập ngẫu nhiên động (DRAM hay RAM động) loại nhớ truy cập ngẫu nhiên lưu bit liệu tụ điện riêng biệt mạch tích hợp Vì tụ điện bị rị điện tích nên thơng tin bị dần trừ liệu nạp lại đặn Đây điểm khác biệt so với RAM tĩnh Ưu điểm DRAM có cấu trúc đơn giản: cần transistor tụ điện cho bit cần sáu transistor SRAM Điều cho phép DRAM lưu trữ với mật độ cao Vì DRAM liệu khơng có điện nên thuộc loại thiết bị nhớ tạm thời DRAM thường xếp mảng hình chữ nhật phần dự trữ bao gồm tụ điện transistor cho bit liệu Hình bên phải ví dụ đơn giản với ma trận 4x4 Một số ma trận DRAM có tới hàng nghìn phần Về cấu trúc, RAM động đơn giản nhiều so với RAM tĩnh Hình 2.5 cho thấy cấu trúc thiết kế DRAM thơng thường Tất bao gồm bóng bán dẫn tụ điện Sự khác biệt lớn độ phức tạp tất nhiên có nghĩa hoạt động khác so với RAM tĩnh Một tế bào RAM động giữ trạng thái tụ điệnC Bóng bán dẫnMđược sử dụng để bảo vệ quyền truy cập vào trạng thái Để đọc trạng thái ơ, dịng truy cậpALđược ni dưỡng; điều gây dòng điện chạy đường liệu DLhoặc khơng, tùy thuộc vào điện tích tụ điện Để ghi dịng liệu vào ơDLđược thiết lập thích hợp sau ALđược nâng lên thời gian đủ dài để tích điện tiêu hao tụ điện 1.3 Các Thông số RAM  Dung lượng - Dung lượng RAM tính MB GB, thông thường RAM thiết kế với dung lượng 256mb,512 mb,1gb,2gb,3gb,4gb,8gb - Dung lượng RAM lớn tốt cho hệ thống, nhiên tất hệ thống phần cứng hệ điều hành hỗ trợ loại RAM có dung lượng lớn, số hệ thống phần cứng máy tính cá nhân hỗ trợ đến tối đa GB số hệ điều hành (như phiên 32 bit Windows XP) hỗ trợ đến 32 GB  BUS Có hai loại BUS là: BUS Speed BUS Width - BUS Speed BUS RAM, tốc độ liệu xử lý giây - BUS Width chiều rộng nhớ Các loại RAM DDR, DDR2, DDR3, DDR4 có BUS Width cố định 64 Cơng thức tính băng thơng (bandwidth) từ BUS Speed BUS Width: Bandwidth = (Bus Speed x Bus Width) / Bandwidth tốc độ tối đa RAM đọc giây Bandwidth ghi RAM số tối đa theo lý thuyết Trên thực tế, bandwidth thường thấp vượt số theo lý thuyết 1.4 Truy cập DRAM Một chương trình chọn vị trí nhớ địa ảo Bộ xử lý chuyển địa thành địa vật lý cuối điều khiển nhớ chọn chip RAM tương ứng với địa Để chọn ô nhớ riêng lẻ chip RAM, phần địa vật lý truyền dạng số dịng địa Sẽ hồn tồn khơng thực tế giải vị trí nhớ riêng lẻ từ điều khiển nhớ: 4GB RAM yêu cầu dịng địa Thay vào đó, địa mã hóa dạng số nhị phân cách sử dụng tập hợp dòng địa nhỏ Địa chuyển tới chip DRAM theo cách trước tiên phải phân kênh Một phân kênh với N dịng địa có 2N dịng đầu Các dịng đầu sử dụng để chọn ô nhớ Sử dụng cách tiếp cận trực tiếp vấn đề lớn chip có dung lượng nhỏ Nhưng số lượng tế bào phát triển cách tiếp cận khơng cịn phù hợp Một chip với 1Gbit6dung lượng cần 30 dòng địa và230chọn dịng Kích thước phân kênh tăng lên theo cấp số nhân với số lượng dòng đầu vào tốc độ không bị hy sinh Một phân kênh cho 30 đường địa cần nhiều bất động sản chip bên cạnh độ phức tạp (kích thước thời gian) phân kênh Quan trọng truyền tải 30 xung đồng đường địa khó nhiều so với việc truyền “chỉ” 15 xung Ít dịng phải bố trí độ dài thời gian thích hợp Hình 2.7 cho thấy chip DRAM mức cao Các ô DRAM tổ chức thành hàng cột Tất chúng xếp thành hàng chip DRAM cần phân kênh lớn Với cách tiếp cận mảng, thiết kế sử dụng phân kênh ghép kênh có kích thước nửa số Đây khoản tiết kiệm lớn tất mặt Trong ví dụ, dịng địa chỉa0vàa1 thông qualựa chọn địa hàng(RAS)bộ phân kênh chọn dịng địa tồn hàng Khi đọc, nội dung tất cung cấp cholựa chọn địa cột(CAS)bộ ghép kênh Dựa dòng địa chỉa2vàa3nội dung cột sau cung cấp cho chân liệu chip DRAM Điều xảy nhiều lần song song số chip DRAM để tạo tổng số bit tương ứng với độ rộng bus liệu Để ghi, giá trị ô đặt bus liệu ô chọn RAS CAS, giá trị lưu trữ ô Một thiết kế đơn giản Trong thực tế - rõ ràng - nhiều phức tạp Cần có thơng số kỹ thuật độ trễ sau có tín hiệu trước liệu có sẵn bus liệu để đọc Các tụ điện không tải lập tức, mơ tả phần trước Tín hiệu từ tế bào yếu nên cần khuếch đại Để ghi, phải định thời gian liệu phải có sẵn bus sau thực RAS CAS để lưu trữ thành công giá trị ô (một lần nữa, dung lượng 1.5 Chi tiết kỹ thuật truy cập DRAM Trong phần giới thiệu DRAM, thấy chip DRAM ghép địa để tiết kiệm tài nguyên dạng chân địa Chúng thấy việc truy cập DRAM nhiều thời gian tụ điện khơng phóng điện để tạo tín hiệu ổn định; thấy ô DRAM phải làm Bây lúc để tổng hợp tất điều lại với xem tất yếu tố định cách thức truy cập DRAM diễn DRAM đồng bộ, tên cho thấy, hoạt động liên quan đến nguồn thời gian Bộ điều khiển nhớ cung cấp xung nhịp, tần số xác định tốc độ Front Side Bus (FSB) - giao diện điều khiển nhớ sử dụng chip DRAM Theo văn này, tần số 800MHz, 1.066MHz chí 1.333MHz có sẵn với tần số cao (1.600MHz) công bố cho hệ Điều khơng có nghĩa tần suất sử dụng xe buýt thực cao Thay vào đó, xe buýt ngày bơm gấp đôi bốn, có nghĩa liệu vận chuyển hai bốn lần chu kỳ Số lượng bán cao nên nhà sản xuất thích quảng cáo xe buýt 200MHz bơm bốn xe buýt 800MHz “hiệu quả” Đối với SDRAM ngày lần truyền liệu bao gồm 64 bit - byte Do đó, tốc độ truyền FSB byte nhân với tần số bus hiệu dụng (6.4GB / s cho bus 200MHz bơm bốn) Nghe nhiều tốc độ bùng nổ, tốc độ tối đa không vượt qua Như thấy bây giờ, giao thức để nói chuyện với mơ-đun RAM có nhiều thời gian chết khơng có liệu truyền Đó xác thời gian chết mà phải hiểu giảm thiểu để đạt hiệu suất tốt 1.6 Giao thức truy cập đọc Hình 2.8 cho thấy hoạt động số đầu nối mô-đun DRAM xảy ba pha có màu khác Như thường lệ, thời gian trôi từ trái sang phải Rất nhiều chi tiết bị bỏ sót Ở nói đồng hồ bus, tín hiệu RAS CAS, địa bus liệu Một chu kỳ đọc bắt đầu với điều khiển nhớ làm cho địa hàng có sẵn địa bus hạ tín hiệu RAS Tất tín hiệu đọc cạnh lên đồng hồ (CLK) nên khơng có vấn đề tín hiệu khơng hồn tồn vng miễn ổn định thời điểm đọc Việc đặt địa hàng khiến chip RAM bắt đầu chốt hàng định địa Tín hiệu CAS gửi sau chu kỳ đồng hồ tRCD (RAS-to-CAS Delay) Địa cột sau truyền cách làm cho có sẵn bus địa hạ dòng CAS Ở thấy cách hai phần địa (nhiều nửa, khơng có ý nghĩa khác) truyền qua bus địa Bây việc định địa hồn tất liệu truyền Chip RAM cần thời gian để chuẩn bị cho việc Độ trễ thường gọi Độ trễ CAS (CL) Trong Hình 2.8, độ trễ CAS Nó cao thấp hơn, tùy thuộc vào chất lượng điều khiển nhớ, bo mạch chủ mơ-đun DRAM Độ trễ có nửa giá trị Với CL = 2,5, liệu có sẵn lần đầu tiênrơiflmắt cá chân khu vực màu xanh Với tất chuẩn bị để truy cập liệu lãng phí chuyển từ liệu Đây lý mô-đun DRAM cho phép điều khiển nhớ định lượng liệu truyền Thường lựa chọn 2, từ Điều cho phép lấp đầy tồn dịng nhớ đệm mà khơng cần trình tự RAS / CAS Bộ điều khiển nhớ gửi tín hiệu CAS mà không cần đặt lại lựa chọn hàng Bằng cách này, địa nhớ liên tiếp đọc ghi nhanh đáng kể tín hiệu RAS khơng phải gửi hàng khơng cần phải hủy kích hoạt (xem bên dưới) Giữ hàng “mở” điều mà điều khiển nhớ phải định Việc cố ý để mở lúc có bất lợi với ứng dụng giới thực (xem [3]).x, đâuxlà giá trị 2; cho mô-đun DRAM hiệu suất cao chấp nhận lệnh chu kỳ) Trong ví dụ này, SDRAM phát từ chu kỳ Đây hệ làm DDR truyền hai từ chu kỳ Điều làm giảm thời gian chuyển khơng thay đổi độ trễ Ở hồng tử ple, DDR2 hoạt động giống thực tế, trơng khác Khơng cần phải vào chi tiết Cần lưu ý DDR2 sản xuất nhanh hơn, rẻ hơn, đáng tin cậy tiết kiệm lượng (xem [6] để biết thêm thông tin)các ô DRAM phải liên tục làm sau 64ms theo đặc điểm kỹ thuật JEDEC (Hội đồng Kỹ thuật Thiết bị Điện tử Chung) Bộ nhớ Cache 2.1 Cache gì? Cache hay gọi nhớ đệm, nhớ khay thành phần cấu trúc phân cấp hệ thống nhớ Cache đóng vai trung gian, trung chuyển liệu từ nhớ CPU ngược lại Hình Vị trí nhớ cache hệ thống nhớ Với hệ thống CPU cũ sử dụng cơng nghệ tích hợp thấp, nhớ cache thường nằm CPU; với CPU sử dụng cơng nghệ tích hợp cao, nhớ cache thường tích hợp vào CPU nhằm nâng cao tốc độ băng thông trao đổi liệu CPU cache Dung lượng nhớ cache thường nhỏ so với dung lượng nhớ nhớ ngồi Cache có tốc độ truy cập nhanh nhiều so với nhớ chính, đặc biệt với cache tích hợp vào CPU Tuy nhiên, giá thành nhớ cache (tính theo bit) thường đắt nhiều so với nhớ 2.2 Vai trị ngun lý hoạt động 2.2.1 Vai Trò Do nhớ cache thành phần hệ thống nhớ phân cấp, nên vai trò cache tương tự vai trò cấu trúc phân cấp hệ thống nhớ: tăng hiệu hệ thống vào giảm giá thành sản xuất Sở dĩ cache giúp tăng hiệu hệ thống nhờ cache có khả dung hồ CPU có tốc độ cao nhớ có tốc độ thấp làm cho thời gian trung bình CPU truy nhập liệu từ nhớ tiệm cận thời gian truy nhập cache Ngoài ra, cache loại nhớ “thơng minh” có khả đốn chuẩn bị trước liệu cần thiết cho CPU xử lý nên xác xuất CPU phải trực tiếp truy nhập liệu từ nhớ thấp điều giúp làm giảm thời gian trung bình CPU truy nhập liệu từ nhớ 2.2.2 Nguyên lý hoạt động cache Cache hoạt động dựa hai nguyên lý bản: nguyên lý lân cận không gian (Spatial locality) nguyên lý lân cận thời gian (Temporal locality) Hình Lân cận khơng gian khơng gian chương trình Ngun lý lân cận khơng gian phát biểu sau: “Nếu nhớ truy nhập xác xuất nhớ liền kề với truy nhập tương lai gần cao” Lân cận khơng gian thường áp dụng cho nhóm lệnh liệu có tính cao khơng gian chương trình Do lệnh chương trình thường tuần tự, cache đọc khối lệnh từ nhớ khối lệnh đọc bao phủ ô nhớ lân cận (neighbour cell) ô nhớ truy nhập (current cell) Khác với nguyên lý lân cận không gian, nguyên lý lân cận thời gian trọng đến tính lặp lại việc truy nhập mẩu thông tin khoảng thời gian tương đối ngắn Có thể phát biểu nguyên lý sau: “Nếu ô nhớ truy nhập xác xuất truy nhập lại tương lai gần cao” Lân cận thời gian áp dụng cho liệu nhóm lệnh vịng lặp Với phần tử liệu, chúng CPU cập nhập thường xuyên q trình thực chương trình nên có tính lân cận cao thời gian Với lệnh vòng lặp, chúng thường CPU thực lặp lặp lại nhiều lần nên có tính lân cận cao thời gian; cache nạp sẵn khối lệnh chứa vịng lặp phủ tính lân cận thời gian Hình Lân cận thời gian với việc thực vòng lặp 2.2.3 Trao đổi liệu CPU – cache Hình Trao đổi liệu CPU với cache nhớ CPU trao đổi liệu với cache theo đơn vị sở byte, từ từ kép Còn cache trao đổi liệu với nhớ theo khối, với kích thước 16, 32 64 bytes Sở dĩ CPU trao đổi liệu với cache theo đơn vị sở mà không theo khối liệu lưu ghi CPU – vốn có dung lượng hạn chế Vì vậy, CPU trao đổi phần tử liệu cần thiết theo yêu cầu lệnh Ngược lại, cache trao đổi liệu với nhớ theo khối, khối gồm nhiều byte kề với mục đích bao phủ mẩu liệu lân cận theo không gian thời gian Ngoài ra, trao đổi liệu theo khối (hay mẻ) với nhớ giúp cache tận dụng tốt băng thông đường truyền nhờ tăng tốc độ truyền liệu 2.2.4 Các hệ số Hit Miss Hit (đoán trúng) kiện mà CPU truy nhập mục tin mục tin có cache Xác suất để có hit gọi hệ số hit, H Dễ thấy hệ số hit H thuộc khoảng (0, 1) Hệ số hit cao hiệu cache cao Ngược lại, Miss (đoán trượt) kiện mà CPU truy nhập mục tin mục tin khơng có cache Xác suất miss gọi hệ số miss, 1-H Cũng thấy hệ số miss 1-H thuộc khoảng (0, 1) Hệ số miss thấp hiệu cache cao 2.3 Các dạng kiến trúc cache 2.3.1 Kiến trúc Look Aside Trong kiến trúc Look Aside, cache nhớ kết nối vào bus hệ thống Như vậy, cache nhớ “thấy” chu kỳ bus CPU thời điểm Kiến trúc Look Aside có thiết kế đơn giản, dễ thực Tuy nhiên, kiện hit kiến trúc thường chậm cache kết nối với CPU sử dụng bus hệ thống – thường có tần số làm việc không cao băng thông hẹp Bù lại, kiện miss kiến trúc Look Aside thường nhanh CPU khơng tìm thấy mục tin cache, đồng thời tìm mục tin nhớ chu kỳ xung nhịp Hình Kiến trúc cache kiểu Look Aside 2.3.2 Kiến trúc Look Through Trong kiến trúc kiểu Look Through, cache đặt nằm CPU nhớ Như cache “thấy” chu kỳ bus CPU trước, “truyền” lại cho nhớ Cache kết nối với CPU hệ thống bus riêng tốc độ cao băng thông lớn, thường bus mặt sau (BSB – Back Side Bus) Cache kết nối với nhớ thơng qua bus hệ thống hay bus mặt trước (FSB – Front Side Bus) FSB thường có tần số làm việc băng thơng thấp nhiều so với BSB Kiến trúc Look Through phức tạp kiến trúc Look Aside Ưu điểm kiến trúc kiện hit kiến trúc thường nhanh CPU kết nối với cache kênh riêng có tốc độ cao Tuy nhiên, kiện miss kiến trúc Look Through thường chậm CPU khơng tìm thấy mục tin cache, cần tìm mục tin nhớ chu kỳ xung nhịp Hình Kiến trúc cache kiểu Look Through 2.4 Các phương pháp đọc ghi Việc trao đổi thông tin CPU – cache cache – nhớ vấn đề có ảnh hưởng lớn đến hiệu cache Câu hỏi đặt cần có sách trao đổi hay đọc ghi thơng tin thành phần để đạt hệ số hit cao giảm thiểu miss Xét trường hợp đọc thơng tin trường hợp hit (mẩu tin cần đọc có cache): mẩu tin đọc từ cache vào CPU nhớ khơng tham gia Như thời gian CPU truy nhập mẩu tin thời gian CPU truy nhập cache Ngược lại, đọc thơng tin trường hợp miss (mẩu tin cần đọc khơng có cache): mẩu tin trước hết chuyển từ nhớ vào cache, sau đọc từ cache vào CPU Đây trường hợp xấu nhất: thời gian CPU truy nhập mẩu tin thời gian truy nhập cache cộng với thời gian cache truy nhập nhớ – cịn gọi miss penalty (gấp đơi thời gian truy cập đốn trượt) Với trường hợp ghi thơng tin trường hợp hit, áp dụng sách ghi: ghi thẳng (write through) ghi trễ (write back) Với phương pháp ghi thẳng, mẩu tin cần ghi lưu đồng thời cache nhớ Phương pháp ghi ln đảm bảo tính q liệu cache nhớ chính, gây chậm trễ tốn nhiều băng thông tần suất ghi lớn với nhiều mẩu tin có kích thước nhỏ Ngược lại, với phương pháp ghi trễ, mẩu tin trước hết ghi cache dòng cache chứa mẩu tin ghi nhớ bị thay Như vậy, mẩu tin ghi cache nhiều lần, ghi nhớ lần nhất, giúp tăng tốc độ giảm băng thông sử dụng Phương pháp ghi trễ ứng rộng rãi hệ thống cache Với trường hợp ghi thơng tin trường hợp miss, áp dụng hai sách ghi: ghi có đọc lại (write allocate / fetch on write) ghi không đọc lại (write nonallocate) Với phương pháp ghi có đọc lại, mẩu tin trước hết ghi nhớ chính, sau dịng nhớ chứa mẩu tin vừa ghi đọc vào cache Việc đọc lại mẩu tin vừa ghi từ nhớ vào cache giúp giảm miss đọc áp dụng nguyên lý lân cận theo thời gian: mẩu tin vừa truy nhập truy nhập lại tương lai gần Với phương pháp ghi không đọc lại, mẩu tin ghi nhớ Khơng có thao tác đọc dòng nhớ chứa mẩu tin vừa ghi vào cache 2.5 Hiệu cache Hiệu cache (Cache Performance) đánh giá tổng thể theo thời gian truy nhập trung bình CPU đến hệ thống nhớ Thời gian truy nhập trung bình hệ thống nhớ có cache tính sau: Tthời gian truy nhập trung bình hệ thống nhớ tiệm cận thời gian truy nhập cache với trường hợp cache đạt hệ số hit cao 2.6 Các phương pháp giảm miss cho cache 2.6.1 Các loại miss cache Một hệ thống nhớ với cache tốt cần đạt yếu tố: (1) hệ số hit cao, (2) hệ số miss thấp (3) xảy miss khơng q chậm Để có giải pháp giảm miss hiệu quả, ta cần phân biệt rõ loại miss Cụ thể, tồn ba loại miss chính: miss bắt buộc (Compulsory misses), miss dung lượng (Capacity misses) miss xung đột (Conflict misses) Miss bắt buộc 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 lại 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 cache nhỏ nên mã chương trình thường xuyên bị tráo đổi nhớ cache Theo khía cạnh khác, miss xung đột xảy có nhiều dịng nhớ cạnh tranh dòng cache 2.6.2 Các phương pháp giảm miss cho cache Trên sở loại miss đề cập, hai phương pháp giảm miss phối hợp áp dụng nhằm đạt hiểu giảm miss tối đa, gồm: tăng kích thước dịng cache tăng mức độ liên kết cache Biện pháp tăng kích thước dịng cache giúp giảm miss bắt buộc dịng có kích thước lớn có khả bao phủ mục tin lân cận tốt Tuy nhiên, biện pháp làm tăng miss xung đột, dịng kích thước lớn làm giảm số dòng cache, dẫn đến tăng mức độ cạnh tranh dịng nhớ đến dịng cache Ngồi ra, dịng kích thước lớn gây lãng phí dung lượng cache có nhiều phần dịng cache lớn không sử dụng Hiện nay, kích thước dịng cache thường dùng 64 bytes Biện pháp tăng mức độ liên kết cache hay tăng số đường cache giúp giảm miss xung đột, tăng số đường cache làm tăng tính mềm dẻo ánh xạ trang nhớ đến đường cache có nhiều lựa chọn Tuy nhiên, tăng số đường cache lớn, làm cache chậm tăng khơng giam tìm kiếm đường cache Hiện nay, số đường cache hợp lý cho miss tối ưu thường dùng khoảng đường Bộ nhớ ảo 3.1 Tổng quan nhớ ảo Bộ nhớ ảo kĩ thuật quản lý nhớ thực phần mềm phần cứng Nó liên kết địa ô nhớ dùng phần mềm, gọi địa ảo, tới địa vật lý nhớ máy tính Bộ nhớ tác vụ coi khoảng trống có địa liên tiếp tập hợp vùng liên tiếp Hệ điều hành quản lý ô địa ảo phân vùng từ ổ nhớ thực đến ổ nhớ ảo Phần cứng phụ trách xử lý địa nằm CPU, thường gọi tên MMU (đơn vị quản lý nhớ), tự động chuyển địa ảo sang địa vật lý Phần mềm nằm hệ điều hành tạo vùng địa ảo nằm mở rộng khả lưu trữ vật lý nhớ từ chương trình có nhiều nhớ thực tế máy tính có Lợi ích quan trọng nhớ ảo đảm nhiệm giùm ứng dụng quản lý vùng nhớ chia sẻ, tăng độ an toàn cho vùng nhớ giúp chương trình sử dụng nhiều nhớ nhiều nhớ vật lý mà phần cứng máy tính có, dựa kĩ thuật phân trang Đầu vào cho dịch địa thực MMU địa ảo Thường có – có hạn chế giá trị Địa ảo giá trị 32 bit hệ thống 32 bit giá trị 64 bit hệ thống 64 bit Trên số hệ thống, chẳng hạn x86 x86-64, địa sử dụng thực liên quan đến mức hướng dẫn khác: kiến trúc sử dụng phân đoạn đơn giản tạo phần bù thêm vào địa logic Bộ nhớ ảo khiến cho việc lập trình ứng dụng dễ dàng chúng làm ẩn phân mảnh nhớ vật lý, cách ủy thác cho kernel hệ điều hành quản lý phân cấp nhớ (loại bỏ việc chương trình máy tính tự xử lý việc sử dụng chồng ô nhớ) Mỗi ứng dụng sử dụng không gian nhớ định ứng dụng, nhớ ảo ngăn ngừa việc phân bố lại ô nhớ cho truy cập nhớ có địa ảo tương ứng 3.2 Simplest Address Translation (Dịch địa đơn giản nhất) Phần quan trọng nhớ ảo dịch địa ảo sang địa thực MMU ánh xạ lại địa sở trang Cũng giống định địa dòng nhớ cache, địa ảo chia thành phần riêng biệt Những phần sử dụng để lập mục thành bảng khác sử dụng việc xây dựng địa vật lý Hình 3.1: 1-Level Address Translation Hình 3.1 cho thấy phần khác địa ảo sử dụng Phần sử dụng để chọn mục nhập Thư mục Trang; mục thư mục hệ điều hành thiết lập riêng Mục nhập thư mục trang xác định địa trang nhớ vật lý; nhiều mục thư mục trang trỏ đến địa thực Địa vật lý hoàn chỉnh ô nhớ xác định cách kết hợp địa trang từ thư mục trang với bit thấp từ địa ảo Mục nhập thư mục trang chứa số thông tin bổ sung trang quyền truy cập Cấu trúc liệu cho thư mục trang lưu trữ nhớ Hệ điều hành phải cấp phát nhớ vật lý liền kề lưu trữ địa sở vùng nhớ ghi đặc biệt Các bit thích hợp địa ảo sau sử dụng mục vào thư mục trang, thực chất mảng mục nhập thư mục Ví dụ cụ thể, bố cục sử dụng cho trang 4MB máy x86 Phần Offset địa ảo có kích thước 22 bit, đủ để giải byte trang 4MB 10 bit lại địa ảo chọn 1024 mục thư mục trang Mỗi mục nhập chứa địa sở 10 bit trang 4MB kết hợp với phần bù để tạo thành địa 32 bit hoàn chỉnh 3.3 Bảng trang nhiều cấp Các trang 4MB tiêu chuẩn, chúng lãng phí nhiều nhớ nhiều hoạt động mà hệ điều hành phải thực yêu cầu chỉnh với trang nhớ Với trang 4kB (tiêu chuẩn máy 32 bit thường máy 64 bit), phần Offset địa ảo có kích thước 12 bit Điều để lại 20 bit làm chọn thư mục trang Ngay mục nhập có byte, bảng có kích thước 4MB Với tiến trình có khả có thư mục trang riêng biệt, phần lớn nhớ vật lý hệ thống bị ràng buộc cho thư mục trang Giải pháp sử dụng nhiều cấp độ bảng trang Mức độ sau tạo thành thư mục trang lớn, thưa thớt; vùng không gian địa không thực sử dụng không yêu cầu nhớ cấp phát Do đó, biểu diễn nhỏ gọn nhiều, giúp có bảng trang cho nhiều quy trình nhớ mà không ảnh hưởng nhiều đến hiệu suất Hình 3.2: Dịch địa cấp Ngày nay, cấu trúc bảng trang phức tạp bao gồm bốn cấp độ Hình 3.2 cho thấy sơ đồ việc triển khai Trong ví dụ này, địa ảo chia thành năm phần Bốn số phần mục thư mục khác Thư mục cấp tham chiếu cách sử dụng ghi mục đích đặc biệt CPU Nội dung thư mục cấp đến cấp tham chiếu đến thư mục cấp thấp Nếu mục nhập thư mục đánh dấu trống rõ ràng khơng cần phải trỏ đến thư mục Bằng cách này, bảng trang thưa nhỏ gọn Các mục nhập thư mục cấp 1, giống Hình 3.1, phần địa vật lý, cộng với liệu phụ trợ quyền truy cập Để xác định địa vật lý tương ứng với địa ảo, trước tiên xử lý xác định địa thư mục cấp cao Địa thường lưu sổ đăng ký Sau đó, CPU lấy phần mục địa ảo tương ứng với thư mục sử dụng mục để chọn mục nhập thích hợp Mục nhập địa thư mục tiếp theo, lập mục cách sử dụng phần địa ảo Quá trình tiếp tục đến thư mục cấp 1, lúc giá trị mục nhập thư mục phần cao địa vật lý Địa vật lý hoàn thành cách thêm bit bù trang từ địa ảo Quá trình gọi bước trang Một số xử lý (như x86 x86-64) thực thao tác phần cứng, khác cần hỗ trợ từ HĐH Mỗi tiến trình chạy hệ thống cần bảng trang riêng Có thể chia sẻ phần trường hợp ngoại lệ Do đó, tốt cho hiệu suất khả mở rộng nhớ bảng trang nhỏ tốt Trường hợp lý tưởng cho việc đặt nhớ sử dụng gần không gian địa ảo; địa vật lý thực tế sử dụng không quan trọng Một chương trình nhỏ có cách sử dụng thư mục cấp 2, và vài thư mục cấp Trên x86-64 với 4kB trang 512 mục thư mục, điều cho phép định địa 2MB với tổng số thư mục (một cho cấp) 1GB nhớ liền kề giải thư mục cho cấp đến 512 thư mục cho cấp 3.4 Tối ưu hóa bảng trang nhiều cấp Tất cấu trúc liệu cho bảng trang lưu giữ nhớ chính; nơi hệ điều hành xây dựng cập nhật bảng Khi tạo quy trình thay đổi bảng trang, CPU thơng báo Các bảng trang sử dụng để phân giải địa ảo thành địa thực cách sử dụng hướng dẫn bảng trang mô tả Thơng tin thêm vấn đề: thư mục cho cấp sử dụng trình phân giải địa ảo Điều yêu cầu tối đa bốn quyền truy cập nhớ (cho lần truy cập trình chạy), điều chậm Có thể coi mục bảng thư mục liệu bình thường lưu chúng vào nhớ cache L1d, L2, v.v., điều chậm Từ ngày nhớ ảo, nhà thiết kế CPU sử dụng cách tối ưu hóa khác Một phép tính đơn giản cho thấy giữ mục bảng thư mục L1d nhớ cache cao dẫn đến hiệu suất khủng khiếp Mỗi phép tính địa tuyệt đối yêu cầu số truy cập L1d tương ứng với độ sâu bảng trang Các truy cập khơng thể song song chúng phụ thuộc vào kết tra cứu trước Riêng điều này, máy có bốn cấp bảng trang, cần 12 chu kỳ Thêm vào xác suất bỏ lỡ L1d kết khơng có mà đường dẫn lệnh che giấu Các truy cập L1d bổ sung đánh cắp băng thông quý giá vào nhớ đệm Vì vậy, thay lưu vào đệm mục bảng thư mục, việc tính tốn hồn chỉnh địa trang vật lý lưu vào đệm Vì lý tương tự mà mã nhớ cache liệu hoạt động, việc tính tốn địa lưu nhớ cache có hiệu Vì phần bù trang địa ảo khơng đóng vai trị việc tính tốn địa trang vật lý, nên phần lại địa ảo sử dụng làm thẻ cho nhớ cache Tùy thuộc vào kích thước trang, điều có nghĩa hàng trăm hàng nghìn hướng dẫn đối tượng liệu chia sẻ thẻ tiền tố địa thực Bộ nhớ đệm mà giá trị tính lưu trữ gọi Bộ đệm xem xét dịch (TLB) Nó thường nhớ cache nhỏ phải nhanh Các CPU đại cung cấp đệm TLB nhiều cấp, giống nhớ đệm khác; nhớ đệm cấp cao lớn chậm Kích thước nhỏ L1TLB thường bù đắp cách làm cho nhớ cache kết hợp hoàn tồn với sách loại bỏ LRU Gần đây, nhớ cache tăng kích thước trình này, thay đổi để đặt liên kết Do đó, khơng phải mục nhập cũ bị loại bỏ thay phải thêm mục nhập Như lưu ý trên, thẻ sử dụng để truy cập TLB phần địa ảo Nếu thẻ có khớp nhớ cache, địa vật lý cuối tính cách thêm phần bù trang từ địa ảo vào giá trị lưu nhớ cache Đây trình nhanh; phải có địa vật lý phải có sẵn cho lệnh sử dụng địa tuyệt đối và, số trường hợp, tra cứu L2 sử dụng địa vật lý làm khóa 3.5 Tác động ảo hóa Ảo hóa hình ảnh hệ điều hành ngày trở nên phổ biến hơn; điều có nghĩa lớp xử lý nhớ khác thêm vào hình ảnh Ảo hóa quy trình (về nhà tù) vùng chứa hệ điều hành không thuộc loại có hệ điều hành có liên quan Các công nghệ Xen KVM cho phép – có khơng có trợ giúp từ q trình thực thi hình ảnh hệ điều hành độc lập Trong tình này, có phần mềm kiểm soát trực tiếp quyền truy cập vào nhớ vật lý Hình 3.3:Mơ hình ảo hóa Xen Trong trường hợp Xen (xem Hình 4.4) Xen VMM phần mềm Tuy nhiên, VMM khơng thực nhiều điều khiển phần cứng khác Không giống VMM hệ thống khác, trước (và phiên Xen VMM), phần cứng bên nhớ xử lý điều khiển miền Dom0 đặc quyền Hiện tại, nhân giống nhân DomU không đặc quyền liên quan đến việc xử lý nhớ, chúng không khác Điều quan trọng VMM phân phối nhớ vật lý cho nhân Dom0 DomU, sau thực xử lý nhớ thông thường thể chúng chạy trực tiếp xử lý Để thực việc phân tách miền cần thiết cho q trình ảo hóa hồn tất, ghi nhớ xử lý ory hạt nhân Dom0 DomU khơngkhơng phải có quyền truy cập khơng hạn chế vào nhớ vật lý VMM không cung cấp nhớ cách cung cấp trang vật lý riêng lẻ cho phép hệ điều hành khách xử lý địa chỉ; điều không cung cấp bảo vệ chống lại miền khách bị lỗi giả mạo Thay vào đó, VMM tạo bảng trang riêng cho miền khách cấp nhớ cách sử dụng cấu trúc liệu Điều tốt kiểm sốt quyền truy cập vào thông tin quản trị bảng trang Nếu mã khơng có đặc quyền thích hợp, khơng thể làm điều Kiểm sốt truy cập khai thác ảo hóa mà Xen cung cấp, ảo hóa para- hay phần cứng (hay gọi đầy đủ) sử dụng Các miền khách xây dựng bảng trang chúng cho q trình theo cách có chủ đích giống ảo hóa phần cứng phần cứng Bất hệ điều hành khách sửa đổi bảng trang nó, VMM gọi Sau đó, VMM sử dụng thơng tin cập nhật miền khách để cập nhật bảng trang bóng Đây bảng trang thực sử dụng phần cứng Rõ ràng, trình tốn kém: sửa đổi bảng trang yêu cầu lệnh gọi VMM Mặc dù thay đổi ánh xạ nhớ không rẻ khơng có ảo hóa, chúng chí cịn trở nên đắt Các chi phí bổ sung thực lớn, thay đổi từ hệ điều hành khách sang VMM thân chúng tốn Đây lý xử lý bắt đầu có thêm chức để tránh việc tạo bảng trang bóng Điều tốt khơng lo ngại tốc độ mà cịn làm giảm mức tiêu thụ nhớ VMM Số lượng công việc cần thiết cho lần sửa đổi không gian địa vấn đề với hệ điều hành ảo hóa Tuy nhiên, có vấn đề khác cố hữu ảo hóa dựa VMM: khơng có cách để có hai lớp xử lý nhớ Cách tiếp cận Xen việc sử dụng VMM riêng biệt làm cho việc xử lý tối ưu (hoặc chí tốt) trở nên khó khăn tất phức tạp việc triển khai quản lý nhớ, bao gồm thứ “tầm thường” khám phá vùng nhớ, phải chép VMM Hệ điều hành có triển khai đầy đủ tối ưu hóa; người thực muốn tránh chép chúng Hình 3.4:Mơ hình ảo hóa KVM Hình 4.5 cho thấy phần mở rộng nhân Linux KVM cố gắng giải vấn đề Khơng có VMM riêng biệt chạy trực tiếp phần cứng kiểm soát tất khách; thay vào đó, nhân Linux bình thường đảm nhận chức Điều có nghĩa chức xử lý nhớ hoàn chỉnh phức tạp nhân Linux sử dụng để quản lý nhớ hệ thống Miền khách chạy với quy trình cấp người dùng thơng thường mà người sáng tạo gọi "chế độ khách" Chức ảo hóa, ảo hóa tồn phần tồn bộ, kiểm soát KVM VMM Đây quy trình cấp người dùng khác, xảy để kiểm sốt miền khách cách sử dụng thiết bị KVM đặc biệt mà hạt nhân thực Lợi ích mơ hình so với VMM riêng biệt mơ hình Xen là, có hai trình xử lý nhớ hoạt động hệ điều hành khách sử dụng, cần có triển khai, nhân Linux Không cần thiết phải chép chức đoạn mã khác Xen VMM Điều dẫn đến cơng việc hơn, lỗi có lẽ, ma sát hai trình xử lý nhớ chạm vào trình xử lý nhớ máy khách Linux đưa giả định tương tự trình xử lý nhớ nhân Linux bên chạy phần cứng trống Nhìn chung, lập trình viên phải lưu ý rằng, với việc sử dụng ảo hóa, chi phí bỏ sót nhớ cache (lệnh, liệu TLB) chí cịn cao so với khơng ảo hóa Bất kỳ tối ưu hóa làm giảm cơng việc mang lại hiệu nhiều môi trường ảo hóa ... 1 RAM 1.1 Tổng quát RAM 1.2 Phân loại RAM .4 1.2.1 RAM Tĩnh .4 1.2.2 RAM Động 1.3 Các Thông số RAM 1.4 Truy cập DRAM ... sử dụng chúng 1 RAM 1.1 Tổng quát RAM RAM (viết tắt Random Access Memory) loại nhớ khả biến cho phép truy xuất đọc-ghi ngẫu nhiên đến vị trí nhớ dựa theo địa nhớ Thông tin lưu RAM tạm thời, chúng... hao tụ điện 1.3 Các Thông số RAM  Dung lượng - Dung lượng RAM tính MB GB, thơng thường RAM thiết kế với dung lượng 256mb,512 mb,1gb,2gb,3gb,4gb,8gb - Dung lượng RAM lớn tốt cho hệ thống, nhiên

Ngày đăng: 27/09/2022, 05:08

Hình ảnh liên quan

Hình 2.4 mơ tả cấu trúc của một tế bào SRA M6 bóng bán dẫn. - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Hình 2.4.

mơ tả cấu trúc của một tế bào SRA M6 bóng bán dẫn Xem tại trang 5 của tài liệu.
Hình 2.7 cho thấy một chip DRA Mở mức rất cao. - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Hình 2.7.

cho thấy một chip DRA Mở mức rất cao Xem tại trang 7 của tài liệu.
Hình 2.8 cho thấy hoạt động trên một số đầu nối của mô-đun DRAM xảy ra ở ba pha có màu khác nhau - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Hình 2.8.

cho thấy hoạt động trên một số đầu nối của mô-đun DRAM xảy ra ở ba pha có màu khác nhau Xem tại trang 9 của tài liệu.
Hình 2. Lân cận về khơng gian trong khơng gian chương trình - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Hình 2..

Lân cận về khơng gian trong khơng gian chương trình Xem tại trang 11 của tài liệu.
Hình 3. Lân cận về thời gian với việc thực hiện vòng lặp - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Hình 3..

Lân cận về thời gian với việc thực hiện vòng lặp Xem tại trang 12 của tài liệu.
Hình 4. Trao đổi dữ liệu giữa CPU với cache và bộ nhớ chính - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Hình 4..

Trao đổi dữ liệu giữa CPU với cache và bộ nhớ chính Xem tại trang 12 của tài liệu.
Hình 5. Kiến trúc cache kiểu Look Aside - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Hình 5..

Kiến trúc cache kiểu Look Aside Xem tại trang 13 của tài liệu.
Hình 6. Kiến trúc cache kiểu Look Through - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

Hình 6..

Kiến trúc cache kiểu Look Through Xem tại trang 14 của tài liệu.
Ngày nay, cấu trúc bảng trang phức tạp nhất bao gồm bốn cấp độ. Hình 3.2 cho thấy các sơ đồ của việc triển khai như vậy - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

g.

ày nay, cấu trúc bảng trang phức tạp nhất bao gồm bốn cấp độ. Hình 3.2 cho thấy các sơ đồ của việc triển khai như vậy Xem tại trang 19 của tài liệu.
Ảo hóa hình ảnh hệ điều hành sẽ ngày càng trở nên phổ biến hơn; điều này có nghĩa là một lớp xử lý bộ nhớ khác được thêm vào hình ảnh - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

o.

hóa hình ảnh hệ điều hành sẽ ngày càng trở nên phổ biến hơn; điều này có nghĩa là một lớp xử lý bộ nhớ khác được thêm vào hình ảnh Xem tại trang 21 của tài liệu.
và phần cứng. Bất cứ khi nào hệ điều hành khách sửa đổi các bảng trang của nó, VMM sẽ được gọi - BÁO cáo bài tập lớn kĩ THUẬT máy TÍNH  tổng quát về RAM

v.

à phần cứng. Bất cứ khi nào hệ điều hành khách sửa đổi các bảng trang của nó, VMM sẽ được gọi Xem tại trang 22 của tài liệu.

Tài liệu cùng người dùng

Tài liệu liên quan