5 bo nho may tinh

5,843 views

Published on

kiến trúc máy tính
Slide bài giảng môn Kiến trúc máy tính

Published in: Technology, Education, Sports
0 Comments
10 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,843
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
0
Comments
0
Likes
10
Embeds 0
No embeds

No notes for slide

5 bo nho may tinh

  1. 1. KIẾN TRÚC MÁY TÍNH <ul><li>BÀI 5 </li></ul><ul><li>BỘ NHỚ MÁY TÍNH </li></ul>Giáo viên: Phạm Thành Văn ĐT: 0939.731.994 Email: [email_address]
  2. 2. MÔN HỌC: KIẾN TRÚC MÁY TÍNH <ul><li>Bài 1: TỔNG QUAN MÁY TÍNH </li></ul><ul><li>Bài 2: KIẾN TRÚC PHẦN MỀM BỘ XỬ LÝ </li></ul><ul><li>Bài 3: TỔ CHỨC BỘ XỬ LÝ </li></ul><ul><li>Bài 4: KỸ THUẬT XỬ LÝ THÔNG TIN </li></ul><ul><li>Bài 5: BỘ NHỚ MÁY TÍNH </li></ul><ul><li>Bài 6: HỆ THỐNG XUẤT NHẬP </li></ul><ul><li>Bài 7: CĂN BẢN VỀ ASSEMBLY </li></ul><ul><li>ÔN TẬP CUỐI MÔN </li></ul><ul><li>ĐỒ ÁN MÔN HỌC </li></ul><ul><li>THI CUỐI MÔN </li></ul>
  3. 3. BÀI 5: BỘ NHỚ MÁY TÍNH <ul><li>Các khái niệm </li></ul><ul><li>Các loại bộ nhớ </li></ul><ul><li>Các cấp bộ nhớ </li></ul><ul><li>Truy cập dữ liệu trong bộ nhớ </li></ul><ul><li>Bộ nhớ Cache </li></ul><ul><li>Bộ nhớ ảo </li></ul><ul><li>Câu hỏi bài tập </li></ul>Chức năng và nguyên lý hoạt động của các cấp bộ nhớ máy tính
  4. 4. MỤC TIÊU BÀI HỌC <ul><li>Hiểu được các cấp bộ nhớ và cách thức vận hành của các loại bộ nhớ được giới thiệu để có thể đánh giá được hiệu năng hoạt động của các loại bộ nhớ </li></ul>
  5. 5. Các khái niệm Các khái niệm cơ bản về bộ nhớ máy tính <ul><li>Bit, nibble, byte, word, double word </li></ul><ul><ul><li>Bit : là đơn vị nhỏ nhất của dữ liệu được lưu trong máy tính.. Bit có 2 giá trị là 0 hoặc 1 gọi là số nhị phân. </li></ul></ul><ul><ul><li>Nibble : tập hợp 4 bit liền nhau gọi là một nibble. </li></ul></ul><ul><ul><li>Byte : một byte gồm có 8 bit, dùng để thể hiện dung lượng bộ nhớ. </li></ul></ul><ul><ul><li>Word : 1 word = 2 bytes = 4 nibbles = 16 bits. </li></ul></ul><ul><ul><li>Double word : 1 double word = 2 words. </li></ul></ul>
  6. 6. Các khái niệm <ul><li>Kiểm tra lỗi và sửa lỗi: thuật toán Hamming </li></ul><ul><ul><li>Mã sửa lỗi: </li></ul></ul><ul><ul><li>Nguyên nhân gây ra lỗi: do các xung điện hoặc điện từ trường,... </li></ul></ul><ul><ul><li>Phương pháp sửa lỗi: sử dụng mã kiểm tra bằng cách thêm các bit vào để phát hiện lỗi. </li></ul></ul><ul><ul><li>Thuật toán Hamming kiểm tra và phát hiện lỗi </li></ul></ul>
  7. 7. Các loại bộ nhớ <ul><li>RAM, ROM </li></ul><ul><ul><li>RAM (Random Access Memory - bộ nhớ truy xuất ngẫu nhiên). </li></ul></ul><ul><ul><li>ROM ( Read-Only Memory - bộ nhớ chỉ đọc). </li></ul></ul>Định nghĩa và phân loại các loại bộ nhớ máy tính
  8. 8. Các loại bộ nhớ <ul><li>Thiết bị lưu trữ </li></ul><ul><ul><li>Ổ đĩa cứng (HDD – Hard Disk Drives). </li></ul></ul>
  9. 9. Các loại bộ nhớ <ul><li>Thiết bị lưu trữ </li></ul><ul><ul><li>Ổ đĩa quang (Optical Drives). </li></ul></ul><ul><ul><li>Các thiết bị lưu trữ khác: Tape (băng từ), Flash memory (USB), Floppy Disk (ổ mềm), Memory card (thẻ nhớ)… </li></ul></ul>
  10. 10. Các cấp bộ nhớ Giới thiệu và phân loại các cấp bộ nhớ <ul><li>Giới thiệu </li></ul><ul><ul><li>Các đặc tính như lượng thông tin lưu trữ, thời gian thâm nhập bộ nhớ, chu kỳ bộ nhớ, giá tiền mỗi bit nhớ khiến ta phải phân biệt các cấp bộ nhớ </li></ul></ul><ul><ul><li>Các bộ nhớ nhanh với dung lượng ít và các bộ nhớ chậm với dung lượng lớn. </li></ul></ul><ul><ul><li>Các cấp bộ nhớ bao gồm 2 mức chính: </li></ul></ul><ul><ul><li>Mức cache (bộ nhớ trong) </li></ul></ul><ul><ul><li>Mức bộ nhớ ảo (bao gồm bộ nhớ trong và không gian cấp phát trên đĩa cứng). </li></ul></ul>
  11. 11. Các cấp bộ nhớ
  12. 12. Các cấp bộ nhớ <ul><li>Các cấp bộ nhớ </li></ul><ul><ul><li>Bộ nhớ trong: bao gồm bộ nhớ Cache và các thanh ghi. </li></ul></ul><ul><ul><li>Bộ nhớ ảo: bao gồm bộ nhớ chính RAM, bộ nhớ lưu trữ như HDD, CD-ROM… </li></ul></ul>
  13. 13. Truy cập dữ liệu trong bộ nhớ Các nguyên tắc truy cập dữ liệu trong bộ nhớ <ul><li>Nguyên tắc về thời gian </li></ul><ul><ul><li>Cho biết các ô nhớ được hệ thống xử lý thâm nhập có khả năng sẽ được thâm nhập trong tương lai gần. </li></ul></ul><ul><li>Nguyên tắc về không gian </li></ul><ul><ul><li>Tổ chức các cấp bộ nhớ sao cho các lệnh và dữ liệu thường dùng được nằm trong bộ nhớ cache, điều này làm tăng hiệu quả của máy tính một cách đáng kể. </li></ul></ul>
  14. 14. Bộ nhớ Cache Các khái niệm cơ bản và nguyên tắc hoạt động của bộ nhớ Cache <ul><li>Các khái niệm </li></ul><ul><ul><li>Cache hit – thành công cache: bộ xử lý tìm gặp phần tử cần đọc (ghi) trong cache. </li></ul></ul><ul><ul><li>Cache miss – thất bại cache: bộ xử lý không gặp phần tử cần đọc (ghi) trong cache. </li></ul></ul><ul><ul><li>Cache penalty – trừng phạt cache: Thời gian cần thiết để xử lý một thất bại cache. </li></ul></ul>
  15. 15. Bộ nhớ Cache <ul><li>Hoạt động </li></ul><ul><ul><li>Sắp xếp khối : Một khối bộ nhớ được đặt vào trong cache theo một trong ba cách sau: </li></ul></ul><ul><ul><li>Kiểu tương ứng trực tiếp </li></ul></ul><ul><ul><li>Kiểu hoàn toàn phối hợp. </li></ul></ul><ul><ul><li>Kiểu phối hợp theo tập hợp: với cách tổ chức này, cache bao gồm các tập hợp của các khối cache. Mỗi tập hợp của các khối cache chứa số khối như nhau. </li></ul></ul><ul><ul><li>Một khối của bộ nhớ trong có thể được đặt vào một số vị trí khối giới hạn trong tập hợp được xác định bởi công thức: K= i mod s . </li></ul></ul><ul><ul><li>Nhận diện khối </li></ul></ul>
  16. 16. Bộ nhớ Cache <ul><ul><li>Hoạt động </li></ul></ul><ul><ul><li>Thay thế khối : </li></ul></ul><ul><ul><li>Thay thế ngẫu nhiên. </li></ul></ul><ul><ul><li>Khối xưa nhất (LRU: Least Recently Used). </li></ul></ul><ul><ul><li>Vào trước ra trước (FIFO: First In First Out). </li></ul></ul><ul><ul><li>Tần số sử dụng ít nhất (LFU: Least Frequently Used. </li></ul></ul><ul><ul><li>Chiến thuật ghi : </li></ul></ul><ul><ul><li>Ghi đồng thời. </li></ul></ul><ul><ul><li>Ghi lại. </li></ul></ul>
  17. 17. Bộ nhớ Cache <ul><li>Các mức Cache </li></ul><ul><ul><li>Cache mức một (L1 cache): thường là cache trong (on-chip cache; nằm bên trong CPU). </li></ul></ul><ul><ul><li>Cache mức hai (L2 cache) thường là cache ngoài (off-chip cache; cache này nằm bên ngoài CPU). </li></ul></ul><ul><ul><li>Ngoài ra, trong một số hệ thống (PowerPC G4, IBM S/390 G4, Itanium của Intel) còn có tổ chức cache mức ba (L3 cache), đây là mức cache trung gian giữa cache L2 và một thẻ bộ nhớ. </li></ul></ul>
  18. 18. Bộ nhớ Cache
  19. 19. Bộ nhớ Cache <ul><li>Hiệu quả của Cache </li></ul><ul><ul><li>Thông thường người ta dùng thời gian thâm nhập trung bình bộ nhớ trong để đánh giá hiệu quả của cache. </li></ul></ul><ul><ul><li>Thời gian thâm nhập trung bình bộ nhớ = Thời gian thâm nhập thành công + (Tỉ lệ thất bại * Trừng phạt thất bại). </li></ul></ul><ul><ul><li>Thời gian thâm nhập thành công là thời gian thâm nhập vào một thông tin trong một thành công cache. </li></ul></ul><ul><ul><li>Tỉ lệ thất bại là tỉ số giữa số thất bại cache và tổng số thâm nhập cache. </li></ul></ul><ul><ul><li>Thời gian thâm nhập thành công và trừng phạt thất bại được đo bằng đơn vị thời gian hoặc bằng chu kỳ xung nhịp (clock cycle). </li></ul></ul>
  20. 20. Bộ nhớ Cache <ul><li>Hiệu quả của Cache </li></ul><ul><ul><li>Trong việc tìm kiếm thông tin trong cache phải chú ý làm giảm tỉ lệ thất bại mà các nguyên nhân chính là như sau: </li></ul></ul><ul><ul><li>Khởi động. </li></ul></ul><ul><ul><li>Khả năng: vì cache không thể chứa tất cả các khối cần thiết cho việc thi hành một chương trình nên gặp thất bại do cache thiếu khả năng. </li></ul></ul><ul><ul><li>Tranh chấp: Nếu chiến thuật thay thế các khối là phối hợp theo tập hợp hay tương ứng trực tiếp. </li></ul></ul>
  21. 21. Bộ nhớ ảo Mục đích và nguyên tắc hoạt động của bộ nhớ ảo <ul><li>Mục đích </li></ul><ul><ul><li>Bộ nhớ ảo xác định một cơ chế vận chuyển tự động số liệu giữa bộ nhớ trong và bộ nhớ ngoài (đĩa từ). </li></ul></ul><ul><ul><li>Bộ nhớ ảo làm nhẹ trách nhiệm của các nhà lập trình bằng cách làm cho việc trao đổi thông tin này được thực hiện một cách tự động. </li></ul></ul><ul><ul><li>Trong các bộ xử lý hiện đại, bộ nhớ ảo được dùng để cho phép thực hiện cùng lúc nhiều tiến trình (process), mỗi tiến trình có một không gian định vị riêng. </li></ul></ul>
  22. 22. Bộ nhớ ảo <ul><li>Hoạt động </li></ul><ul><ul><li>Sắp xếp khối . </li></ul></ul><ul><ul><li>Nhận diện khối . </li></ul></ul><ul><ul><li>Thay thế khối. </li></ul></ul><ul><ul><li>Chiến thuật ghi. </li></ul></ul>
  23. 23. Bộ nhớ ảo <ul><li>Bảo vệ tiến trình bằng bộ nhớ ảo </li></ul><ul><ul><li>Sự xuất hiện của đa chương trình (multiprogram) trong đó máy tính chạy nhiều chương trình song song với nhau, dẫn tới các đòi hỏi mới về việc bảo vệ và phân chia giữa các chương trình. </li></ul></ul><ul><ul><li>Đa chương trình đưa đến khái niệm tiến trình (process). </li></ul></ul>
  24. 24. Bộ nhớ ảo <ul><li>Bảo vệ tiến trình bằng bộ nhớ ảo </li></ul><ul><ul><li>Nhà thiết kế máy tính có thêm 3 trách nhiệm trong việc giúp các nhà thiết kế hệ điều hành bảo vệ các tiến trình là: </li></ul></ul><ul><ul><li>Cung cấp hai chế độ vận hành cho biết tiến trình đang thực hiện là tiến trình của người sử dụng hay tiến trình hệ thống (của người điều hành). </li></ul></ul><ul><ul><li>Cung cấp một tập hợp con trạng thái của bộ xử lý mà tiến trình người sử dụng có thể dùng nhưng không thể sửa đổi. </li></ul></ul><ul><ul><li>Cung cấp các cơ chế để có thể chuyển đổi từ chế độ người dùng sang chế độ người điều hành và ngược lại. </li></ul></ul><ul><ul><li>Chúng ta đã thấy, địa chỉ mà bộ xử lý đưa ra phải được biến đổi từ địa chỉ ảo sang địa chỉ vật lý. </li></ul></ul>
  25. 25. Câu hỏi bài tập Ôn tập bộ nhớ máy tính <ul><li>Ôn tập </li></ul><ul><ul><li>Sự khác nhau giữa SRAM và DRAM? Trong máy tính chúng được dùng ở đâu? </li></ul></ul><ul><ul><li>Mục tiêu của các cấp bộ nhớ? </li></ul></ul><ul><ul><li>Nêu hai nguyên tắc mà cache dựa vào đó để vận hành. </li></ul></ul><ul><ul><li>Các nguyên nhân chính gây thất bại cache? </li></ul></ul><ul><ul><li>Các giải pháp đảm bảo tính đồng nhất dữ liệu trong hệ thống bộ nhớ đa xử lý có bộ nhớ chia sẻ dùng chung? </li></ul></ul><ul><ul><li>Các cách nới rộng dãy thông của bộ nhớ trong? </li></ul></ul><ul><ul><li>Tại sao phải dùng bộ nhớ ảo? </li></ul></ul><ul><ul><li>Sự khác biệt giữa cache và bộ nhớ ảo? </li></ul></ul>
  26. 26. THE - END Thank You !

×