Bài giảng Kiến trúc máy tính - Chương 5: Hệ thống nhớ - Đoàn Thị Quế

pdf 82 trang Gia Huy 16/05/2022 4090
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 - Chương 5: Hệ thống nhớ - Đoàn Thị Quế", để 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:

  • pdfbai_giang_kien_truc_may_tinh_chuong_5_he_thong_nho_doan_thi.pdf

Nội dung text: Bài giảng Kiến trúc máy tính - Chương 5: Hệ thống nhớ - Đoàn Thị Quế

  1. Chương 5 HỆ THỐNG NHỚ 1
  2. Nội dung  Tổng quan về hệ thống nhớ  Bộ nhớ chính  Bộ nhớ đệm  Bộ nhớ ngoài 2
  3. 5.1 Tổng quan về hệ thống nhớ 1. Các đặc trưng của hệ thống nhớ 2. Phân cấp hệ thống nhớ 3
  4. 5.1 Tổng quan về hệ thống nhớ 1. Các đặc trưng của hệ thống nhớ 4
  5. 1. Các đặc trưng của hệ thống nhớ  Dung lượng (Capacity) 0  Số lượng từ nhớ (Number of words) 1 2  Số byte nhớ (Number of bytes) n Dung lượng = 2 . W0 (bytes) Độ dài của một từ nhớ Số lượng từ nhớ (1, 2 hoặc 3 bytes) 2n - 1 5
  6. 1. Các đặc trưng của hệ thống nhớ  Dung lượng (Capacity) 1 byte = 8 bits 1 kilobyte (KB) = 210 Bytes 1 megabyte (MB) = 210 KB 1 gigabyte (GB) = 210 MB 1 terabyte (TB) = 210 GB 6
  7. 1. Các đặc trưng của hệ thống nhớ  Hiệu năng (Performance)  Thời gian truy nhập (Access time):  Bộ nhớ truy cập ngẫu nhiên (random-access memory): Access time là thời gian từ khi phát ra địa chỉ ô nhớ cho tới khi dữ liệu được ghi/đọc vào/từ ô nhớ đó  Bộ nhớ truy cập không ngẫu nhiên (non-random-access memory): Access time là khoảng thời gian cần thiết để định vị đầu đọc/ghi ở vị trí mong muốn  Chu kỳ nhớ (Cycle time): Là khoảng thời gian ngắn nhất giữa 2 lần truy nhập kế tiếp  Tốc độ truyền (Transfer rate): là tỉ lệ dữ liệu được ghi/đọc vào/từ bộ nhớ trong một chu kỳ xung nhịp 7
  8. 1. Các đặc trưng của hệ thống nhớ  Đơn vị truyền (Unit of Transfer):  Từ nhớ (Word)  Khối nhớ (Block) 8
  9. 1. Các đặc trưng của hệ thống nhớ (tiếp)  Phương pháp truy nhập (Access Method):  Tuần tự (Sequential)  Trực tiếp (Direct)  Ngẫu nhiên (Random)  Kết hợp (Associative) 9
  10. 1. Các đặc trưng của hệ thống nhớ (tiếp)  Các đặc tính vật lý (Physical Characteristics)  Khả biến/không khả biến (Volatile/nonvolatile)  Xóa được/không xóa được (Erasable/nonerasable) 10
  11. 1. Các đặc trưng của hệ thống nhớ (tiếp)  Tổ chức (Organization)  Đơn vị nhớ cơ bản của bộ nhớ bán dẫn là phần tử nhớ: Điều khiển Điều khiển ghi đọc D Chọn D out Phần tử in Chọn Phần tử nhớ nhớ  Thông thường bộ nhớ được tổ chức thành module với dung lượng xác định 18  Ví dụ: 256 KB 2 từ nhớ 1 Byte 1 MB 220 từ nhớ 1 Byte  Có thể kết hợp nhiều modules nhớ để tăng dung lượng 11
  12. 2. Phân cấp hệ thống nhớ CPU Bộ Bộ Tập nhớ Bộ nhớ thanh Cache nhớ ngoài ghi chính Nhanh hơn Chậm Dung lượng Dung lượng nhỏ lớn 12
  13. 5.2 Bộ nhớ chính 1. Phân loại 13
  14. ROM (Read Only Memory)  Bộ nhớ chỉ đọc  Bộ nhớ không khả biến (nonvolatile)  Lưu trữ các thông tin sau:  Thư viện các chương trình con  Các chương trình điều khiển hệ thống (BIOS)  Vi chương trình 14
  15. ROM mặt nạ  Thông tin được ghi khi sản xuất  Rất đắt +E Ma trận nhớ Phần tử nhớ A1 A A D D D D W0 1 0 3 2 1 0 A0 W Dây từ 1 0 0 0 1 0 1 W2 Dây bit 0 1 1 0 1 1 W 3 1 0 0 1 0 0 1 1 1 1 1 0 Mạch đầu ra Mạch giải mã D3 D2 D1 D0 15
  16. PROM (Programmable ROM)  PROM (Programmable ROM)  Tại những nơi giao nhau giữa dây từ và dây bit đều có các Tranzistor nối với các cầu trì (cầu trì được nối bit nhớ có giá trị 1, cầu chì ngắt bit nhớ có giá trị 0)  Cần thiết bị chuyên dụng để ghi bằng chương trình chỉ ghi được một lần +E 16
  17. EPROM (Erasable PROM)  Cần thiết bị chuyên dụng để ghi bằng chương trình  Ghi được nhiều lần  Trước khi ghi lại, xóa bằng tia cực tím Floating Gate G S D N N P 17
  18. EEPROM (Electrically Erasable PROM)  Cửa nổi có thêm một kênh thoát  Xóa bằng điện Floating Gate G S D N N Kênh thoát P 18
  19. RAM (Random Access Memory)  Bộ nhớ đọc-ghi (Read/Write Memory)  Khả biến (volatile): Mất điện mất dữ liệu  Lưu trữ thông tin tạm thời  Có hai loại:  SRAM (Static RAM)  DRAM(Dynamic RAM) 19
  20. SRAM  Các bit được lưu trữ bằng các 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 bộ nhớ cache 6 Tranzistor trong một phần tử nhớ 20
  21. DRAM  Các bit được lưu trữ trên 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 hơn  Rẻ tiền hơn Một tranzistor và một tụ  Dùng làm bộ nhớ chính điện trong một phần tử nhớ 21
  22. 2. Tổ chức của chip nhớ  RAM được tổ chức thành các chip nhớ  Chip nhớ gồm:  Mạch giải mã địa chỉ  Ma trận nhớ  Mạch điều khiển ghi  Mạch điều khiển đọc  Mạch đầu ra  Sơ đồ khối cơ bản của chip nhớ: CS: Chip Select WE: Write Enable OE: Output Enable Ai (i =0 ÷ n-1): Các đường địa chỉ 22 Dj (j =0 ÷ m-1): Các đường dữ liệu
  23. 2. Tổ chức của chip nhớ (tiếp)  Có 2 phương pháp tổ chức  Tổ chức bộ nhớ một chiều  Tổ chức bộ nhớ hai chiều 23
  24. Tổ chức bộ nhớ một chiều 24
  25. Ví dụ  Tổ chức bộ nhớ có dung lượng 256K x 8 bằng các phương pháp tổ chức bộ nhớ một chiều. 25
  26. Ví dụ 26
  27. Nhận xét  Ưu điểm: Thời gian truy nhập ngắn  Nhược điểm: Khi dung lượng bộ nhớ lớn thì kích thước bộ giải mã (số chân ra) cũng tăng theo Áp dụng cho những bộ nhớ có dung lượng nhỏ 27
  28. Tổ chức bộ nhớ hai chiều 28
  29. Tổ chức bộ nhớ hai chiều  Có n đường địa chỉ: n = n1 + n2 n1  2 hàng n2  mỗi hàng có 2 từ nhớ  Có m đường dữ liệu:  mỗi từ nhớ có độ dài m-bit  Dung lượng của chip nhớ: [2n1 x (2n2 x m)] bit = (2n1+n2 x m) bit = (2n x m) bit  Hoạt động giải mã địa chỉ: n1  Bước 1: bộ giải mã hàng chọn 1 trong 2 hàng. n2  Bước 2: bộ giải mã cột chọn 1 trong 2 từ nhớ (cột) của hàng đã được chọn. 29
  30. Ví dụ  Tổ chức bộ nhớ có dung lượng 256K x 8 bằng các phương pháp tổ chức bộ nhớ hai chiều. 30
  31. Ví dụ 31
  32. Nhận xét  Tổ chức bộ nhớ hai chiều:  Thời gian truy nhập lâu hơn  Kích thước bộ giải mã địa chỉ giảm Áp dụng cho bộ nhớ có dung lượng lớn 32
  33. Tổ chức của DRAM  RAS: Row Address Select  CAS: Column Address Select 33
  34. Ví dụ chip nhớ DRAM Dung lượng của chip nhớ DRAM? 34
  35. 3. Thiết kế module nhớ bán dẫn n  Dung lượng chip nhớ 2 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 35
  36. Tăng độ dài từ nhớ Ví dụ 1:  Cho chip nhớ SRAM 4K x 4 bit  Thiết kế module nhớ 4K x 8 bit 36
  37. Tăng độ dài từ nhớ Ví dụ 1: 37
  38. Bài toán tăng độ dài từ nhớ tổng quát n  Cho chip nhớ 2 x m bit n  Thiết kế module nhớ 2 x (k.m) bit  Dùng k chip nhớ 38
  39. Tăng số lượng từ nhớ Ví dụ 2:  Cho chip nhớ SRAM 4K x 8 bit  Thiết kế module nhớ 8K x 8 bit 39
  40. Tăng số lượng từ nhớ Ví dụ 2: 40
  41. Thiết kế kết hợp Ví dụ 3:  Cho chip nhớ SRAM 4K x 4 bit  Thiết kế module nhớ 8K x 8 bit 41
  42. Thiết kế kết hợp Ví dụ 3:  Bước 1: Tăng độ dài từ nhớ  2 chip 4K x 4 bit 4K x 8 bit 42
  43. Thiết kế kết hợp (tiếp) Bước 2: Tăng số lượng từ nhớ  2 module 4K x 8 bit 8K x 8 bit 43
  44. Bài tập áp dụng  Cho chip nhớ SRAM 4K x 8 bit  Thiết kế module nhớ 16K x 16 bit 44
  45. Bài tập áp dụng  Bước 1: Tăng độ dài từ nhớ  2 chip 4K x 8 bit 4K x 16 bit 45
  46. Bài tập áp dụng . Bước 2: Tăng số lượng từ nhớ  4 module 4K x 16 bit 16K x 16 bit A13 A12 0 0 0 0 1 1 1 0 0 1 1 0 1 1 0 1 0 1 1 0 1 0 1 1 1 1 1 0 1 x x 1 1 1 1 46
  47. 5.3 Bộ nhớ đệm (Cache memory) 1. Sự cần thiết của bộ nhớ Cache  Nguyên lý cục bộ hoá tham chiếu bộ nhớ (Principle of locality):  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ộ  Cục bộ liên quan đến:  Thời gian: CPU có xu hướng truy xuất lại block vừa mới sử dụng  Không gian: CPU có xu hướng truy xuất đến các word gần với word vừa được truy xuất (thường trong cùng 1 block) 47
  48. 5.3 Bộ nhớ đệm (Cache memory) 1. Sự cần thiết của bộ nhớ Cache (tiếp) 48
  49. 2. Hoạt động của Cache  Khi CPU tìm một từ nhớ  CPU sẽ tìm trong Cache đầu tiên  Nếu có Cache hit, CPU nhận từ nhớ từ cache (nhanh)  Nếu không có Cache miss, đọc Block nhớ chứa từ nhớ cần tìm từ bộ nhớ chính vào cache  Tiếp đó chuyển từ nhớ từ cache vào CPU  Tỷ lệ hit: Số lần tìm thấy từ nhớ trong Cache h = (%)  Số lần tham chiếu thông thường h = 85 ÷ 95 %  Tỷ lệ miss: 1-h 49
  50. 3. Tổ chức chung của Cache/bộ nhớ chính Bộ nhớ chính 0 1 W B0 (2 ) Tag Cache W L0 (2 ) W Bj (2 ) W Li (2 ) W Lm-1 (2 ) W 2n-1 BP-1 (2 ) 50
  51. 4. Các phương pháp ánh xạ  Phương pháp xác định Block nào được đưa vào trong Cache được gọi là phương pháp ánh xạ  Các phương pháp ánh xạ:  Á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) 51
  52. Ánh xạ trực tiếp  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  m là số Line của cache. 52
  53. Minh hoạ ánh xạ trực tiếp 53
  54. Đặc điểm của ánh xạ trực tiếp  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 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  Khi thay thế không cần thuật toán  Các block phải chờ nhau khi ánh xạ vào một line 54
  55. Ví dụ về ánh xạ trực tiếp  Dung lượng bộ nhớ chính 1 Mbytes  Dung lượng bộ nhớ cache là 16 Kbytes  Kích thước Line (Block) = 4 bytes  Xác định số bit của các trường địa chỉ cho trường hợp tổ chức ánh xạ trực tiếp 55
  56. Bài tập áp dụng  Dung lượng bộ nhớ chính 4GB  Dung lượng bộ nhớ cache là 256KB  Kích thước Line (Block) = 32bytes  Xác định số bit của các trường địa chỉ cho trường hợp ánh xạ trực tiếp 56
  57. Ánh xạ liên kết toàn phần  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 đó 57
  58. Minh hoạ ánh xạ liên kết toàn phần 58
  59. Đặc điểm của ánh xạ liên kết toàn phần  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. 59
  60. Ví dụ về ánh xạ liên kết toàn phần  Dung lượng bộ nhớ chính 1 Mbytes  Dung lượng bộ nhớ cache là 16 Kbytes  Kích thước Line (Block) = 4 bytes  Xác định số bit của các trường địa chỉ cho trường hợp tổ chức ánh xạ liên kết toàn phần 60
  61. Bài tập áp dụng  Dung lượng bộ nhớ chính 4GB  Dung lượng bộ nhớ cache là 256KB  Kích thước Line (Block) = 32bytes  Xác định số bit của các trường địa chỉ cho trường hợp ánh xạ liên kết toàn phần 61
  62. Ánh xạ liên kết tập hợp  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 Liên kết tập hợp 4 đường  Ánh xạ theo nguyên tắc sau:  B0 S0  B1 S1  B2 S2  62
  63. Minh hoạ ánh xạ liên kết tập hợp 63
  64. Đặc điểm của ánh xạ liên kết tập hợp  Trường Word gồm W bit xác định một từ nhớ trong Block hay Line:  Trường Set có S bit dùng để xác định một tập 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,16 Lines/Set 64
  65. Ví dụ về ánh xạ liên kết tập hợp  Dung lượng bộ nhớ chính 1 Mbytes  Dung lượng bộ nhớ cache là 16 Kbytes  Kích thước Line (Block) = 4 bytes  Xác định số bit của các trường địa chỉ cho trường hợp tổ chức ánh xạ liên kết tập hợp 4 đường 65
  66. Bài tập áp dụng  Dung lượng bộ nhớ chính 4GB  Dung lượng bộ nhớ cache là 256KB  Kích thước Line (Block) = 32bytes  Xác định số bit của các trường địa chỉ cho trường hợp ánh xạ liên kết tập hợp 4 đường 66
  67. 4. Các thuật toán thay thế  Ánh xạ trực tiếp:  Mỗi Block chỉ ánh xạ vào một Line xác định  Thay thế Block ở Line đó không cần thuật toán thay thế  Ánh xạ liên kết:  Thay thế ngẫu nhiên  FIFO (First In First Out): Thay thế Block đã ở trong Cache trong khoảng thời gian dài nhất  LRU (Least Recently Used): Thay thế Block ở trong Cache mà không được tham chiếu trong khoảng thời gian dài nhất 67
  68. 5. Phương pháp ghi dữ liệu khi cache hit  Ghi xuyên qua (Write-through):  Ghi cả cache và cả bộ nhớ chính  Ghi trả sau (Write-back):  Chỉ ghi ra cache  Khi Block trong cache bị thay thế cần phải ghi trả Block về bộ nhớ chính 68
  69. 5.4 Bộ nhớ ngoài (External memory)  Đĩa từ  Đĩa quang  Flash Disk 69
  70. 1. Đĩa từ  Cấu tạo của một đĩa cứng 70
  71. Nhiều đĩa 71
  72. Đĩa cứng  Dung lượng tăng lên rất nhanh  1993: 200MB  2004: 30GB, 40GB  Có thể đạt tới 500GB  Số đĩa: một đĩa hoặc nhiều đĩa (1-4)  Số rãnh: 10 000 – 30 000 rãnh/mặt  Số sector/rãnh: 64 – 800  Tốc độ quay của đĩa (vòng/phút): 3 600-15 000  Tốc độ truyền dữ liệu: Có thể đạt tới 900Mb/s 72
  73. RAID  Redundant Array of Independent Disks: Tập các đĩa cứng vật lý được OS coi như một ổ đĩa duy nhất hệ thống nhớ dung lượng lớn  Dữ liệu được phân bố đều trên các ổ đĩa vật lý truy cập song song (nhanh)  Đĩa dự phòng dùng để lưu trữ các thông tin mã lỗi cho phép khôi phục lại thông tin trong trường hợp đĩa bị hỏng an toàn thông tin 73
  74. 2. Đĩa quang  CD-ROM (Compact Disk ROM): ghi sẵn thông tin (âm thanh được số hóa, không xóa được, chỉ đọc, dung lượng 640-700 MB  CD-R (CD - Recordable): đĩa mới chưa có thông tin, chỉ ghi một lần và đọc nhiều lần  CD-RW (CD - Rewriteable): đĩa mới chưa có thông tin, có thể ghi nhiều lần  Ổ đĩa CD:  Ổ CD-Writer  Ổ CD-RW  Tốc độ đọc chuẩn 150KByte/s. 74
  75. 2. Đĩa quang (tiếp)  DVD  Digital Video Disk: chứa các hình ảnh video được số hóa  Digital Versatile Disk: ổ trên máy tính  Ghi một hoặc hai mặt  Dung lượng: có thể đạt tới 17GB  Tốc độ đọc chuẩn 1.3MB/s  DVD-R (DVD – Recordable): đĩa mới chưa có thông tin, chỉ ghi một lần và đọc nhiều lần  DVD-RW (DVD – Rewriteable): đĩa mới chưa có thông tin, có thể ghi nhiều lần 75
  76. 3. Flash Disk  Thường kết nối qua cổng USB  Bộ nhớ bán dẫn cực nhanh (flash memory)  Dung lượng tăng nhanh  Thuận tiện 76
  77. Hết chương 5 77
  78. 5.5 Hệ thống nhớ trên PC • Bộ nhớ cache: tích hợp trên chip vi xử lý • Bộ nhớ chính: Tồn tại dưới dạng các mô-đun nhớ – SIMM – Single Inline Memory Module • 30 chân: 8 đường dữ liệu • 72 chân: 32 đường dữ liệu – DIMM – Dual Inline Memory Module • 168 chân – DRAM - DIMM • 184 chân 78
  79. Hệ thống nhớ trên PC (tiếp) • ROM BIOS chứa các chương trình sau: – Chương trình POST (Power On Self Test) – Chương trình CMOS Setup – Chương trình Bootstrap loader – Các trình điều khiển vào-ra cơ bản (BIOS) • CMOS RAM: – Chứa thông tin cấu hình hệ thống – Đồng hồ hệ thống – Có pin nuôi riêng • Các loại bộ nhớ ngoài 79
  80. DRAM tiên tiến thông dụng • Synchronous DRAM (SDRAM): làm việc được đồng bộ bởi xung clock • DDR-SDRAM (Double Data Rate SDRAM) • DDR3, DDR4 80
  81. Ổ đĩa cứng HDD  Hard Disk Drive  Ổ đĩa IDE (Integrated Drive Electronics – chuẩn giao diện IDE)  Ổ đĩa SCSI xem Primary Secondary [2]  RAID  Solid-State Disks (SSD) 81
  82. Bộ nhớ Flash  Ổ nhớ thể rắn SSD (Solid State Drive)  USB flash  Thẻ nhớ 82