Bài giảng Hệ thống máy tính: Chương 2 - Nguyễn Kim Khánh giới thiệu đến các bạn kiến thức như tổng quan về hệ thống nhớ bộ nhớ bán dẫn, bộ nhớ chính, bộ nhớ Cache, bộ nhớ ảo, hệ thống lưu trữ RAID. Để nắm vững hơn nội dung kiến thức bài giảng mời các bạn cùng tham khảo tài liệu.
Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Hệ thống máy tính Nội dung học phần Chương KIẾN TRÚC BỘ NHỚ Chương Giới thiệu chung Chương Kiến trúc nhớ Chương Kiến trúc vào-ra Chương Kiến trúc xử lý Chương Kiến trúc máy tính tiên tiến Nguyễn Kim Khánh Trường Đại học Bách khoa Hà Nội September 2009 NKK-HUT September 2009 NKK-HUT 2.1 Tổng quan hệ thống nhớ Nội dung Các đặc trưng hệ thống nhớ Vị trí 2.1 Tổng quan hệ thống nhớ 2.2 Bộ nhớ bán dẫn 2.3 Bộ nhớ 2.4 Bộ nhớ cache 2.5 Bộ nhớ ảo 2.6 Hệ thống lưu trữ RAID Bên CPU: Bộ nhớ trong: Nguyễn Kim Khánh - ĐHBKHN nhớ nhớ cache Bộ nhớ ngồi: thiết bị nhớ Dung lượng September 2009 tập ghi Độ dài từ nhớ (tính bit) Số lượng từ nhớ September 2009 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Các đặc trưng hệ thống nhớ (tiếp) Đơn vị truyền Các đặc trưng hệ thống nhớ (tiếp) Từ nhớ Khối nhớ Phương pháp truy nhập Truy nhập (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) September 2009 Hiệu (performance) Kiểu vật lý NKK-HUT Thời gian truy nhập Chu kỳ nhớ Tốc độ truyền Bộ nhớ bán dẫn Bộ nhớ từ Bộ nhớ quang September 2009 NKK-HUT Các đặc trưng hệ thống nhớ (tiếp) Các đặc tính vật lý Phân cấp hệ thống nhớ Khả biến / Không khả biến (volatile / nonvolatile) Xố / khơng xố Tổ chức September 2009 Nguyễn Kim Khánh - ĐHBKHN September 2009 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Ví dụ hệ thống nhớ thơng dụng Ngun lý cục hoá tham chiếu nhớ Trong khoảng thời gian đủ nhỏ CPU thường tham chiếu thơng tin khối nhớ cục Ví dụ: Cấu trúc chương trình Vịng lặp có thân nhỏ Cấu trúc liệu mảng Từ trái sang phải: dung lượng tăng dần tốc độ giảm dần giá thành/1bit giảm dần September 2009 NKK-HUT September 2009 NKK-HUT 2.2 Bộ nhớ bán dẫn ROM (Read Only Memory) Phân loại Kiểu nhớ Read Only Memory (ROM) Programmable ROM (PROM) Erasable PROM (EPROM) Electrically Erasable PROM (EEPROM) Tiêu chuẩn Bộ nhớ đọc Bộ nhớ đọc Flash memory Random Access Memory (RAM) Bộ nhớ đọc-ghi September 2009 Nguyễn Kim Khánh - ĐHBKHN Khả xoá Khơng xố tia cực tím, chip điện, mức byte 10 Cơ chế ghi Tính khả biến Mặt nạ Bộ nhớ không khả biến Lưu trữ thông tin sau: Bằng điện Khơng khả biến Thư viện chương trình Các chương trình điều khiển hệ thống (BIOS) Các bảng chức Vi chương trình điện, khối điện, mức byte Bằng điện Khả biến 11 September 2009 12 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Các kiểu ROM ROM mặt nạ: thông tin ghi sản xuất đắt Cần thiết bị chuyên dụng để ghi chương trình Ỉ ghi lần Có thể ghi theo byte Xóa điện Flash memory (Bộ nhớ cực nhanh) EPROM (Erasable PROM) EEPROM (Electrically Erasable PROM) PROM (Programmable ROM) Các kiểu ROM (tiếp) Ghi theo khối Xóa điện Cần thiết bị chuyên dụng để ghi chương trình Ỉ ghi nhiều lần Trước ghi lại, xóa tia cực tím September 2009 13 NKK-HUT September 2009 14 NKK-HUT RAM (Random Access Memory) SRAM (Static) – RAM tĩnh 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 DRAM (Static and Dynamic) September 2009 Nguyễn Kim Khánh - ĐHBKHN Các bit lưu trữ 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 nhớ cache 15 September 2009 16 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT DRAM (Dynamic) – RAM động Một số DRAM tiên tiến Các bit lưu trữ 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 Rẻ tiền Dùng làm nhớ September 2009 17 NKK-HUT Enhanced DRAM Cache DRAM Synchronous DRAM (SDRAM): làm việc đồng xung clock DDR-SDRAM (Double Data Rate SDRAM) September 2009 18 NKK-HUT Tổ chức chip nhớ Sơ đồ chip nhớ Các tín hiệu chip nhớ Các ng a ch: An-1 ữ A0 ặ cú 2n t nh Cỏc ng d liu: Dm-1 ữ D0 ặ dài từ nhớ = 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) Tín hiệu điều khiển đọc OE (Output Enable) Tín hiệu điều khiển ghi WE (Write Enable) (Các tín hiệu điều khiển thường tích cực với mức 0) September 2009 Nguyễn Kim Khánh - ĐHBKHN 19 September 2009 20 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Tổ chức DRAM Chip nhớ Dùng n đường địa dồn kênh Ỉ cho phép truyền 2n bit địa Tín hiệu chọn địa hàng RAS (Row Address Select) Tín hiệu chọn địa cột CAS (Column Address Select) Dung lượng DRAM= 22n x m bit September 2009 21 NKK-HUT September 2009 22 NKK-HUT Thiết kế mô-đun nhớ bán dẫn Tăng độ dài từ nhớ VD1: Cho chip nhớ SRAM 4K x bit Thiết kế mô-đun nhớ 4K x bit Giải: Dung lượng chip nhớ = 212 x bit chip nhớ có: Dung lượng chip nhớ 2n x m bit Cần thiết kế để tăng dung lượng: Thiết kế tăng độ dài từ nhớ Thiết kế tăng số lượng từ nhớ Thiết kế kết hợp mô-đun nhớ cần có: September 2009 Nguyễn Kim Khánh - ĐHBKHN 23 12 chân địa chân liệu September 2009 12 chân địa chân liệu 24 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Ví dụ tăng độ dài từ nhớ Bài toán tăng độ dài từ nhớ tổng quát September 2009 25 NKK-HUT Cho chip nhớ 2n x mbit Thiết kế mô-đun nhớ 2n x (k.m) bit Dùng k chip nhớ September 2009 26 NKK-HUT Tăng số lượng từ nhớ Tăng số lượng từ nhớ VD2: Cho chip nhớ SRAM 4K x bit Thiết kế mô-đun nhớ 8K x bit Giải: Dung lượng chip nhớ = 212 x bit chip nhớ có: 12 chân địa chân liệu Dung lượng mô-đun nhớ = 213 x bit 13 chân địa chân liệu September 2009 Nguyễn Kim Khánh - ĐHBKHN 27 G A 0 1 1 x 1 September 2009 Y0 Y1 28 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Bài tập Bộ giải mã 2Ỉ4 Tăng số lượng từ gấp lần: Cho chip nhớ SRAM 4K x bit Thiết kế mô-đun nhớ 16K x bit Tăng số lượng từ gấp lần: Cho chip nhớ SRAM 4K x bit Thiết kế mô-đun nhớ 32K x bit Thiết kế kết hợp: G B A Y0 Y1 Y2 Y3 0 0 1 0 1 1 1 1 1 1 1 x x 1 1 Cho chip nhớ SRAM 4K x bit Thiết kế mô-đun nhớ 8K x bit September 2009 29 NKK-HUT September 2009 30 NKK-HUT 2.3 Bộ nhớ Tổ chức nhớ đan xen (interleaved memory) Các đặc trưng Chứa chương trình thực liệu sử dụng Tồn hệ thống máy tính Bao gồm ngăn nhớ đánh địa trực tiếp CPU Dung lượng nhớ nhỏ không gian địa nhớ mà CPU quản lý Việc quản lý logic nhớ tuỳ thuộc vào hệ điều hành September 2009 Nguyễn Kim Khánh - ĐHBKHN Độ rộng bus liệu để trao đổi với nhớ: m = 8, 16, 32, 64,128 bit Các ngăn nhớ tổ chức theo byte Ỉ tổ chức nhớ vật lý khác 31 September 2009 32 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT m=8bit Ỉ băng nhớ tuyến tính September 2009 m = 16bit Ỉ hai băng nhớ đan xen 33 NKK-HUT September 2009 34 NKK-HUT m = 32bit Ỉ bốn băng nhớ đan xen September 2009 Nguyễn Kim Khánh - ĐHBKHN m = 64bit Ỉ tám băng nhớ đan xen 35 September 2009 36 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT 2.4 Bộ nhớ đệm nhanh (cache memory) Ví dụ thao tác cache Nguyên tắc chung cache Cache có tốc độ nhanh nhớ Cache đặt CPU nhớ nhằm tăng tốc độ CPU truy cập nhớ Cache đặt chip CPU September 2009 37 NKK-HUT CPU yêu cầu nội dung ngăn nhớ CPU kiểm tra cache với liệu Nếu có, CPU nhận liệu từ cache (nhanh) Nếu khơng có, đọc Block nhớ chứa liệu từ nhớ vào cache Tiếp chuyển liệu từ cache vào CPU September 2009 38 NKK-HUT Cấu trúc chung cache / nhớ Cấu trúc chung cache / nhớ (tiếp) September 2009 Nguyễn Kim Khánh - ĐHBKHN 39 Bộ nhớ có 2N byte nhớ Bộ nhớ cache chia thành khối có kích thước 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 Block = 8,16,32,64,128 byte September 2009 40 10 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Các phương pháp ánh xạ Cấu trúc chung cache / nhớ (tiếp) Một số Block nhớ nạp vào Line cache Nội dung Tag (thẻ nhớ) cho biết Block nhớ chứa Line Khi CPU truy nhập (đọc/ghi) từ nhớ, có hai khả xảy ra: Từ nhớ có cache (cache hit) Từ nhớ khơng có cache (cache miss) September 2009 41 NKK-HUT 42 Minh hoạ ánh xạ trực tiếp Mỗi Block nhớ nạp vào Line cache: September 2009 NKK-HUT Ánh xạ trực tiếp (Chính phương pháp tổ chức 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) B0 Ỉ L0 B1 Ỉ L1 Bm-1 Ỉ Lm-1 Bm Æ L0 Bm+1 Æ L1 Tổng quát Bj nạp vào L j mod m m số Line cache September 2009 Nguyễn Kim Khánh - ĐHBKHN 43 September 2009 44 11 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Đặc điểm ánh xạ trực tiếp Mỗi địa N bit nhớ gồm ba trường: Ánh xạ liên kết toàn phần Trường Word gồm W bit xác định từ nhớ Block hay Line: 2W = kích thước Block hay Line Trường Line gồm L bit xác định số Line cache: 2L = số Line cache = m Trường Tag gồm T bit: T = N - (W+L) Bộ so sánh đơn giản Xác suất cache hit thấp September 2009 Mỗi Block nạp vào Line cache Địa nhớ bao gồm hai trường: 45 NKK-HUT Trường Word giống trường hợp Trường Tag dùng để xác định Block nhớ Tag xác định Block nằm Line September 2009 46 NKK-HUT Minh hoạ ánh xạ liên kết toàn phần Đặc điểm ánh xạ liên kết toàn phần September 2009 Nguyễn Kim Khánh - ĐHBKHN 47 So sánh đồng thời với tất Tag Ỉ nhiều thời gian Xác suất cache hit cao Bộ so sánh phức tạp September 2009 48 12 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Ánh xạ liên kết tập hợp Cache đươc chia thành Tập (Set) Mỗi Set chứa số Line Ví dụ: Minh hoạ ánh xạ liên kết tập hợp Line/Set Ỉ 4-way associative mapping Ánh xạ theo ngun tắc sau: B0 Ỉ S0 B1 Æ S1 B2 Æ S2 September 2009 49 NKK-HUT September 2009 50 NKK-HUT Đặc điểm ánh xạ liên kết tập hợp Ví dụ ánh xạ địa Kích thước Block = 2W Word Trường Set có S bit dùng để xác định số V = 2S Set Trường Tag có T bit: T = N - (W+S) Tổng quát cho hai phương pháp Thông thường 2,4,8,16Lines/Set Không gian địa nhớ = 4GB Dung lượng nhớ cache 256KB Kích thước Line (Block) = 32byte Xác định số bit trường địa cho ba trường hợp tổ chức: September 2009 Nguyễn Kim Khánh - ĐHBKHN 51 September 2009 Á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 đường 52 13 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Với ánh xạ trực tiếp Với ánh xạ liên kết toàn phần Bộ nhớ = 4GB = 232 byte Ỉ N = 32 bit Cache = 256 KB = 218 byte Line = 32 byte = 25 byte Ỉ W = bit Số Line cache = 218/ 25 = 213 Line Ỉ L = 13 bit T = 32 - (13 + 5) = 14 bit September 2009 53 NKK-HUT Bộ nhớ = 4GB = 232 byte Ỉ N = 32 bit Line = 32 byte = 25 byte Ỉ W = bit Số bit trường Tag là: T = 32 - = 27 bit September 2009 54 NKK-HUT Với ánh xạ liên kết tập hợp đường Bài tập Bộ nhớ = 4GB = 232 byte Æ N = 32 bit Line = 32 byte = 25 byte Ỉ W = bit Số Line cache = 218/ 25 = 213 Line Một Set có Line = 22 Line Ỉ số Set cache = 213/ 22 = 211 Set Ỉ S = 11 bit Số bit trường Tag là: T = 32 - (11 + 5) = 16 bit Giả thiết máy tính có 128KB cache tổ chức theo kiểu ánh xạ liên kết tập hợp 4-line Cache có tất 1024 Set từ S0 đến S1023 Địa nhớ 32-bit đánh địa cho byte September 2009 Nguyễn Kim Khánh - ĐHBKHN a) Tính số bit cho trường địa truy nhập cache ? b) Xác định byte nhớ có địa 003D02AF(16) ánh xạ vào Set cache ? 55 September 2009 56 14 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Thuật giải thay (1): Ánh xạ trực tiếp Thuật giải thay (2): Ánh xạ liên kết Không phải lựa chọn Mỗi Block ánh xạ vào Line xác định Thay Block Line Được thực phần cứng (nhanh) Random: Thay ngẫu nhiên September 2009 57 NKK-HUT FIFO (First In First Out): Thay Block nằm lâu Set LFU (Least Frequently Used): Thay Block Set có số lần truy nhập khoảng thời gian LRU (Least Recently Used): Thay Block Set tương ứng có thời gian lâu không tham chiếu tới Tối ưu nhất: LRU September 2009 58 NKK-HUT Phương pháp ghi liệu cache hit 2.5 Bộ nhớ ảo (Virtual Memory) Ghi xuyên qua (Write-through): ghi cache nhớ tốc độ chậm Ghi trả sau (Write-back): ghi cache tốc độ nhanh Khái niệm nhớ ảo: gồm nhớ nhớ ngồi mà CPU coi nhớ (bộ nhớ chính) Các kỹ thuật thực nhớ ảo: Block cache bị thay cần phải ghi trả Block nhớ September 2009 Nguyễn Kim Khánh - ĐHBKHN 59 September 2009 Kỹ thuật phân trang (thông dụng): Chia không gian địa nhớ thành trang nhớ có kích thước nằm liền kề Thơng dụng: kích thước trang = 4KBytes Kỹ thuật phân đoạn: Chia khơng gian nhớ thành đoạn nhớ có kích thước thay đổi, đoạn nhớ gối lên 60 15 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Phân trang Cấp phát khung trang Phân chia nhớ thành phần có kích thước gọi khung trang Chia chương trình (tiến trình) thành trang Cấp phát số hiệu khung trang yêu cầu cho tiến trình HĐH trì danh sách khung trang nhớ trống Tiến trình khơng u cầu khung trang liên tiếp Sử dụng bảng trang để quản lý September 2009 61 NKK-HUT September 2009 62 NKK-HUT Địa logic địa vật lý phân trang Nguyên tắc làm việc nhớ ảo phân trang Phân trang theo yêu cầu Lỗi trang September 2009 Nguyễn Kim Khánh - ĐHBKHN 63 Không yêu cầu tất trang tiến trình nằm nhớ Chỉ nạp vào nhớ trang yêu cầu September 2009 Trang u cầu khơng có nhớ HĐH cần hốn đổi trang u cầu vào Có thể cần hốn đổi trang để lấy chỗ Cần chọn trang để đưa 64 16 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Thất bại Lợi ích Q nhiều tiến trình nhớ nhỏ HĐH tiêu tốn toàn thời gian cho việc hốn đổi Có khơng có cơng việc thực Đĩa luôn sáng Giải pháp: Thuật tốn thay trang Giảm bớt số tiến trình chạy Thêm nhớ September 2009 65 NKK-HUT Không cần tồn tiến trình nằm nhớ để chạy Có thể hốn đổi trang u cầu Như chạy tiến trình lớn tổng nhớ sẵn dùng Bộ nhớ gọi nhớ thực Người dùng cảm giác nhớ lớn nhớ thực September 2009 66 NKK-HUT Cấu trúc bảng trang Translation Lookaside Buffer Mỗi tham chiếu nhớ ảo gây hai truy cập nhớ vật lý Sử dụng cache đặc biệt cho bảng trang September 2009 Nguyễn Kim Khánh - ĐHBKHN 67 Tìm điểm vào bảng trang Tìm liệu September 2009 TLB 68 17 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Hoạt động TLB September 2009 Hoạt động TLB Cache 69 NKK-HUT September 2009 70 NKK-HUT 2.6 Hệ thống lưu trữ - RAID Đặc điểm RAID Redundant Array of Inexpensive Disks Redundant Array of Independent Disks Hệ thống nhớ dung lượng lớn September 2009 Nguyễn Kim Khánh - ĐHBKHN 71 Tập đĩa cứng vật lý OS coi ổ logic Ỉ dung lượng lớn Dữ liệu lưu trữ phân tán ổ đĩa vật lý Æ truy cập song song (nhanh) Có thể sử dụng dung lượng dư thừa để lưu trữ thông tin kiểm tra chẵn lẻ, cho phép khôi phục lại thông tin trường hợp đĩa bị hỏng Ỉ an tồn thông tin loại phổ biến (RAID – 6) September 2009 72 18 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT RAID 0, 1, September 2009 RAID & 73 NKK-HUT September 2009 74 NKK-HUT RAID & September 2009 Nguyễn Kim Khánh - ĐHBKHN Ánh xạ liệu RAID 75 September 2009 76 19 Bài giảng Hệ thống máy tính NKK-HUT Hết chương September 2009 Nguyễn Kim Khánh - ĐHBKHN 77 20 ... September 20 09 Nguyễn Kim Khánh - ĐHBKHN 23 12 chân địa chân liệu September 20 09 12 chân địa chân liệu 24 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT Ví dụ tăng độ dài từ nhớ Bài toán tăng... 6) September 20 09 72 18 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT RAID 0, 1, September 20 09 RAID & 73 NKK-HUT September 20 09 74 NKK-HUT RAID & September 20 09 Nguyễn Kim Khánh - ĐHBKHN Ánh xạ... Phân cấp hệ thống nhớ Khả biến / Không khả biến (volatile / nonvolatile) Xố / khơng xố Tổ chức September 20 09 Nguyễn Kim Khánh - ĐHBKHN September 20 09 Bài giảng Hệ thống máy tính NKK-HUT NKK-HUT