bộ nhớ trong máy tính

16 1.1K 4
bộ nhớ trong máy tính

Đ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

1 Chương 5 BỘ NHỚ MÁY TÍNH Phạm Quang Dũng Bộ môn Khoa học máy tính - Khoa CNTT Trường Đại học Nông nghiệp I – Hà Nội website: www.hau1.edu.vn/it/pqdung ĐT: (04) 8766318 DĐ: 0988.149.189 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.2 Chương 5: Bộ nhớ máy tính Nội dung chương 5  5.1. Tổng quan về hệ thống nhớ  5.2. Bộ nhớ bán dẫn  5.3. Bộ nhớ chính  5.4. Bộ nhớ cache  5.5. Bộ nhớ ngoài  5.6. Hệ thống nhớ trên máy tính cá nhân Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.3 Chương 5: Bộ nhớ máy tính 5.1. Tổng quan về hệ thống nhớ 1. Các đặc trưng của hệ thống nhớ  Vị trí  Bên trong CPU:  tập thanh ghi  Bộ nhớ trongbộ nhớ chính  bộ nhớ cache  Bộ nhớ ngoài: các thiết bị nhớ  Dung lượng  Độ dài từ nhớ (tính bằng bit: 16, 32 bit)  Số lượng từ nhớ Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.4 Chương 5: Bộ nhớ máy tính Các đặc trưng của hệ thống nhớ (tiếp)  Đơn vị truyền  Từ nhớ (word)  Khối nhớ (block)  Phương pháp truy nhập  Truy nhập tuần tự (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) 2 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.5 Chương 5: Bộ nhớ máy tính Các đặc trưng của hệ thống nhớ (tiếp)  Hiệu năng  Thời gian truy nhậ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 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.6 Chương 5: Bộ nhớ máy tính Các đặc trưng của hệ thống nhớ (tiếp)  Các đặc tính vật lý  Khả biến/Không khả biến (volatile/nonvolatile)  Xóa được/Không xóa được  Tổ chức Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.7 Chương 5: Bộ nhớ máy tính 2. Phân cấp hệ thống nhớ Từ trái sang phải:  dung lượng tăng dần  tốc độ giảm dần  giá thành/1 bit giảm dần Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.8 Chương 5: Bộ nhớ máy tính 5.2. Bộ nhớ bán dẫn 1. Phân loại Kiểu bộ nhớ Tiêu chuẩn Khả năng xóa Cơ chế ghi Tính khả biến Read Only Memory (ROM) Mặt nạ Programmable ROM (PROM) Erasable PROM (EPROM) Bằng tia cực tím, cả chip Electrically Erasable PROM (EEPROM) Bằng điện, mức từng byte Flash Memory Bằng điện, mức từng khối Random Access Memory (RAM) Bằng điện, mức từng byte Khả biến Bộ nhớ đọc-ghi Bộ nhớ hầu như chỉ đọc Bằng điện Không khả biến Bộ nhớ chỉ đọc Không xóa được 3 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.9 Chương 5: Bộ nhớ máy tính ROM (Read Only Memory)  Bộ nhớ không khả biến  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)  Các bảng chức năng  Vi chương trình Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.10 Chương 5: Bộ nhớ máy tính Các kiểu ROM  ROM mặt nạ:  thông tin được ghi khi sản xuất  rất đắt  PROM (Programmable ROM)  Cần thiết bị chuyên dụng để ghi bằng chương trình → chỉ ghi được 1 lần  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 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.11 Chương 5: Bộ nhớ máy tính Các kiểu ROM (tiếp)  EEPROM (Electrically Erasable PROM)  Có thể ghi theo từng byte  Xóa bằng điện  Flash Memory (Bộ nhớ cực nhanh)  Ghi theo khối  Xóa bằng điện Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.12 Chương 5: Bộ nhớ máy tính RAM (Random Access Memory)  Bộ nhớ đọc-ghi (Read/Write Memory)  Khả biến  Lưu trữ thông tin tạm thời  Có 2 loại: SRAM và DRAM 4 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.13 Chương 5: Bộ nhớ máy tính SRAM (Static RAM) - RAM tĩnh  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 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.14 Chương 5: Bộ nhớ máy tính DRAM (Dynamic RAM) - RAM động  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  Dùng làm bộ nhớ chính Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.15 Chương 5: Bộ nhớ máy tính Các DRAM tiên tiến  Enhanced DRAM  Cache DRAM  Synchronous DRAM (SDRAM): làm việc được đồng bộ bởi xung đồng hồ  DDR-SDRAM (Double Data Rate SDRAM)  Rambus DRAM (RDRAM) Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.16 Chương 5: Bộ nhớ máy tính 2. Tổ chức của chip nhớ  Sơ đồ cơ bản của chip nhớ 5 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.17 Chương 5: Bộ nhớ máy tính Các tín hiệu của chip nhớ  Các đường địa chỉ: A n-1 ÷A 0 → có 2 n từ nhớ  Các đường dữ liệu: D m-1 ÷D 0 → độ dài từ nhớ = m bit  Dung lượng chip nhớ = 2 n 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 tích cực với mức 0 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.18 Chương 5: Bộ nhớ máy tính Tổ chức của DRAM  Dùng n đường địa chỉ dồn kênh → cho phép truyền 2n bit địa chỉ  Tín hiệu chọn địa chỉ hàng RAS (Row Address Select)  Tín hiệu chọn địa chỉ cột CAS (Column Address Select)  Dung lượng của DRAM = 2 2n x m bit Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.19 Chương 5: Bộ nhớ máy tính Chip nhớ Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.20 Chương 5: Bộ nhớ máy tính 3. Thiết kế mô-đun nhớ bán dẫn  Dung lượng chip nhớ = 2 n 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 6 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.21 Chương 5: Bộ nhớ máy tính Tăng độ dài từ nhớ VD1:  Cho chip nhớ SRAM 4K x 4 bit  Thiết kế mô-đun nhớ 4K x 8 bit Giải:  Dung lượng chip nhớ = 2 12 x 4 bit  chip nhớ có:  12 chân địa chỉ  4 chân dữ liệu  mô-đun nhớ cần có:  12 chân địa chỉ  8 chân dữ liệu Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.22 Chương 5: Bộ nhớ máy tính Ví dụ tăng độ dài từ nhớ A 11 ÷A 0 D 3 ÷D 0 A 11 ÷A 0 A 11 ÷A 0 D 3 ÷D 0 D 3 ÷D 0 D 7 ÷D 4 CS WE OE CS CS OEOE WEWE Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.23 Chương 5: Bộ nhớ máy tính Bài toán tăng độ dài từ nhớ tổng quát  Cho chip nhớ 2 n x m bit  Thiết kế mô-đun nhớ 2 n x (k.m) bit  Dùng k chip nhớ Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.24 Chương 5: Bộ nhớ máy tính Tăng số lượng từ nhớ VD2:  Cho chip nhớ SRAM 4K x 8 bit  Thiết kế mô-đun nhớ 8K x 8 bit Giải:  Dung lượng chip nhớ = 2 12 x 8 bit  chip nhớ có:  12 chân địa chỉ  8 chân dữ liệu  Dung lượng mô-đun nhớ = 2 13 x 8 bit:  13 chân địa chỉ  8 chân dữ liệu 7 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.25 Chương 5: Bộ nhớ máy tính Ví dụ tăng số lượng từ nhớ A 0 0 0 1 0 1 1 0 1x 1 1 G Y0 Y1 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.26 Chương 5: Bộ nhớ máy tính Bộ giải mã 2→4 B A 0 0 0 0 0 0 0 1 1 0 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 x x 1 1 1 1 G Y0 Y1 Y2 Y3 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.27 Chương 5: Bộ nhớ máy tính Bài tập 1. Tăng số lượng từ nhớ gấp 4 lần:  Cho chip nhớ SRAM 4K x 8 bit  Thiết kế mô-đun nhớ 16K x 8 bit 2. Tăng số lượng từ nhớ gấp 8 lần:  Cho chip nhớ SRAM 4K x 8 bit  Thiết kế mô-đun nhớ 32K x 8 bit 3. Thiết kế kết hợp:  Cho chip nhớ SRAM 4K x 4 bit  Thiết kế mô-đun nhớ 8K x 8 bit Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.28 Chương 5: Bộ nhớ máy tính 5.3. Bộ nhớ chính 1. Các đặc trưng cơ bản  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  Tồn tại trên mọi hệ thống máy tính  Bao gồm các ngăn nhớ được đánh địa chỉ trực tiếp bởi CPU  Dung lượng của bộ nhớ chính nhỏ hơn 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 8 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.29 Chương 5: Bộ nhớ máy tính 2. Tổ chức bộ nhớ đan xen  Độ rộng của bus dữ liệu để trao đổi với bộ nhớ: m = 8, 16, 32, 64, 128 … bit  Các ngăn nhớ được tổ chức theo byte → tổ chức bộ nhớ vật lý khác nhau Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.30 Chương 5: Bộ nhớ máy tính m=8 bit → một băng nhớ tuyến tính Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.31 Chương 5: Bộ nhớ máy tính m=16 bit → hai băng nhớ đan xen 0 2 4 6 8 2iA N-1 ÷ A 1 D 7 ÷ D 0 . . . . . . 1 3 5 7 9 2i+1 . . . . . . Băng 0Băng 1 BE0BE1 D 15 ÷ D 8 Bộ tạo tín hiệu chọn byte BE1 BE0 A 0 B W Chọn byte 00 Chọn cả 2 byte 01 Chọn byte cao 10Chọn byte thấp 11 Không chọn BE1 BE0 Các tín hiệu chọn byte: Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.32 Chương 5: Bộ nhớ máy tính m=32 bit → bốn băng nhớ đan xen 0 4 8 12 16 4iA N-1 ÷ A 2 D 7 ÷ D 0 . . . . . . 1 5 9 13 17 4i+1 . . . . . . Băng 0Băng 1 BE0BE1 D 15 ÷ D 8 Bộ tạo tín hiệu chọn byte BE3 BE0 A 0 B W 2 6 10 14 18 4i+2 . . . . . . Băng 2 BE2 D 23 ÷ D 16 3 7 11 15 19 4i+3 . . . . . . Băng 3 BE3 D 31 ÷ D 24 BE2 BE1 A 1 DW 9 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.33 Chương 5: Bộ nhớ máy tính m=64 bit → tám băng nhớ đan xen Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.34 Chương 5: Bộ nhớ máy tính 5.4. Bộ nhớ đệm nhanh (cache memory) 1. Nguyên tắc chung  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 nhập bộ nhớ của CPU  Cache có thể được đặt trên chip của CPU Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.35 Chương 5: Bộ nhớ máy tính Ví dụ về thao tác của cache  CPU yêu cầu nội dung của ngăn nhớ  CPU kiểm tra trên cache với dữ liệu này  Nếu có, CPU nhận dữ liệu từ cache (nhanh)  Nếu không có, đọc block nhớ chứa dữ liệu từ bộ nhớ chính vào cache  Tiếp đó chuyển dữ liệu từ cache vào CPU Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.36 Chương 5: Bộ nhớ máy tính Cấu trúc chung của cache/bộ nhớ chính B 0 B 1 B 2 B 3 B 4 B 5 B i B p-1 . . . . . . L 0 L 1 L 2 L 3 L i L m-1 . . . . . . Bộ nhớ chính Cache Tag CPU 10 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.37 Chương 5: Bộ nhớ máy tính Cấu trúc chung của cache/bộ nhớ chính  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ó 2 khả năng xảy ra:  Từ nhớ đó có trong cache (cache hit)  Từ nhớ đó không có trong cache (cache miss)  Vì số line của cache ít hơn số block của bộ nhớ chính, cần có một thuật giải ánh xạ thông tin trong bộ nhớ chính vào cache. Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.38 Chương 5: Bộ nhớ máy tính 2. Các phương pháp ánh xạ địa chỉ a) Ánh xạ trực tiếp (Direct mapping)  Mỗi block của bộ nhớ chính chỉ có thể được nạp vào 1 line duy nhất của cache.  Quy ước nạp: B 0 → L 0 B 1 → L 1 B m-1 → L m-1 B m → L 0 B m+1 → L 1  L 0 : B 0 , B m , B 2m .  L 1 : B 1 , B m+1 , B 2m+1 Æ B j chỉ có thể được nạp vào L j mod m Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.39 Chương 5: Bộ nhớ máy tính Ánh xạ trực tiếp (tiếp) B 0 B 1 B 2 B 3 B 4 B 5 B i B p-1 . . . . . . L 0 L 1 L 2 L 3 L i L m-1 . . . . . . Bộ nhớ chính Cache Tag Line Byte So sánh n 1 n 2 n 3 N bit cache hit cache miss = (2) (3.1) (3.2) (1) Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.40 Chương 5: Bộ nhớ máy tính Ánh xạ trực tiếp (tiếp)  Địa chỉ CPU phát ra có N bit, được chia thành 3 trường:  Trường Byte (có n 1 bit) để xác định byte nhớ trong Line (Block) 2 n1 = kích thước 1 Line  Trường Line (có n 2 bit) để xác định Line trong Cache 2 n2 = số Line trong Cache Æ Dung lượng Cache = 2 n1 * 2 n2 = 2 n1+n2  Trường Tag (có n 3 bit): số bit còn lại n 3 = N - (n 1 + n 2 )> 0 vì2 N >> 2 n1+n2 . trúc máy tính 5.19 Chương 5: Bộ nhớ máy tính Chip nhớ Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.20 Chương 5: Bộ nhớ máy tính 3. Thiết kế mô-đun nhớ. trúc máy tính 5.51 Chương 5: Bộ nhớ máy tính Sơ đồ Pentium 4 Phạm Quang Dũng Bài giảng Kiến trúc máy tính 5.52 Chương 5: Bộ nhớ máy tính 5.5. Bộ nhớ ngoài

Ngày đăng: 20/12/2013, 13:42

Từ khóa liên quan

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

Tài liệu liên quan