Giáo trình Kĩ thuật máy tính - Chương 1: Giới thiệu chung về máy tính

pdf 113 trang huongle 4110
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Kĩ thuật máy tính - Chương 1: Giới thiệu chung về máy tính", để 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:

  • pdfgiao_trinh_ki_thuat_may_tinh_chuong_1_gioi_thieu_chung_ve_ma.pdf

Nội dung text: Giáo trình Kĩ thuật máy tính - Chương 1: Giới thiệu chung về máy tính

  1. Chương 1 GIỚI THIỆU CHUNG VỀ MÁY TÍNH 1
  2. 1.2. SỰ TIẾN HÓA CỦA MÁY TÍNH zThế hệ thứ nhất: Máy tính dùng đèn điện tử chân không (1943-1956) zThế hệ thứ hai: Máy tính dùng transistor (1957-1965) zThế hệ thứ ba: Máy tính dùng vi mạch SSI, MSI và LSI (1966-1980) zThế hệ thứ tư: Máy tính dùng vi mạch VLSI, SLSI (1981-nay) Phan Trung Kiên – ĐH Tây Bắc 2
  3. 1.2.1. Máy tính dùng đèn điện tử chân không zENIAC - Máy tính điện tử đầu tiên {Electronic Numerical Intergator And Computer {Dự án của Bộ Quốc phòng Mỹ {Do John Mauchly và John Presper Eckert ở Đại học Pennsylvania thiết kế. {Bắt đầu từ năm 1943, hoàn thành năm 1946 Phan Trung Kiên – ĐH Tây Bắc 3
  4. ENIAC zNặng 30 tấn zKích thước 140 m2 z18000 đèn điện tử và 1500 rơle z5000 phép cộng/giây zXử lý theo số thập phân zBộ nhớ chỉ lưu trữ dữ liệu zLập trình bằng cách thiết lập vị trí của các chuyển mạch và các cáp nối. Phan Trung Kiên – ĐH Tây Bắc 4
  5. ENIAC zNặng 30 tấn zKích thước 140 m2 z18000 đèn điện tử và 1500 rơle z5000 phép cộng/giây zXử lý theo số thập phân zBộ nhớ chỉ lưu trữ dữ liệu zLập trình bằng cách thiết lập vị trí của các chuyển mạch và các cáp nối. Phan Trung Kiên – ĐH Tây Bắc 5
  6. Phan Trung Kiên – ĐH Tây Bắc 6
  7. Máy tính Von Neumann zCòn gọi là máy tính IAS: Princeton Institute for Advanced Studies zĐược bắt đầu từ 1947, hoàn thành 1952 zDo John von Neumann thiết kế zĐược xây dựng theo ý tưởng “chương trình được lưu trữ” (stored-program concept) của Von Neumann/Turing (1945) Phan Trung Kiên – ĐH Tây Bắc 7
  8. Đặc điểm chính của máy tính IAS z Bao gồm các thành phần: đơn vị điều khiển, đơn vị số học và logic (ALU), bộ nhớ chính và các thiết bị vào ra. z Bộ nhớ chính chứa chương trình và dữ liệu. z Bộ nhớ chính được đánh địa chỉ theo từng ngăn nhớ không phụ thuộc vào nội dung của nó. z ALU thực hiện các phép toán với số nhị phân. z Đơn vị điều khiển nhận lệnh từ bộ nhớ, giải mã và thực hiện lệnh một cách tuần tự. z Đơn vị điều khiển điều khiển hoạt động của các thiết bị vào-ra. z Trở thành mô hình cơ bản của máy tính. Phan Trung Kiên – ĐH Tây Bắc 8
  9. Phan Trung Kiên – ĐH Tây Bắc 9
  10. Các máy tính thương mại ra đời z1947 - Eckert-Mauchly Computer Corporation zUNIVAC I (Universal Automatic Computer) z1950s - UNIVAC II zNhanh hơn zBộ nhớ lớn hơn Phan Trung Kiên – ĐH Tây Bắc 10
  11. Hãng IBM zIBM – International Business Machine z1952 – IBM 701 {Máy tính lưu trữ chương trình đầu tiên của IBM {Sử dụng cho tính toán khoa học z1955 – IBM 702 {Các ứng dụng thương mại Phan Trung Kiên – ĐH Tây Bắc 11
  12. Phan Trung Kiên – ĐH Tây Bắc 12
  13. 1.2.2. Máy tính dùng transistor zMáy tính PDP-1 của DEC (Digital Equipment Corporation) máy tính mini đầu tiên zIBM 7000 zHàng trăm nghìn phép cộng trong một giây zCác ngôn ngữ lập trình bậc cao ra đời. Phan Trung Kiên – ĐH Tây Bắc 13
  14. Phan Trung Kiên – ĐH Tây Bắc 14
  15. Phan Trung Kiên – ĐH Tây Bắc 15
  16. 1.2.3. Máy tính dùng vi mạch SSI, MSI và LSI z Vi mạch (Integrated Circuit – IC): nhiều transistor và các phần tử khác được tích hợp trên một chip bán dẫn. {SSI (Small Scale Integratinon) {MSI (Medium Scale Integration) {LSI (Large Scale Integration) {VLSI (Very Large Scale Integration) (dùng cho máy z tính hệ thứ tư) z Siêu máy tính xuất hiện: CRAY-1, VAX z Bộ vi xử lý (microprocessor) ra đời {Bộ xử lý đầu tiên: Intel 4004 (1971). Phan Trung Kiên – ĐH Tây Bắc 16
  17. Luật Moore z Gordon Moore - người đồng sáng lập Intel z Số transistors trên chip sẽ gấp đôi sau 18 tháng z Giá thành của chip hầu như không thay đổi z Mật độ cao hơn, do vậy đường dẫn ngắn hơn z Kích thước nhỏ hơn dẫn tới độ phức tạp tăng lên z Điện năng tiêu thụ ít hơn z Hệ thống có ít các chip liên kết với nhau, do đó tăng độ tin cậy Phan Trung Kiên – ĐH Tây Bắc 17
  18. Phan Trung Kiên – ĐH Tây Bắc 18
  19. Phan Trung Kiên – ĐH Tây Bắc 19
  20. Phan Trung Kiên – ĐH Tây Bắc 20
  21. Phan Trung Kiên – ĐH Tây Bắc 21
  22. Phan Trung Kiên – ĐH Tây Bắc 22
  23. Phan Trung Kiên – ĐH Tây Bắc 23
  24. Phan Trung Kiên – ĐH Tây Bắc 24
  25. 1.2.4. Máy tính dùng vi mạch VLSI Các sản phẩm chính của công nghệ VLSI: z Bộ vi xử lý (Microprocessor): CPU được chế tạo trên một chip. z Vi mạch điều khiển tổng hợp (chipset): một hoặc một vài vi mạch thực hiện được nhiều chức năng điều khiển và nối ghép. z Bộ nhớ bán dẫn (Semiconductor Memory): ROM, RAM z Các bộ vi điều khiển (Microcontroller): máy tính chuyên dụng được chế tạo trên một chip. Phan Trung Kiên – ĐH Tây Bắc 25
  26. Các hệ thống máy tính hiện đại zMáy tính nhúng zMáy tính cá nhân (PC) zMáy trạm làm việc zMáy chủ (Servers) zMạng máy tính zInternet - Mạng máy tính toàn cầu Phan Trung Kiên – ĐH Tây Bắc 26
  27. Phan Trung Kiên – ĐH Tây Bắc 27
  28. Phan Trung Kiên – ĐH Tây Bắc 28
  29. Phan Trung Kiên – ĐH Tây Bắc 29
  30. Siêu máy tính Roadrunner của IBM (2008) Phan Trung Kiên – ĐH Tây Bắc 30
  31. Roadrunner z 6 tỷ người trên trái đất dùng máy tính nhỏ thực hiện các phép toán liên tục 24 giờ/ngày, 7 ngày/ tuần ròng rã 46 năm mới bằng Roadrunner làm việc trong 1 ngày. z 6.948 chip vi xử lý lõi kép AMD Opteron trên các phiến IBM LS21 Blades z 12.960 chip Cell trên các phiến IBM QS22 Blades. z Tổng dung lượng bộ nhớ 80-terabyte. z Diện tích: 1,800 mét vuông z 90km cáp quang. z 3,9 megawatt z Hơn 1 triệu tỉ phép tính/s Phan Trung Kiên – ĐH Tây Bắc 31
  32. Phan Trung Kiên – ĐH Tây Bắc 32
  33. Các thành phần của Máy tính z Bộ xử lý trung tâm (Central Processing Unit): Điều khiển hoạt động của máy tính và xử lý dữ liệu. z Bộ nhớ chính (Main Memory): Chứa các chương trình và dữ liệu đang được sử dụng. z Hệ thống vào ra (Input/Output System): Trao đổi thông tin giữa máy tính với bên ngoài. z Liên kết hệ thống (System Interconnection): Kết nối và vận chuyển thông tin giữa các thành phần với nhau. Phan Trung Kiên – ĐH Tây Bắc 33
  34. Kiến trúc Von Neumann zBao gồm các thành phần: CPU, bộ nhớ chính và các thiết bị vào ra, liên kết hệ thống. zCác lệnh (chương trình) và dữ liệu nằm trong cùng một bộ nhớ đọc ghi. zBộ nhớ chính được đánh địa chỉ theo từng ngăn nhớ không phụ thuộc vào nội dung của nó. zLệnh được thực hiện một cách tuần tự. Phan Trung Kiên – ĐH Tây Bắc 34
  35. 1.3. Các thành phần cơ bản của máy tính zBộ xử lý trung tâm zHệ thống nhớ zHệ thống vào ra zBus liên kết hệ thống zPhần mềm Phan Trung Kiên – ĐH Tây Bắc 35
  36. Mức cao nhất Peripherals Computer Central Main Processing Memory Unit Computer Systems Interconnection Input Output Communication lines Phan Trung Kiên – ĐH Tây Bắc 36
  37. 1.3.1. Bộ xử lý trung tâm CPU (Central Processing Unit) CPU Computer Arithmetic Registers and I/O Login Unit System CPU Bus Internal CPU Memory Interconnection Control Unit Phan Trung Kiên – ĐH Tây Bắc 37
  38. Chức năng zĐiều khiển hoạt động của toàn bộ hệ thống máy tính. zXử lý dữ liệu. Phan Trung Kiên – ĐH Tây Bắc 38
  39. Nguyên tắc hoạt động cơ bản: zCPU hoạt động theo chương trình nằm trong bộ nhớ chính bằng cách nhận lần lượt từng lệnh từ bộ nhớ chính, sau đó tiến hành giải mã lệnh và phát các tín hiệu điều khiển thực thi lệnh. zTrong quá trình thực thi lệnh, CPU có thể trao đổi dữ liệu với bộ nhớ chính hay hệ thống vào – ra. Phan Trung Kiên – ĐH Tây Bắc 39
  40. Các thành phần cơ bản của CPU: Đơn vị điều khiển Đơn vị số học Tập các thanh ghi (CU) và logic(ALU) (RF) Bus bên trong Đơn vị nối ghép bus (BIU) Bus bên ngoài Phan Trung Kiên – ĐH Tây Bắc 40
  41. Các thành phần cơ bản của CPU: z Đơn vị điều khiển (Control Unit – CU): điều khiển hoạt động của máy tính theo chương trình đã định sẵn. z Đơn vị số học và logic (Arithmetic and Logic Unit – ALU): thực hiện các phép toán số học và các phép toán logic trên các dữ kiệu cụ thể. z Tập thanh ghi (Register File – RF): lưu trữ thông tin tạm thời phục vụ cho hoạt động của CPU. z Bus bên trong (Internal Bus): kết nối các thành phần bên trong CPU với nhau. z Đơn vị nối ghép bus (Bus Interface Unit – BIU): kết nối và trao đổi thông tin với nhau giữa bus bên trong (Internal bus) với bus bên ngoàI (external bus). Phan Trung Kiên – ĐH Tây Bắc 41
  42. Khái niệm bộ vi xử lý (Microprocessor) zLà CPU được chế tạo trên một vi mạch (chip). zVD: Các hệ vi xử lý của Intel: {4 bit : 4004 ( 1971) {8 bit : 8080 (1972 – 1977) {16 bit : 8086/ 8088 80286(1978 - ) {32 bit : 80386 P4 (1983 - ) {64 bit : Itanium (1992 - ) Phan Trung Kiên – ĐH Tây Bắc 42
  43. Bộ vi xử lý zTốc độ của bộ vi xử lý: được đánh giá gián tiếp thông qua tần số của xung đồng hồ (clock) cần thiết cung cấp cho bên trong bộ xử lý làm việc. T0 Phan Trung Kiên – ĐH Tây Bắc 43
  44. Bộ vi xử lý z Một thao tác của CPU mất một số nguyên lần chu kỳ T0ÎT0 càng nhỏ thì CPU càng nhanh. zTần số xung đồng hồ: f0 = 1/T0 gọi là tần số làm việc của CPU. zVD: Máy tính dùng bộ xử lý Pentium IV 12GHz. 9 Ta có: f0 = 2GHz = 2 * 10 Hz 9 ÎT0 = 1/f0 = 1(2*10 ) = 0.5 ns Phan Trung Kiên – ĐH Tây Bắc 44
  45. 1.3.2. Bộ nhớ máy tính (Memory System) zChức năng: lưu trữ chương trình và dữ liệu zCác thao tác cơ bản với bộ nhớ: {Thao tác đọc (Read) {Thao tác ghi (Write) zCác thành phần chính: {Bộ nhớ trong (Internal Memory) {Bộ nhớ ngoài (External Memory) Phan Trung Kiên – ĐH Tây Bắc 45
  46. a. Bộ nhớ trong zChức năng và đặc điểm: {Chứa các thông tin mà CPU có thể trao đổi trực tiếp {Tốc độ rất nhanh {Dung lượng không lớn {Sử dụng bộ nhớ bán dẫn: ROM và RAM zCác loại bộ nhớ trong: {Bộ nhớ chính {Bộ nhớ cache (bộ nhớ đệm thanh) Phan Trung Kiên – ĐH Tây Bắc 46
  47. Bộ nhớ chính (Main Memory) z Là thành phần nhớ tồn tại trên mọi hệ thống máy tính. z Chứa các chương trình và dữ liệu đang được CPU sử dụng. z Tổ chức thành các ngăn nhớ được đánh địa chỉ. z Ngăn nhớ thường được tổ chức theo byte. z Nội dung của ngăn nhớ có thể thay đổi, song địa chỉ vật lý của ngăn nhớ luôn cố định. Phan Trung Kiên – ĐH Tây Bắc 47
  48. Bộ nhớ chính (Main Memory) z Nội dung Địa chỉ 00101011 0000 11010101 0001 00001010 0010 01011000 0011 11111011 0100 00001000 0101 11101010 0110 00000000 0111 10011101 1000 00101010 1001 11101011 1010 00000010 1011 00101011 1100 00101011 1101 11111111 1110 10101010Phan Trung Kiên 1111 – ĐH Tây Bắc 48
  49. Bộ nhớ chính (Main Memory) zThông thường bộ nhớ chính bao gồm 2 phần: {Bộ nhớ RAM {Bộ nhớ ROM Phan Trung Kiên – ĐH Tây Bắc 49
  50. Bộ nhớ đệm nhanh (Cache Memory) z Là thành phần nhớ tố độ nhanh được đặt đệm gữa CPU và bộ nhớ chính nhằm tăng tốc độ truy cập bộ nhớ của CPU. z Tốc độ của cache nhanh hơn bộ nhớ chính nhưng dung lượng nhỏ hơn. z Cache thường được chia thành một số mức: cache L1, cache L2, z Hiện nay cache được tích hợp trên các chíp vi xử lý. z Cache có thể có hoặc không. Phan Trung Kiên – ĐH Tây Bắc 50
  51. b. Bộ nhớ ngoài z + Chức năng và đặc điểm: {Lưu giữ tài nguyên phần mềm của máy tính, bao gồm : hệ điều hành. Các chương trình và dữ liệu. {Bộ nhớ ngoài đựơc kết nối với hệ thống dưới dạng các thiết bị vào – ra. {Dung lượng lớn. {Tốc độ chậm. z Các loại bộ nhớ ngoài: {Bộ nhớ từ: đĩa cứng, đĩa mềm {Bộ nhớ quang: đĩa CD, DVD {Bộ nhớ bán dẫn: Flash disk Phan Trung Kiên – ĐH Tây Bắc 51
  52. 3. Hệ thống vào - ra (Input/Output System) zChức năng: Trao đổi thông tin với thế giới bên ngoài. zCác thao tác cơ bản: {Vào dữ liệu(Input) {Ra dữ liệu(Output) zCác thành phần chính: {Các thiết bị ngoại vi {Các mô - đun nối ghép vào – ra Phan Trung Kiên – ĐH Tây Bắc 52
  53. Cấu trúc cơ bản của hệ thống vào – ra: Cổng Thiết bị vào ngoại vi ra Cổng Thiết bị vào Nối ghép ngoại vi ra với CPU va bô nhớ chính Mô - đun vào - ra Cổng Thiết bị vào ngoại vi ra Phan Trung Kiên – ĐH Tây Bắc 53
  54. Các thiết bị ngoại vi (Peripheral Devices): zChức năng: chuyển đổi dữ liệu giữa bên trong và bên ngoài máy tính. zCác loại thiết bị ngoại vi cơ bản: {Thiết bị vào: bàn phím, chuột, máy quét {Thiết bị ra: màn hình, máy in {Thiết bị nhớ: các ổ đĩa {Thiết bị truyền thông: modem Phan Trung Kiên – ĐH Tây Bắc 54
  55. Các mô - đun vào – ra (IO Modules) zChức năng: nối ghép thiết bị ngoại vi với máy tính zKhái niệm cổng vào – ra {Trong mỗi mô đun vào – ra có một hoặc vài cổng vào – ra (IO/Port). Mỗi cổng vào ra cũng được đánh một địa chỉ xác định {Thiết bị ngoại vi đựơc kết nối và trao đổi dữ liệu với bên trong máy tính thông qua các cổng vào - ra Phan Trung Kiên – ĐH Tây Bắc 55
  56. Truyền dữ liệu giữa thiết bị và máy tính: zPhải có kết nối vật lý zTrên kết nối vật lý đótồn tại quy tắc về trao đổi dữ liệu (phần mềm) gọi là giao thức. Phan Trung Kiên – ĐH Tây Bắc 56
  57. Mô hình máy tính giả định Phan Trung Kiên – ĐH Tây Bắc 57
  58. 1.4. Các hoạt động cơ bản của máy tính zThực hiện chương trình zNgắt zChuyển nhượng quyền điều khiển hệ thống Phan Trung Kiên – ĐH Tây Bắc 58
  59. 1.4.1. Thực hiện chương trình z Nguyên tắc hoạt động: {Chương trình đang thực hiện phải nằm trong bộ nhớ chính của máy tính. {Thực hiện chương trình là lặp đi lặp lại chu trình lệnh gồm 2 bước: zNhận lệnh zThực thi lệnh z Việc thực hiện chương trình chỉ bị dừng nếu như tắt máy tính, bị lỗi nghiêm trọng khi thực thi lệnh hoặc gặp lệnh dừng chương trình. Phan Trung Kiên – ĐH Tây Bắc 59
  60. 1.4.1. Thực hiện chương trình Bắt đầu Nhận lệnh Thực thi lệnhh Dừng Phan Trung Kiên – ĐH Tây Bắc 60
  61. Nhận lệnh: zBắt đầu mỗi chu trình lệnh, CPU sẽ nhận lệnh từ bộ nhớ chính đưa vào bên trong CPU. zBên trong CPU có 2 thanh ghi liên quan trực tiếp đến quá trình nhận lệnh: {Thanh ghi bộ đếm chương trình (Program Count – PC): chứa địa chỉ của lệnh sẽ được nhận vào. {Thanh ghi lệnh (Instruction Register – IR): lệnh được nhận từ bộ nhớ chính sẽ được nạp vào IR. Phan Trung Kiên – ĐH Tây Bắc 61
  62. Nhận lệnh: zHoạt động nhận lệnh diễn ra như sau: {CPU phát địa chỉ của lệnh cần nhận từ PC đến bộ nhớ chính {CPU phát tín hiệu điều khiển đọc bộ nhớ chính(MEMR – Memory Read) {Lệnh từ bộ nhớ chính được chuyển vào IR {Nội dung của PC tự động tăng để trỏ sang lệnh kế tiếp nằm ngay sau lệnh vừa được nhận. Phan Trung Kiên – ĐH Tây Bắc 62
  63. Minh họa quá trình nhận lệnh CPU CPU Lệnh Lệnh PC 3010 Lệnh Lệnh 3010 303 PC 302 3020 Lệnh i 302 Lệnh i 3020 3030 Lệnh i+1 Lệnh i+1 3030 3040 Lệnh Lệnh 3040 Lệnh Lệnh IR IR Lệnh Lệnh Lệnh i Phan Trung Kiên – ĐH Tây Bắc 63
  64. Thực thi lệnh: z Lệnh nằm ở IR sẽ được chuyển sang đơn vị điều khiển (Control Unit). Đơn vị điều khiển sẽ tiến hành giải mã lệnh và phát các tín hiệu điều khiển thực thi thao tác mà lệnh yêu cầu. z Các kiểu thao tác của lệnh: {Trao đổi dữ liệu giữa CPU và bộ nhớ chính {Trao đổi dữ liệu giữa CPU và mô - đun vào – ra. {Xử lý dữ liệu thực hiện các phép toán số họchoặc phép toán logic với các dữ liệu {Điều khiển rẽ nhánh {Kết hợp các thao tác trên Phan Trung Kiên – ĐH Tây Bắc 64
  65. Định dạng lệnh Phan Trung Kiên – ĐH Tây Bắc 65
  66. Ví dụ Phan Trung Kiên – ĐH Tây Bắc 66
  67. Sơ đồ chu trình thực hiện lệnh Phan Trung Kiên – ĐH Tây Bắc 67
  68. 1.4.2. Hoạt động ngắt zKhái niệm chung về ngắt (Interrupt): Ngắt là cơ chế cho phép CPU tạm dừng chương trình đang thực hiện để chuyển sang thực hiện chương trình khác, gọi là chương trình con phục vụ ngắt. Phan Trung Kiên – ĐH Tây Bắc 68
  69. Các loại ngắt: z Ngắt do lỗi thực hiện chương trình, ví dụ : tràn số, chia cho 0 z Ngắt do lỗi phần cứng, ví dụ lỗi kiểm tra phần cứng RAM z Ngắt do tín hiệu yêu cầu từ mô - đun vào – ra gửi đến CPU, yêu cầu CPU ngắt để chuyển sang thực hiện chương trình con ngắt phục vụ vào – ra tương ứng. z Ngắt do bộ TIMER (bộ định thời) ngắt định kỳ CPU để phục vụ cho chế độ hoạt động đa chương trình Phan Trung Kiên – ĐH Tây Bắc 69
  70. Chu trình xử lý ngắt: z Được thêm vào cuối chu trình lệnh z Sau khi hoàn thành một lệnh, CPU kiểm tra xem có yêu cầu ngắt gửi đến hay không. z Nếu không có tín hiệu yêu cầu ngắt thì CPU nhận lệnh kế tiếp. z Nếu có yêu cầu ngắt và ngắt đó được chấp nhận thì: {CPU cất ngữ cảnh hiện tại của chương trình đang thực hiện (các thông tin liên quan đến chương trình bị ngắt) {CPU chuyển sang thực hiện chương trình con phục vụ ngắt tương ứng. {Kết thúc chương trình con đó, CPU khôi phục lại ngữ cảnh và trở về tiếp tục thực hiện chương trình đang tạm dừng Phan Trung Kiên – ĐH Tây Bắc 70
  71. Phan Trung Kiên – ĐH Tây Bắc 71
  72. Chu trình thực hiện lệnh khi với ngắt Phan Trung Kiên – ĐH Tây Bắc 72
  73. Các chương trình con phục vụ ngắt ISR (Interrupt Service Routine): zLà tập hợp các chương trình con đã có sẵn trong bộ nhớ chính của máy tính: zNằm ở bộ nhớ ROM BIOS zNằm ở bộ nhớ RAM( chương trình phục vụ ngắt của hệ điều hành hay của người lập trình hệ thống, được nạp từ bộ nhớ ngoài vào trong RAM). Phan Trung Kiên – ĐH Tây Bắc 73
  74. Hoạt động với nhiều ngắt: zNgắt xảy ra tuần tự zNgắt xảy ra lồng nhau Phan Trung Kiên – ĐH Tây Bắc 74
  75. Ngắt tuần tự Phan Trung Kiên – ĐH Tây Bắc 75
  76. Ngắt lồng nhau Phan Trung Kiên – ĐH Tây Bắc 76
  77. Trình tự thời gian khi có nhiều ngắt Phan Trung Kiên – ĐH Tây Bắc 77
  78. 1.4.3. Chuyển nhượng quyền điều khiển hệ thống z Nguyên tắc chung: {Trong hệ thống, ngoài CPU còn có một số thành phần khác có khả năng điều khiển hệ thống. {VD: z1 bộ xử lý khác z1 bộ điều khiển vào – ra zCPU có thể trao quyền điều khiển hệ thống cho một thành phần khác. Khi đóCPU thả nổi bus và tách khỏi hệ thống, còn bộ điều khiển được trao quyền sẽ có toàn quyền sử dụng bus hệ thống để điều khiển các thành phần khác. Phan Trung Kiên – ĐH Tây Bắc 78
  79. Các bộ điều khiển vào – ra có khả năng điều khiển hệ thống: {Bộ điều khiển DMA(Direct Memory Access Controller) {Bộ xử lý vào – ra (IO Processor) Phan Trung Kiên – ĐH Tây Bắc 79
  80. 1.5. Liên kết hệ thống z1.5.1. Luồng thông tin trong máy tính z1.5.2. Cấu trúc bus cơ bản z1.5.3. Phân cấp bus trong máy tính z1.5.4. Các vấn đề liên quan đến thiết kế bus Phan Trung Kiên – ĐH Tây Bắc 80
  81. 1.5.1. Luồng thông tin trong máy tính: zCác module trong máy tính: {CPU {Module nhớ {Module vào – ra z→ Cần được kết nối với nhau Phan Trung Kiên – ĐH Tây Bắc 81
  82. Kết nối module nhớ: Phan Trung Kiên – ĐH Tây Bắc 82
  83. Kết nối module vào – ra: Phan Trung Kiên – ĐH Tây Bắc 83
  84. Kết nối CPU: Phan Trung Kiên – ĐH Tây Bắc 84
  85. → Có 4 loại thông tin: zĐịa chỉ zDữ liệu zLệnh zThông tin điều khiển Phan Trung Kiên – ĐH Tây Bắc 85
  86. 1.5.2. Cấu trúc bus cơ bản: zKhái niệm chung về bus: {Bus: tập hợp các đường kết nối dùng để vận chuyển thông tin giữa các thành phần của máy tính với nhau. {Độ rộng bus: là số đường dây của bus có thể truyền thông tin đồng thời (chỉ dùng cho bus địa chỉ và bus dữ liệu). Phan Trung Kiên – ĐH Tây Bắc 86
  87. Sơ đồ bus liên kết cơ bản: Phan Trung Kiên – ĐH Tây Bắc 87
  88. Bus địa chỉ (Address bus) zChức năng: vận chuyển địa chỉ từ CPU đến mô - đun nhớ hay mô - đun vào – ra để xác định ngăn nhớ hay cổng vào – ra mà CPU cần trao đổi thông tin. zĐộ rộng bus địa chỉ: xác định dung lượng bộ nhớ cực đại của hệ thống. Phan Trung Kiên – ĐH Tây Bắc 88
  89. Bus địa chỉ (Address bus) zNếu độ rộng bus địa chỉ là N bit (gồm N đường dây A0, A1, A2, AN-1 ) thì: z→ Có khả năng vận chuyển đựơc N bit địa chỉ đồng thời z→ Có khả năng đánh địa chỉ tối đa được 2N ngăn nhớ = 2N byte → gọi là không gian địa chỉ bộ nhớ. Phan Trung Kiên – ĐH Tây Bắc 89
  90. Ví dụ z Độ rộng bus địa chỉ của một số bộ xử lý của Intel z 8088/8086 : N = 20 bit → KGĐCBN = 220 byte = 1MB z 80286 : N = 24 bit → KGĐCBN = 224 byte = 16 MB z 80386, 80486, Pentium : N = 32 bit → KGĐCBN = 232 byte = 4 GB z Pentium II, III, 4 : N = 36 bit → KGĐCBN = 236 byte = 64 GB Phan Trung Kiên – ĐH Tây Bắc 90
  91. Bus dữ liệu(Data bus) zChức năng : {Vận chuyển lệnh từ bộ nhớ đến CPU {Vận chuyển dữ liệu giữa CPU, các mô-đun nhớ và mô-đun vào - ra với nhau zĐộ rộng bus dữ liệu: Xác định số bít dữ liệu có thể được trao đổi đồng thời Phan Trung Kiên – ĐH Tây Bắc 91
  92. Bus dữ liệu(Data bus) zNếu độ rộng bus dữ liệu là M bit (gồm M đường dây D0, D1, DM-1) thi: nghĩa là đường bus dữ liệu đócóthể vận chuyển đồng thời được M bit dữ liệu. zM thường là 8, 16, 32, 64 bit. Phan Trung Kiên – ĐH Tây Bắc 92
  93. Ví dụ zĐộ rộng bus dữ liệu của một số bộ xử lý của Intel: {8088 : M = 8 bit {8086, 80286: M = 16 bit {80386, 80486: M = 32 bit {Các Pentium: M = 64 bit Phan Trung Kiên – ĐH Tây Bắc 93
  94. Bus điều khiển(Control bus) zChức năng: vận chuyển các tín hiệu điều khiển zCác loại tín hiệu điều khiển: {Các tín hiệu điều khiển phát ra từ CPU để điều khiển mô - đun nhớ hay mô - đun vào – ra. {Các tín hiệu yêu cầu từ mô đun nhớ hay mô đun vào – ra gửi đến CPU {Tín hiệu Clock Phan Trung Kiên – ĐH Tây Bắc 94
  95. Một số tín hiệu điều khiển điển hình: z Các tín hiệu phát ra từ CPU để điều khiển đọc/ghi: {Memory Read (MEMR): điều khiển đọc dữ liệu từ một ngăn nhớ có địa chỉ xác định lện bus dữ liệu. {Memory Write (MEMW): điều khiển ghi dữ liệu có sẵn trên bus dữ liệu đến một ngăn nhớ có địa chỉ xác định. {I/O Read (IOR): điều khiển đọc dữ liệu từ một cổng vào – ra có địa chỉ xác định trên bus dữ liệu. {I/O Write (IOW): điều khiển ghi dữ liệu có sẵn trên bus dữ liệu ra một cổng có địa chỉ xác định. Phan Trung Kiên – ĐH Tây Bắc 95
  96. Một số tín hiệu điều khiển điển hình: z Các tín hiệu điều khiển ngắt: {Interrupt Request (INTR): Tín hiệu từ bộ điều khiển vào – ra gửi đến yêu cầu ngắt CPU để trao đổi vào – ra. Tín hiệu INTR có thể bị che. {Interrupt Acknowledge (INTA): Tín hiệu phát ra từ CPU báo cho bộ điều khiển vào - ra biết CPU chấp nhận ngắt. {Non Maskable Interrupt (NMI): tín hiệu ngắt không che được gửi đến ngắt CPU. {Reset:Tín hiệu từ bên ngoài gửi đến CPU và các thành phần khác để khởi động lại máy tính. Phan Trung Kiên – ĐH Tây Bắc 96
  97. Một số tín hiệu điều khiển điển hình: zCác tín hiệu điều khiển bus : {Bus Requet (BRQ): Tín hiệu từ bộ điều khiển vào – ra chuyên dụng gửi đến yêu cầu CPU chuyển nhượng quyền sử dụng bus. {Bus Grant (BGT): Tín hiệu phát ra từ CPU chấp nhận chuyển nhượng quyền sử dụng bus. {Lock: tín hiệu khóa không cho xin chuyển nhượng bus. {Unlock: tín hiệu mở khóa cho xin chuyển nhượng bus. Phan Trung Kiên – ĐH Tây Bắc 97
  98. 1.5.3. Phân cấp bus trong máy tính: zCấu trúc đơn bus: zCấu trúc đa bus: Phan Trung Kiên – ĐH Tây Bắc 98
  99. Cấu trúc đơn bus: Phan Trung Kiên – ĐH Tây Bắc 99
  100. Đặc điểm của cấu trúc đơn bus: z Tất cả các chương trình cùng nối vào một đường bus chung. z Tại một thời điểm, bus chỉ phục vụ được yêu cầu trao đổi dữ liệu. z Bus phải có tốc độ bằng tốc độ của thành phần nhanh nhất trong hệ thống. z Bus phụ thuộc vào cấu trúc bus của bộ xử lý → các mô đun nhớ và mô đun vào – ra cũng phụ thuộc vào bộ xử lý cụ thể. z → Cần phải thiết kế bus phân cấp hay cấu trúc đa bus Phan Trung Kiên – ĐH Tây Bắc 100
  101. Cấu trúc đa bus cổ điển Phan Trung Kiên – ĐH Tây Bắc 101
  102. Cấu trúc hiệu năng cao Phan Trung Kiên – ĐH Tây Bắc 102
  103. Đặc điểm của cấu trúc đa bus: zPhân cấp thành nhiều bus khác nhau cho các thành phần: {Bus của bộ xử lý {Bus bộ nhớ {Bus vào – ra zPhân cấp bus khác nhau về tốc độ zCác bus nối ghép với mô đun nhớ và mô đun vào – ra không phụ thuộc vào bộ xử lý cụ thể. Phan Trung Kiên – ĐH Tây Bắc 103
  104. Các bus điển hình trong PC z Bus của bộ xử lý (Front Side Bus - FSB): có tốc độ nhanh nhất. z Bus của bộ nhớ chính (nối ghép với các mô đun RAM). z AGP bus (Accelerated Graphic Port) - Bus đồ họa tăng tốc: nối ghép card màn hình tăng tốc. z PCI bus (Peripheral Component Interconnection): nối ghép với các TBNV có tốc độ trao đổi dữ liệu nhanh. z USB (Universal Serial Bus): Bus nối tiếp đa năng z IDE (Integrated Driver Electronics): Bus kết nối với ổ đĩa cứng hoặc ổ đĩa CD, DVD. Phan Trung Kiên – ĐH Tây Bắc 104
  105. Máy tính Pentium IV dùng Chipset 925 Phan Trung Kiên – ĐH Tây Bắc 105
  106. 1.5.4. Các vấn đề liên quan đến thiết kế bus: zCác kiểu bus: zPhân xử bus: zĐịnh thời bus (Timing) Phan Trung Kiên – ĐH Tây Bắc 106
  107. Các kiểu bus: z Bus đường riêng (Dedicated): {Các đường địa chỉ và dữ liệu tách rời nhau {Ưu điểm: điều khiển đơn giản {Nhược điểm: Có nhiều đường kết nối z Bus dồn kênh(Multiplexed): {Các đường dùng chung cho địa chỉ và dữ liệu {Có đường điều khiển riêng biệt lhi có địa chỉ hay dữ liệu {Ưu điểm : ít đường dây {Nhược điểm: zĐiều khiển phức tạp hơn zHiệu năng hạn chế Phan Trung Kiên – ĐH Tây Bắc 107
  108. Phân xử bus: z Nếu có nhiều module có khả năng điều khiển bus (VD : CPU và bộ điều khiển vào – ra ) thì cần phải có cơ chế phân xử bus z Tại một thời điểm chỉ cho phép một module điều khiển bus z Có 2 cơ chế phân xử bus: { Phân xử bus tập trung: z Có một bộ điều khiển bus (Bus Controller) hay còn gọi là bộ phân xử bus(Bus Arbiter) z Có thể là một phần của bộ xử lý hay là mạch tách rời { Phân xử phân tán: z Mỗi module có thể chiếm bus z Có đường điều khiển tới tất cả các module khác Phan Trung Kiên – ĐH Tây Bắc 108
  109. Định thời bus (Timing): z Phối hợp các sự kiện trên bus z Bus đồng bộ : {Các sự kiện xảy ra trên bus được xác định bởi một tín hiệu xung clock. {Bus điều khiển bao gồm cả đường clock {Tất cả các module có thể đọc đường clock z Bus không đồng bộ: {Không có đường tín hiệu clock {Kết thúc 1 sự kiện này trên bus sẽ kích hoạt 1 sự kiện tiếp theo Phan Trung Kiên – ĐH Tây Bắc 109
  110. Lược đồ thời gian đồng bộ Phan Trung Kiên – ĐH Tây Bắc 110
  111. Lược đồ thời gian đọc không đồng bộ Phan Trung Kiên – ĐH Tây Bắc 111
  112. Lược đồ thời gian ghi không đồng bộ Phan Trung Kiên – ĐH Tây Bắc 112
  113. Bài tập z Giả sử với máy tính giả định, cho các mã lệnh như sau: {0011: Nạp vào AC từ I/O {0111: Lưu AC ra I/O z Hãy chỉ ra các câu lệnh thực hiện chương trình sau: {Nạp vào AC từ thiết bị 5 {Cộng AC với giá trị trong ô nhớ có địa chỉ 940 {Đưa giá trị AC ra thiết bị 6. {(Giả sử giá trị sẽ đọc vào từ thiết bị 5 là 3 và ô nhớ 940 có giá trị là 2) Phan Trung Kiên – ĐH Tây Bắc 113