Bài tập kiến trúc máy tính chương 4 năm 2024

Dưới đây là tổng hợp các file tài liệu Kiến trúc máy tính mà mình sưu tầm được. Các bạn nhấn vào nút để tải file về nhé, File trên Scribd chỉ là để xem trước file.

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

Toàn bộ file các bạn xem và tải trong thư mục nhé! Ở đây mình chỉ demo một file

2. Tổng hợp bài tập môn kiến trúc máy tính

Ở đây mình chỉ demo một file, các file còn lại các bạn xem trong thư mục nhé

3. Tổng hợp đề thi môn kiến trúc máy tính

Bài tập kiến trúc máy tính chương 4 năm 2024

Ở đây mình chỉ minh hoạ 1 đề thi, các đề còn lại các bạn xem trong thư mục nhé

4. Sách về kiến trúc máy tính

Hai cuốn này đều là sách tiếng anh nha. Mình sẽ demo một cuốn.

5. Đề cương ôn tập

6. Hướng dẫn sử dụng trình mô phỏng hợp ngữ MARS

Tài liệu môn Lý thuyết mạch 1

Tài liệu sưu tầm từ: https://www.tailieubkhn.com/2021/02/kien-truc-may-tinh.html

Uploaded by

minhduong

100% found this document useful (1 vote)

1K views

42 pages

Kiến trúc máy tính

Copyright

© © All Rights Reserved

Available Formats

PDF, TXT or read online from Scribd

Share this document

Did you find this document useful?

Is this content inappropriate?

100% found this document useful (1 vote)

1K views42 pages

Kien Truc May Tinh Chuong 4a

Uploaded by

minhduong

Kiến trúc máy tính

Jump to Page

You are on page 1of 42

Search inside document

Reward Your Curiosity

Everything you want to read.

Anytime. Anywhere. Any device.

No Commitment. Cancel anytime.

Bài tập kiến trúc máy tính chương 4 năm 2024

  • 1. tính Chương 4 BỘ XỬ LÝ TRUNG TÂM (CPU)
  • 2. 2 Nội dung chương 4  Cấu trúc chung của bộ xử lý  Khối điều khiển  Khối số học & logic  Ho?t d?ng c?a CPU  RISC & CISC
  • 3. 3 Sơ đồ cấu trúc cơ bản của CPU
  • 4. 4 Cấu trúc chung của bộ xử lý (BXL)  Cấu trúc  Đơn vị điều khiển (Control Unit - CU)  Đơn vị số học và logic (Arithmetic and Logic Unit - ALU)  Tập thanh ghi (Register File - RF)  Đơn vị nối ghép bus (Bus Interface Unit - BIU)  Bus bên trong (Internal Bus)  Các thanh ghi (Registers)
  • 5. 5 Cấu trúc chung của bộ xử lý (BXL)  Chức năng  Điều khiển toàn bộ hoạt động của hệ thống  Xử lý dữ liệu  Nguyên tắc hoạt động  BXL hoạt động dựa theo chương trình nằm sẵn trong bộ nhớ
  • 6. 6 Cấu trúc chung của bộ xử lý (BXL)  Các nhiệm vụ của BXL  Nhận lệnh: nhận lệnh từ bộ nhớ  Giải mã lệnh: Giải mã lệnh được nhận vào để biết lệnh làm gì  Nhận dữ liệu: Lệnh có thể yêu cầu nhận dữ liệu từ bên ngoài vào  Xử lý dữ liệu: Lệnh có thể yêu cầu thực hiện một phép toán nào đó  Ghi dữ liệu: Lệnh có thể yêu cầu cất kết quả ra ngoài Ngoài ra, trong quá trình thực hiện chương trình còn nhận các yêu cầu từ bên ngoài, xử lý các yêu cầu đó
  • 7. 7 BXL với bus hệ thống
  • 8. 8 Cấu trúc bên trong của BXL
  • 9. 9 Phân tích nhiệm vụ của BXL  Nhận lệnh (Fetch Instructions - FI)  Địa chỉ của lệnh cần thực hiện nằm trong bộ đếm chương trình (PC - Program Counter), được đưa qua bộ đệm địa chỉ, qua bus địa chỉ để tìm ra ngăn nhớ chứa lệnh  Tiếp theo, BXL phát ra tín hiệu đọc ngăn nhớ vừa tìm được  Nội dung của ngăn nhớ được chuyển qua bus dữ liệu và đưa đến thanh ghi lệnh (Instruction Reg.)
  • 10. 10 Phân tích nhiệm vụ của BXL  Giải mã lệnh (Interpret Instructions - II)  Lệnh từ thanh ghi lệnh được đưa đến khối điều khiển  Tại đây, lệnh được giải mã để xác định thao tác mà lệnh yêu cầu  Khi đó, khối điều khiển sẽ phát ra tín hiệu điều khiển tương ứng với lệnh đó.
  • 11. 11 Phân tích nhiệm vụ của BXL  Nhận dữ liệu (Fetch Data - FD)  BXL phát ra địa chỉ của ngăn nhớ/cổng vào ra chứa dữ liệu cần nhận  BXL phát ra tín hiệu điều khiển đọc ngăn nhớ/cổng vào ra tương ứng  Dữ liệu được chuyển qua bus dữ liệu đưa vào tập thanh ghi bên trong
  • 12. 12 Phân tích nhiệm vụ của BXL  Xử lý dữ liệu (Process Data - PD)  Dữ liệu được chuyển từ các thanh ghi vào ALU  ALU sẽ thực hiện các phép toán dưới sự điều khiển của khối điều khiển  Kết quả phép toán được cất tạm thời vào thanh ghi dữ liệu
  • 13. 13 Khối điều khiển (CU)  Chức năng  ĐK nhận lệnh tiếp theo từ bộ nhớ, đưa vào thanh ghi lệnh  Tăng nội dung của PC để trỏ sang lệnh tiếp theo  Giải mã lệnh nằm trong thanh ghi lệnh để xác định thao tác mà lệnh yêu cầu  Phát ra các tín hiệu điều khiển thực hiện lệnh đó  Nhận tín hiệu yêu cầu từ bên ngoài, xử lý các tín hiệu đó.
  • 14. 14 Mô hình kết nối KĐK Khối điều khiển Thanh ghi lệnh Các t/h điều khiển bên trong BXL Các t/h điều khiển từ bus hệ thống Các t/h điều khiển đến bus hệ thống Các cờ . . . Xung nhịp Bus hệ thống
  • 15. 15 Các tín hiệu đưa đến KĐK  Nhịp: tín hiệu đồng hồ từ mạch tạo nhịp bên ngoài:  T0 là chu kỳ của xung nhịp  Mỗi thao tác của BXL cần k.T0 , k ? N  Tần số xung đồng hồ: f0 = 1/T0  Ví dụ: máy tính dùng BXL có tốc độ 5GHz Ta có: f0 = 5GHz = 5*109 Hz ? T0 = 1/f0 = 1/(5*109) = 0.2 ns  Mã lệnh từ thanh ghi lệnh đưa đến để giải mã  Các cờ từ thanh ghi cờ cho biết trạng thái của BXL  Các tín hiệu điều khiển từ bus điều khiển yêu cầu BXL T0
  • 16. 16 Các tín hiệu phát ra từ KĐK  Các tín hiệu điều khiển bên trong BXL:  Điều khiển các thanh ghi  Điều khiển ALU  Các tín hiệu điều khiển bên ngoài BXL:  Điều khiển bộ nhớ  Điều khiển các modul vào-ra
  • 17. 17 Các phương pháp thiết kế KĐK  KĐK vi chương trình (Microprogrammed Control Unit)  KĐK nối kết cứng (Hardwired Control Unit)
  • 18. 18 Đơn vị điều khiển vi chương trình
  • 19. 19 Đơn vị điều khiển vi chương trình  Bộ nhớ vi chương trình (ROM) lưu trữ các vi chương trình (microprogram)  Một vi chương trình bao gồm các vi lệnh (microinstruction)  Mỗi vi lệnh mã hoá cho một vi thao tác (microoperation)  Để hoàn thành một lệnh cần thực hiện một hoặc một vài vi chương trình  Tốc độ chậm
  • 20. 20 Đơn vị điều khiển nối kết cứng
  • 21. 21 Đơn vị điều khiển nối kết cứng  Sử dụng mạch cứng để giải mã và tạo các tín hiệu điều khiển thực hiện lệnh  Tốc độ nhanh  Đơn vị điều khiển phức tạp
  • 22. 22 Khối số học và logic (ALU)  Chức năng: thực hiện các phép toán số học và phép toán logic  Số học: cộng, trừ, nhân, chia, tăng, giảm, đảo dấu  Logic: AND, OR, NOT, XOR, dịch bit, quay bit
  • 23. 23 Mô hình kết nối ALU ALU Thanh ghi cờ Dữ liệu ra đến các thanh ghi Dữ liệu vào từ các thanh ghi T/h điều khiển từ KĐK
  • 24. 24 Hoạt động của CPU  Chu trình lệnh  Nhận lệnh  Giải mã lệnh  Nhận toán hạng  Thực hiện lệnh  Cất toán hạng  Ngắt
  • 25. 25 Giản đồ trạng thái của chu kỳ lệnh Tính toán địa chỉ lệnh Giải mã thao tác lệnh Tính toán địa chỉ toán hạng Xử lý dữ liệu Tính toán địa chỉ toán hạng Nhận lệnh Nhận toán hạng Cất toán hạng Nhiều toán hạng Nhiều kết quả DL dạng xâu hoặc vectơ Kết thúc lênh, nhận lệnh tiếp theo Kiểm tra ngắt Ngắt Không có ngắt
  • 26. 26 Nhận lệnh  CPU đưa địa chỉ của lệnh cần nhận từ bộ đếm chương trình PC ra bus địa chỉ  CPU phát tín hiệu điều khiển đọc bộ nhớ  Lệnh từ bộ nhớ được đặt lên bus dữ liệu và được CPU copy vào thanh ghi lệnh IR  CPU tăng nội dung PC để trỏ sang lệnh kế tiếp
  • 27. 27 Sơ đồ mô tả quá trình nhận lệnh
  • 28. 28 Giải mã lệnh  Lệnh từ thanh ghi lệnh IR được đưa đến đơn vị điều khiển  Đơn vị điều khiển tiến hành giải mã lệnh để xác định thao tác phải thực hiện  Giải mã lệnh xảy ra bên trong CPU
  • 29. 29 Nhận dữ liệu  CPU đưa địa chỉ của toán hạng ra bus địa chỉ  CPU phát tín hiệu điều khiển đọc  Toán hạng được đọc vào CPU  Tương tự như nhận lệnh
  • 30. 30 Nhận dữ liệu gián tiếp  CPU đưa địa chỉ ra bus địa chỉ  CPU phát tín hiệu điều khiển đọc  Nội dung ngăn nhớ được đọc vào CPU, đó chính là địa chỉ của toán hạng  Địa chỉ này được CPU phát ra bus địa chỉ để tìm ra toán hạng  CPU phát tín hiệu điều khiển đọc  Toán hạng được đọc vào CPU
  • 31. 31 Sơ đồ tả nhận toán hạng gián tiếp
  • 32. 32 Thực hiện lệnh  Có nhiều dạng tuỳ thuộc vào lệnh  Có thể là:  Đọc/Ghi bộ nhớ  Vào/Ra  Chuyển giữa các thanh ghi  Thao tác số học/logic  Chuyển điều khiển (rẽ nhánh)  ...
  • 33. 33 Ghi toán hạng  CPU đưa địa chỉ ra bus địa chỉ  CPU đưa dữ liệu cần ghi ra bus dữ liệu  CPU phát tín hiệu điều khiển ghi  Dữ liệu trên bus dữ liệu được copy đến vị trí xác định
  • 34. 34 Sơ đồ mô tả quá trình ghi toán hạng
  • 35. 35 Ngắt  Nội dung của bộ đếm chương trình PC (địa chỉ trở về sau khi ngắt) được đưa ra bus dữ liệu  CPU đưa địa chỉ (thường được lấy từ con trỏ ngăn xếp SP) ra bus địa chỉ  CPU phát tín hiệu điều khiển ghi bộ nhớ  Địa chỉ trở về trên bus dữ liệu được ghi ra vị trí xác định (ở ngăn xếp)  Địa chỉ lệnh đầu tiên của chương trình con điều khiển ngắt được nạp vào PC
  • 36. 36 Sơ đồ mô tả chu trình ngắt
  • 37. 37 Đường ống lệnh (Instruction Pipelining)  Chia chu trình lệnh thành các công đoạn và cho phép thực hiện gối lên nhau (như dây chuyền lắp ráp)  Chẳng hạn có 6 công đoạn:  Nhận lệnh (Fetch Instruction - FI)  Giải mã lệnh (Decode Instruction - DI)  Tính địa chỉ toán hạng (Calculate Operand Address-CO)  Nhận toán hạng (Fetch Operands - FO)  Thực hiện lệnh (Execute Instruction - EI)  Ghi toán hạng (Write Operands - WO)
  • 38. 38 Biểu đồ thời gian của đường ống lệnh
  • 39. 39 Các xung đột của đường ống lệch:  Xung đột có cấu trúc: do nhiều công đoạn dùng chung 1 tài nguyên  Xung đột dữ liệu: lệnh sau sử dụng kết quả của lệnh trước  Xung đột điều khiển: do rẽ nhánh gây ra
  • 40. 40 Rẽ nhánh trong Pipelining
  • 41. 41 Các kỹ thuật tiên tiến của bộ xử lý  Cấu trúc chung của các bộ xử lý tiên tiến  Các kiến trúc song song mức lệnh  Kiến trúc RISC
  • 42. 42 Cấu trúc chung của các bộ xử lý tiên tiến
  • 43. 43 Các đơn vị xử lý dữ liệu  Các đơn vị số nguyên  Các đơn vị số dấu phẩy động  Các đơn vị chức năng đặc biệt  Đơn vị xử lý dữ liệu âm thanh  Đơn vị xử lý dữ liệu hình ảnh  Đơn vị xử lý dữ liệu vector
  • 44. 44 Bộ nhớ cache  Được tích hợp trên chip vi xử lý  Bao gồm hai mức cache:  Cache L1 gồm hai phần tách rời:  Cache lệnh  Cache dữ liệu  giải quyết xung đột khi nhận lệnh và dữ liệu  Cache L2: chung cho lệnh và dữ liệu
  • 45. 45 Đơn vị quản lý bộ nhớ (MMU)  Chuyển đổi địa chỉ ảo thành địa chỉ vật lý  Cung cấp cơ chế phân trang/phân đoạn  Cung cấp chế độ bảo vệ bộ nhớ
  • 46. 46 Các kiến trúc song song mức lệnh  Siêu đường ống (Superpipeline & Hyperpipeline)  Siêu vô hướng (Superscalar)  VLIW (Very Long Instruction Word)
  • 47. 47 Superpipeline
  • 48. 48 Superscalar
  • 49. 49 VLIW (Very Long Instruction Word)
  • 50. 50 RISC  CISC và RISC  CISCComplex Instruction Set Computer:  Máy tính với tập lệnh phức tạp  Các bộ xử lý truyền thống: x86, 680x0  RISCReduced Instruction Set Computer:  Máy tính với tập lệnh thu gọn  SunSPARC, Power PC, ...  RISC đối nghịch với CISC
  • 51. 51 Các đặc trưng của RISC  Số lượng lệnh ít  Hầu hết các lệnh truy nhập toán hạng ở các thanh ghi  Truy nhập bộ nhớ bằng các lệnh LOAD/STORE  Thời gian thực hiện lệnh là một chu kỳ máy  Các lệnh có độ dài cố định (32 bit)
  • 52. 52 Các đặc trưng của RISC  Số lượng khuôn dạng lệnh là ít (<=4)  CPU có tập thanh ghi lớn  Có ít mode địa chỉ (<=4)  Hỗ trợ các thao tác của ngôn ngữ bậc cao  Đều được thiết kế kiểu pipeline lệnh
  • 53. 53 Cửa sổ thanh ghi
  • 54. 54 Kiến trúc Intel  Kiến trúc 4-bit: 4004  Kiến trúc 8-bit: 8008,8080,8085  Kiến trúc 16-bit: 8086/8088,80186,80286  Kiến trúc 32-bit: 80386, 80486, Pentium,Pentium II, Celeron, Pentium III, Pentium 4  Kiến trúc 64-bit: Itanium, Core 2 Duo
  • 55. 55 Kiến trúc 16-bit (IA-16)  Các thanh ghi bên trong: 16-bit  Xử lý các phép toán số nguyên với 16-bit  Quản lý bộ nhớ theo đoạn 64KBytes  Mở đầu cho dòng máy tính IBM-PC
  • 56. 56 Kiến trúc 32-bit (IA-32)  Các thanh ghi bên trong: 32-bit  Xử lý các phép toán số nguyên với 32-bit  Có ba chế độ làm việc:  Chế độ 8086 thực (Real 8086 mode): làm việc như một bộ xử lý 8086  Chế độ 8086 ảo (Virtual 8086 mode): làm việc như nhiều bộ xử lý 8086 (đa nhiệm 16-bit)  Chế độ bảo vệ (Protected mode)  Đa nhiệm 32-bit  Quản lý bộ nhớ ảo  Xử lý các phép toán số dấu phẩy động (từ 80486)
  • 57. 57 Kiến trúc 64-bit (IA-64)  Các thanh ghi bên trong: 64-bit  Xử lý các phép toán số nguyên với 64-bit  Xử lý các phép toán số dấu phẩy động  Không tương thích phần cứng với các bộ xử lý trước đó  Tương thích phần mềm bằng cách giả lập môi trường
  • 58. 58 Sù ph¸t triÓn cña BXL hä Intel Year Chip L transistors 1971 4004 10µm 2.3K 1974 8080 6µm 6.0K 1976 8088 3µm 29K 1982 80286 1.5µm 134K 1985 80386 1.5µm 275K 1989 80486 0.8µm 1.2M 1993 Pentium® 0.8µm 3.1M 1995 Pentium® Pro 0.6µm 15.5M 1999 Mobile PII 0.25µm 27.4 2000 Pentium® 4 0.18µm 42M 2002 Pentium® 4 (N) 0.13µm 55M 2003 Itanium® 2 (M) 0.13µm 410M
  • 59. 59 Minh häa mét sè BXL Intel 4004 - 1970s (First Microprocessor) Intel 8088 (LSI Microprocessor)
  • 60. 60 Minh häa mét sè BXL PowerPC 7400 (G4) 6.5M transistors / 450MHz / 8-10W L=0.15µm Pentium® III 28M transistors / 733MHz-1Gz / 13-26W L=0.25µm shrunk to L=0.18µm
  • 61. 61 Minh häa mét sè BXL Pentium® 4 42M transistors / 1.3-1.8GHz / 49-55W L=0.18µm Pentium® 4 “Northwood” 55M transistors / 2-2.5GHz L=0.13µm Area=131mm2 Co l¹i
  • 62. 62 Minh häa mét sè BXL PowerPC® 940 (G5) 58M transistors / 2GHz / 97W L=0.13µm Area=118mm2 Image courtesy International Business Machines All Rights ReservedIntel Itanium® 2 410M transistors / 1.3GHz / 130W L=0.13µm Area=374mm2 Image source: Intel Corporation www.intel.com
  • 63. 63 Minh häa mét sè BXL
  • 64. 64
  • 65. 65
  • 66. 66
  • 67. 67