Bài giảng Kiến trúc máy tính - Chương 5: Hệ thống nhớ - Đoàn Thị Quế
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:
- bai_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ế
- Chương 5 HỆ THỐNG NHỚ 1
- Nội dung Tổng quan về hệ thống nhớ Bộ nhớ chính Bộ nhớ đệm Bộ nhớ ngoài 2
- 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
- 5.1 Tổng quan về hệ thống nhớ 1. Các đặc trưng của hệ thống nhớ 4
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 5.2 Bộ nhớ chính 1. Phân loại 13
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- Tổ chức bộ nhớ một chiều 24
- 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
- Ví dụ 26
- 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
- Tổ chức bộ nhớ hai chiều 28
- 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
- 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
- Ví dụ 31
- 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
- Tổ chức của DRAM RAS: Row Address Select CAS: Column Address Select 33
- Ví dụ chip nhớ DRAM Dung lượng của chip nhớ DRAM? 34
- 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
- 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
- Tăng độ dài từ nhớ Ví dụ 1: 37
- 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
- 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
- Tăng số lượng từ nhớ Ví dụ 2: 40
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 5.3 Bộ nhớ đệm (Cache memory) 1. Sự cần thiết của bộ nhớ Cache (tiếp) 48
- 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
- 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
- 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
- Á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
- Minh hoạ ánh xạ trực tiếp 53
- Đặ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
- 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
- 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
- Á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
- Minh hoạ ánh xạ liên kết toàn phần 58
- Đặ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
- 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
- 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
- Á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
- Minh hoạ ánh xạ liên kết tập hợp 63
- Đặ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
- 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
- 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
- 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
- 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
- 5.4 Bộ nhớ ngoài (External memory) Đĩa từ Đĩa quang Flash Disk 69
- 1. Đĩa từ Cấu tạo của một đĩa cứng 70
- Nhiều đĩa 71
- Đĩ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
- 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
- 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
- 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
- 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
- Hết chương 5 77
- 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
- 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
- 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
- Ổ đĩ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
- Bộ nhớ Flash Ổ nhớ thể rắn SSD (Solid State Drive) USB flash Thẻ nhớ 82