Bài giảng Kiến trúc máy tính & hợp ngữ - Chương 6: Bộ nhớ máy tính

pptx 61 trang Hùng Dũng 04/01/2024 430
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính & hợp ngữ - Chương 6: Bộ nhớ máy tính", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptxbai_giang_kien_truc_may_tinh_hop_ngu_chuong_6_bo_nho_may_tin.pptx

Nội dung text: Bài giảng Kiến trúc máy tính & hợp ngữ - Chương 6: Bộ nhớ máy tính

  1. BÀI GIẢNG: KIẾN TRÚC MÁY TÍNH VÀ HỢP NGỮ Chương 6: Bộ nhớ máy tính
  2. Bộ nhớ máy tính 2  6.3.1. Tổng quan hệ thống nhớ  6.3.2. Bộ nhớ bán dẫn  6.3.3. Bộ nhớ chính  6.3.4. Bộ nhớ cache  6.3.5. Bộ nhớ ngoài  6.3.6. Bộ nhớ ảo  6.3.7. Bộ nhớ trên máy tính cá nhân Lê Văn Hiệp
  3. 3.3.1. Tổng quan hệ thống nhớ 3  1. Các đặc trưng của hệ thống nhớ  2. Phân cấp hệ thống nhớ của máy tính Lê Văn Hiệp
  4. 1. Các đặc trưng của hệ thống nhớ 4  Vị trí:  Bên trong CPU: tập thanh ghi  Bộ nhớ trong: bộ nhớ chính và cache  Bộ nhớ ngoài: các thiết bị nhớ  Dung lượng:  Độ dài từ nhớ (tính bằng bit)  Số lượng từ nhớ  Đơn vị truyền:  Theo từng từ nhớ  Theo từng khối (block) nhớ  Phương pháp truy cập:  Truy cập tuần tự (băng từ)  Truy cập trực tiếp (các loại đĩa)  Truy cập ngẫu nhiên (bộ nhớ bán dẫn)  Truy cập liên kết (cache) Lê Văn Hiệp
  5. Các đặc trưng của hệ thống nhớ 5  Hiệu năng:  Thời gian truy cập  Chu kỳ nhớ  Tốc độ truyền  Kiểu vật lý:  Bộ nhớ bán dẫn  Bộ nhớ từ  Bộ nhớ quang  Các đặc tính vật lý:  Khả biến (mất điện thì mất thông tin) / Không khả biến  Xóa được / Không xóa được  Tổ chức Lê Văn Hiệp
  6. 2. Phân cấp hệ thống nhớ của MT 6 Lê Văn Hiệp
  7. Hệ thống nhớ của máy tính (tiếp) 7  Tập thanh ghi (Registers):  Là thành phần nhớ nằm trong CPU, được coi là mức nhớ đầu tiên  Chứa các thông tin phục vụ cho hoạt động ở thời điểm hiện tại của CPU  Bộ nhớ đệm nhanh (Cache):  Bộ nhớ có tốc độ nhanh được đặt giữa CPU và bộ nhớ chính nhằm tăng tốc độ truy cập bộ nhớ của CPU.  Thường được chia thành một vài mức (L1, L2)  Bộ nhớ chính (Main Memory):  Chứa các chương trình và dữ liệu đang được sử dụng.  Bộ nhớ ngoài (External Memory):  Chứa các tài nguyên phần mềm của máy tính. Lê Văn Hiệp
  8. Bộ nhớ máy tính 8  6.3.1. Tổng quan hệ thống nhớ  6.3.2. Bộ nhớ bán dẫn  6.3.3. Bộ nhớ chính  6.3.4. Bộ nhớ cache  6.3.5. Bộ nhớ ngoài  6.3.6. Bộ nhớ ảo  6.3.7. Bộ nhớ trên máy tính cá nhân Lê Văn Hiệp
  9. 6.3.2. Bộ nhớ bán dẫn 9  1. Phân loại  2. Mô hình cơ bản của chip nhớ Lê Văn Hiệp
  10. 1. Phân loại 10  Gồm 2 loại chính: ROM và RAM  ROM (Read Only Memory): bộ nhớ chỉ đọc  Đặc điểm:  Bộ nhớ chủ yếu dùng để đọc thông tin  Bộ nhớ không khả biến  Chứa các chương trình và dữ liệu cố định với hệ thống Lê Văn Hiệp
  11. ROM (tiếp) 11  Các loại bộ nhớ ROM:  Maskable ROM (ROM mặt nạ): thông tin được ghi khi chế tạo  PROM (Programmable ROM):  Khi chế tạo chưa có thông tin  Cho phép ghi thông tin được 1 lần bằng thiết bị chuyên dụng  EPROM (Erasable PROM):  Cho phép xóa bằng tia cực tím  Ghi lại bằng thiết bị nạp EPROM  EEPROM (Electrically Erasable PROM):  Có thể xóa bằng tín hiệu điện và ghi lại thông tin ngay trong mạch làm việc (không cần thiết bị ghi riêng)  Có thể xóa và ghi lại ở mức từng Byte  Dung lượng nhỏ  Flash Memory: giống EEPROM nhưng:  Đọc/ghi theo từng block  Tốc độ rất nhanh  Dung lượng lớn Lê Văn Hiệp
  12. EPROM 12 Lê Văn Hiệp
  13. EPROM 13 Lê Văn Hiệp
  14. PROM 14 Lê Văn Hiệp
  15. EEPROM 15 Lê Văn Hiệp
  16. Bo mạch của PROM 16 Lê Văn Hiệp
  17. RAM (Random Access Memory) 17  RAM (Random Access Memory): bộ nhớ truy cập ngẫu nhiên  Đặc điểm:  Là bộ nhớ đọc/ghi (Read/Write Memory – RWM)  Bộ nhớ khả biến  Chứa các thông tin tạm thời Lê Văn Hiệp
  18. RAM (tiếp) 18  Các loại bộ nhớ RAM:  SRAM (Static): RAM tĩnh  Mỗi phần tử nhớ là một mạch lật 2 trạng thái ổn định → thông tin trên SRAM ổn định  Tốc độ nhanh  Dung lượng chip nhớ nhỏ  Giá thành đắt  Thường dùng làm bộ nhớ Cache  DRAM (Dynamic): RAM động  Mỗi phần tử nhớ là một tụ điện rất nhỏ → cứ sau một khoảng thời gian thì điện tích trên tụ điện sẽ bị mất, cho nên thông tin trên DRAM không ổn định → khắc phục bằng mạch làm tươi (refresh) DRAM  Tốc độ chậm (do mất thời gian làm tươi DRAM)  Dung lượng chip nhớ lớn  Giá thành rẻ  Thường dùng làm bộ nhớ chính Lê Văn Hiệp
  19. 2. Mô hình cơ bản của chip nhớ 19 Lê Văn Hiệp
  20. Mô hình cơ bản khác của chip nhớ 20 Lê Văn Hiệp
  21. Mô hình cơ bản của chip nhớ (tiếp) 21  Có n chân địa chỉ (An-1 ÷ A0) : vận chuyển vào chip nhớ được n bit địa chỉ đồng thời → trong chip nhớ có 2n từ nhớ.  Có m chân dữ liệu: (Dm-1 ÷ D0) : cho phép vận chuyển đồng thời được m bit dữ liệu → độ dài từ nhớ là m bit. → Dung lượng của chip nhớ là: 2n x m bit  Các chân tín hiệu điều khiển:  CS (Chip Select): tín hiệu điều khiển chọn chip nhớ làm việc  OE (Output Enable): tín hiệu điều khiển đọc dữ liệu của 1 từ nhớ đã được xác định.  WE (Write Enable): tín hiệu điều khiển ghi dữ liệu vào 1 từ nhớ đã được xác định. Lê Văn Hiệp
  22. Hoạt động của chip nhớ 22  Hoạt động đọc:  Các bit địa chỉ được đưa đến các chân địa chỉ.  Tín hiệu điều khiển chọn chip nhớ làm việc được đưa đến CS  Tín hiệu điều khiển đọc đưa đến OE  Dữ liệu từ ngăn nhớ tương ứng với địa chỉ đã có sẽ được đưa ra các chân dữ liệu. Lê Văn Hiệp
  23. Hoạt động của chip nhớ (tiếp) 23  Hoạt động ghi:  Các bit địa chỉ được đưa đến các chân địa chỉ  Dữ liệu cần ghi được đưa đến các chân dữ liệu  Tín hiệu điều khiển chọn chip được đưa đến CS  Tín hiệu điều khiển ghi được đưa đến WE  Dữ liệu từ các chân dữ liệu sẽ được ghi vào ngăn nhớ tương ứng. Lê Văn Hiệp
  24. Bộ nhớ máy tính 24  6.3.1. Tổng quan hệ thống nhớ  6.3.2. Bộ nhớ bán dẫn  6.3.3. Bộ nhớ chính  6.3.4. Bộ nhớ cache  6.3.5. Bộ nhớ ngoài  6.3.6. Bộ nhớ ảo  6.3.7. Bộ nhớ trên máy tính cá nhân Lê Văn Hiệp
  25. 6.3.3. Bộ nhớ chính 25  1. Các đặc trưng của bộ nhớ chính  2. Tổ chức bộ nhớ đan xen Lê Văn Hiệp
  26. 1. Các đặc trưng của bộ nhớ chính 26  Là thành phần nhớ tồn tại trên mọi hệ thống máy tính  Chứa các chương trình đang được thực hiện và các dữ liệu đang được sử dụng  Bao gồm các ngăn nhớ được đánh địa chỉ trực tiếp bởi CPU  Dung lượng vật lý của bộ nhớ chính ≤ không gian địa chỉ bộ nhớ mà CPU quản lý  Việc quản lý logic bộ nhớ chính tùy thuộc vào hệ điều hành Lê Văn Hiệp
  27. 2. Tổ chức bộ nhớ đan xen 27  Độ rộng của bus dữ liệu để trao đổi với bộ nhớ chính M = 8, 16, 32, 64, 128 bit  Các ngăn nhớ được tổ chức theo từng Byte nhớ → Tổ chức bộ nhớ chính khác nhau Lê Văn Hiệp
  28. M = 8 bit 28  VD: Intel 8088  BN chính là 1 băng (bank) nhớ tuyến tính Lê Văn Hiệp
  29. M = 16 bit 29  VD: Intel 8086 ÷ 80286  Bộ nhớ chính gồm 2 băng (bank) nhớ đan xen Lê Văn Hiệp
  30. Bộ nhớ máy tính 30  6.3.1. Tổng quan hệ thống nhớ  6.3.2. Bộ nhớ bán dẫn  6.3.3. Bộ nhớ chính  6.3.4. Bộ nhớ cache  6.3.5. Bộ nhớ ngoài  6.3.6. Bộ nhớ ảo  6.3.7. Bộ nhớ trên máy tính cá nhân Lê Văn Hiệp
  31. 6.3.4. Bộ nhớ cache 31  1. Nguyên tắc chung của cache  2. Các phương pháp ánh xạ  3. Thuật giải thay thế  4. Phương pháp ghi dữ liệu khi cache hit  5. Cache trên các bộ xử lý Intel Lê Văn Hiệp
  32. 1. Nguyên tắc chung của cache 32  Nguyên lý cục bộ hoá tham chiếu bộ nhớ: Trong một khoảng thời gian đủ nhỏ CPU thường chỉ tham chiếu các thông tin trong một khối nhớ cục bộ  Ví dụ:  Cấu trúc chương trình tuần tự  Vòng lặp có thân nhỏ  Cấu trúc dữ liệu mảng  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 cập bộ nhớ của CPU  Cache có thể được đặt trên chip CPU Lê Văn Hiệp
  33. Hình minh họa tổ chức cache 33 Tuyến theo word Tuyến theo block Lê Văn Hiệp
  34. Cấu trúc chung của cache / Bộ nhớ chính 34 L0 B0 L1 B1 Lm-1 Bp-1 Lê Văn Hiệp
  35. Cấu trúc chung của cache / Bộ nhớ chính 35  Bộ nhớ chính có 2N byte nhớ  Bộ nhớ chính và cache được chia thành các khối có kích thước bằng nhau  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 của Block = 8,16,32,64,128 byte Lê Văn Hiệp
  36. Cấu trúc chung của cache / Bộ nhớ chính 36  Một số Block của bộ nhớ chính được nạp vào các Line của cache.  Nội dung Tag (thẻ nhớ) cho biết Block nào của bộ nhớ chính hiện đang được chứa ở Line đó.  Khi CPU truy nhập (đọc/ghi) một từ nhớ, có hai khả năng xảy ra:  Từ nhớ đó có trong cache (cache hit)  Từ nhớ đó không có trong cache (cache miss). Lê Văn Hiệp
  37. Minh họa cache hit và cache miss 37 Lê Văn Hiệp
  38. 2. Các phương pháp ánh xạ 38  Á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) Lê Văn Hiệp
  39. Ánh xạ trực tiếp 39  Mỗi Block của bộ nhớ chính chỉ có thể được nạp vào một Line của cache:  B0 L0  B1 L1   Bm-1 Lm-1  Bm L0  Bm+1 L1   Tổng quát  Bj chỉ có thể nạp vào L j mod m với m là số Line của cache. Lê Văn Hiệp
  40. Minh họa ánh xạ trực tiếp 40 Lê Văn Hiệp
  41. Đặc điểm của ánh xạ trực tiếp 41  Mỗi một địa chỉ N bit của bộ nhớ chính gồm ba trường:  Trường Word gồm W bit xác định một từ nhớ trong Block hay Line: 2W = kích thước của Block hay Line  Trường Line gồm L bit xác định một trong số các Line trong cache: 2L = số Line trong 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 Lê Văn Hiệp
  42. Ánh xạ liên kết toàn phần 42  Mỗi Block có thể nạp vào bất kỳ Line nào của cache.  Địa chỉ của bộ nhớ chính bao gồm hai trường:  Trường Word giống như trường hợp ở trên.  Trường Tag dùng để xác định Block của bộ nhớ chính.  Tag xác định Block đang nằm ở Line đó Lê Văn Hiệp
  43. Minh họa ánh xạ liên kết toàn phần 43 Lê Văn Hiệp
  44. Đặc điểm của ánh xạ liên kết toàn phần 44  So sánh đồng thời với tất cả các Tag mất nhiều thời gian  Xác suất cache hit cao.  Bộ so sánh phức tạp. Lê Văn Hiệp
  45. Ánh xạ liên kết tập hợp 45  Cache đươc chia thành các Tập (Set)  Mỗi một Set chứa một số Line  Ví dụ:  4 Line/Set က„ 4-way associative mapping  Ánh xạ theo nguyên tắc sau:  B0 S0  B1 S1  B2 S2  Lê Văn Hiệp
  46. Minh họa ánh xạ liên kết tập hợp 46 Lê Văn Hiệp
  47. Đặc điểm của ánh xạ liên kết tập hợp 47  Kích thước Block = 2W Word  Trường Set có S bit dùng để xác định một trong số V = 2S Set  Trường Tag có T bit: T = N - (W+S)  Tổng quát cho cả hai phương pháp trên  Thông thường 2,4,8,16Lines/Set Lê Văn Hiệp
  48. Thuật giải thay thế (Ánh xạ trực tiếp) 48  Không phải lựa chọn  Mỗi Block chỉ ánh xạ vào một Line xác định  Thay thế Block ở Line đó  Được thực hiện bằng phần cứng (nhanh)  Random: Thay thế ngẫu nhiên  FIFO (First In First Out): Thay thế Block nào nằm lâu nhất ở trong Set đó  LFU (Least Frequently Used): Thay thế Block nào trong Set có số lần truy nhập ít nhất trong cùng một khoảng thời gian  LRU (Least Recently Used): Thay thế Block ở trong Set tương ứng có thời gian lâu nhất không được tham chiếu tới.  Tối ưu nhất: LRU Lê Văn Hiệp
  49. Phương pháp ghi dữ liệu khi cache hit 49  Ghi xuyên qua (Write-through):  ghi cả cache và cả bộ nhớ chính  tốc độ chậm  Ghi trả sau (Write-back):  chỉ ghi ra cache  tốc độ nhanh  khi Block trong cache bị thay thế cần phải ghi trả cả Block về bộ nhớ chính Lê Văn Hiệp
  50. Bộ nhớ máy tính 50  6.3.1. Tổng quan hệ thống nhớ  6.3.2. Bộ nhớ bán dẫn  6.3.3. Bộ nhớ chính  6.3.4. Bộ nhớ cache  6.3.5. Bộ nhớ ngoài  6.3.6. Bộ nhớ ảo  6.3.7. Bộ nhớ trên máy tính cá nhân Lê Văn Hiệp
  51. 6.3.5. Bộ nhớ ngoài 51  1. Đĩa từ  2. Đĩa quang  3. Flash disk  4. Các chuẩn nối ghép ổ đĩa  5. RAID Lê Văn Hiệp
  52. Tham khảo chương 4 52  1. Đĩa từ  2. Đĩa quang  3. Flash disk  4. Các chuẩn nối ghép ổ đĩa Lê Văn Hiệp
  53. 5. RAID 53  Redundant Array of Independent Disks  Là tập hợp các ổ đĩa cứng vật lý mà hệ điều hành coi như là một ổ đĩa logic duy nhất  Khi ghi lên hệ thống RAID, các tệp dữ liệu được phân mảnh và lưu trữ phân tán trên các ổ cứng vật lý  Có khả năng tạo ra và lưu trữ thông tin dư thừa để đảm bảo khôi phục lại thông tin trong trường hợp ổ đĩa bị hỏng  Có 7 loại phổ biến: RAID 0 6 Lê Văn Hiệp
  54. RAID 3, 4 54 Lê Văn Hiệp
  55. RAID 0, 1, 2 55 Lê Văn Hiệp
  56. RAID 5, 6 56 Lê Văn Hiệp
  57. Ánh xạ dữ liệu của RAID 0 57 Lê Văn Hiệp
  58. Bộ nhớ máy tính 58  6.3.1. Tổng quan hệ thống nhớ  6.3.2. Bộ nhớ bán dẫn  6.3.3. Bộ nhớ chính  6.3.4. Bộ nhớ cache  6.3.5. Bộ nhớ ngoài  6.3.6. Bộ nhớ ảo  6.3.7. Bộ nhớ trên máy tính cá nhân Lê Văn Hiệp
  59. 6.3.6. Bộ nhớ ảo 59  Khái niệm bộ nhớ ảo: là bộ nhớ bao gồm bộ nhớ chính và bộ nhớ ngoài mà được CPU coi như là một bộ nhớ duy nhất.  Các kỹ thuật thực hiện bộ nhớ ảo:  Kỹ thuật phân trang: Chia không gian địa chỉ bộ nhớ thành các trang nhớ có kích thước bằng nhau và nằm liền kề nhau Thông dụng: kích thước trang = 4KBytes  Kỹ thuật phân đoạn: Chia không gian nhớ thành các đoạn nhớ có kích thước thay đổi, các đoạn nhớ có thể gối lên nhau. Lê Văn Hiệp
  60. Bộ nhớ máy tính 60  6.3.1. Tổng quan hệ thống nhớ  6.3.2. Bộ nhớ bán dẫn  6.3.3. Bộ nhớ chính  6.3.4. Bộ nhớ cache  6.3.5. Bộ nhớ ngoài  6.3.6. Bộ nhớ ảo  6.3.7. Bộ nhớ trên máy tính cá nhân Lê Văn Hiệp
  61. 6.3.7. Bộ nhớ trên máy tính cá nhân P.379 61  1. Bộ nhớ Cache  2. RAM  3. ROM BIOS  4. CMOS RAM  5. Video RAM  6. Các loại bộ nhớ ngoài Lê Văn Hiệp