Giáo trình kiến trúc máy tính

111 223 0
Giáo trình kiến trúc 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

TRƢỜNG ĐẠI HỌC QUẢNG BÌNH KHOA KỸ THUẬT – CÔNG NGHỆ THÔNG TIN GIÁO TRÌNH (Lƣu hành nội bộ) “KIẾN TRÚC MÁY TÍNH” (Dành cho Đại học Công nghệ thông tin) Tác giả: ThS Nguyễn Nƣơng Quỳnh Năm 2015 MỤC LỤC CHƢƠNG GIỚI THIỆU CHUNG Máy tính phân loại máy tính Kiến trúc máy tính Các hệ máy tính CHƢƠNG HỆ THỐNG MÁY TÍNH 30 Các thành phần máy tính 30 Các hoạt động máy tính 33 Liên kết hệ thống 36 CHƢƠNG BỘ XỬ LÝ TRUNG TÂM 46 Cấu trúc CPU 46 Tập lệnh CPU 55 Hoạt động CPU 63 Cấu trúc chung xử lý tiên tiến 67 Kiến trúc Intel 68 CHƢƠNG BỘ NHỚ MÁY TÍNH 71 Tổng quan hệ thống nhớ 71 Bộ nhớ bán dẫn 74 Bộ nhớ 77 Bộ nhớ đệm nhanh (CACHE) 78 Bộ nhớ 81 Hệ thống nhớ dung lƣợng lớn: RAID 92 CHƢƠNG HỆ THỐNG VÀO-RA 96 Tổng quan hệ thống vào-ra 96 Các phƣơng pháp điều khiển vào-ra 100 Bộ xử lý vào-ra 108 Nối ghép với thiết bị ngoại vi 108 TÀI LIỆU THAM KHẢO 111 CHƢƠNG GIỚI THIỆU CHUNG Máy tính phân loại máy tính 1.1 Máy tính Máy tính hay máy tính điện tử thiết bị điện tử cho phép lƣu trữ xử lý thông tin cách tự động theo chƣơng trình định trƣớc mà ngƣời không cần can thiệp vào trình xử lý Máy tính có khả lƣu trữ khối lƣợng thông tin lớn diện tích nhỏ, tốc độ xử lý thông tin nhanh chóng xác Máy tính đƣợc lắp ráp từ vài mạch tích hợp (IC) bao gồm vi xử lý, nhớ mạch giao tiếp vào ra, gọi máy vi tính 1.2 Phân loại máy tính Thông thƣờng máy tính đƣợc phân loại theo tính kỹ thuật giá tiền a Các siêu máy tính (Super Computer): máy tính đắt tiền tính kỹ thuật cao Giá bán siêu máy tính từ vài triệu USD Các siêu máy tính thƣờng máy tính vectơ hay máy tính dùng kỹ thuật vô hƣớng đƣợc thiết kế để tính toán khoa học, mô tƣợng Các siêu máy tính đƣợc thiết kế với kỹ thuật xử lý song song với nhiều xử lý (hàng ngàn đến hàng trăm ngàn xử lý siêu máy tính), có khả thực phép tính vài pico giây b Máy tính lớn (Mainframe) : có khả giải toán lớn, tốc độ tính toán nhanh Kích thƣớc nhớ làm việc lớn Đƣợc dùng cho ứng dụng quản lý, quân đƣợc dùng khoa học để mô nghiên cứu tƣơng vật lý nhƣ vụ nổ hạt nhân Dùng kỹ thuật xử lý song song có hệ thống vào mạnh Giá máy tính lớn từ vài trăm ngàn USD đến hàng triệu USD c Máy tính mini (Minicomputer): Là loại máy cở trung, giá thành thấp máy tính lớn, tính mạnh nên máy tính mini đƣợc ƣa dùng nghiên cứu khoa học, giá máy tính mini từ vài chục USD đến vài trăm ngàn USD d Máy vi tính (Microcomputer): loại máy tính dùng vi xử lý làm cốt lõi, vi điều khiển Tốc độ phát triển vi xử lý 32 bit 64 bit đại làm khoảng cách máy tính lớn máy vi tính ngày thu hẹp Giá máy vi tính từ vài trăm USD đến vài ngàn USD Kiến trúc máy tính 2.1 Kiến trúc máy tính Để tìm hiểu kiến trúc máy tính, cần phân biệt rõ khác bản, thuộc nguyên lý kiến trúc (architecture) cấu trúc (organization & structure) máy tính: - Kiến trúc máy tính nghiên cứu thuộc tính hệ thống mà ngƣời lập trình nhìn thấy đƣợc, thuộc tính định trực tiếp đến việc thực thi chƣơng trình tính toán, xử lý liệu - Cấu trúc máy tính nghiên cứu thành phần chức kết nối chúng để tạo nên máy tính, nhằm thực chức tính kỹ thuật kiến trúc Những thuộc tính liên quan đến kiến trúc bao gồm tập lệnh mà CPU thực hiện, số bit đƣợc sử dụng để biểu diễn loại liệu khác nhau, chế nhập/xuất liệu, kỹ thuật đánh địa ô nhớ, v.v Cấu trúc máy tính lại bao gồm thuộc tính kỹ thuật mà ngƣời lập trình không nhận biết đƣợc nhƣ tín hiệu điều khiển, giao diện máy tính thiết bị ngoại vi, công nghệ xây dựng nhớ, v.v… Chẳng hạn việc định máy tính có cần lệnh để thực phép nhân hay không vấn đề kiến trúc Còn thể lệnh nhân đơn vị vật lý cụ thể (chẳng hạn, đơn vị thuộc phần cứng đặc biệt, hay thực lặp nhiều phép cộng) lại vấn đề cấu trúc Để làm ví dụ minh họa khác biệt ta xem máy tính Trung tâm nghiên cứu Các máy tínhkiến trúc giống theo quan điểm ngƣời lập trình Chúng có số ghi (tức thiết bị lƣu trữ tạm thời), có tập lệnh dạng toán hạng đƣợc nạp vào nhớ giống Tuy nhiên hệ thống khác mặt cấu trúc: số vi xử lý khác nhau, kích thƣớc nhớ chúng khác hẳn nhau, cách thức liệu đƣợc truyền từ nhớ đến vi xử lý không giống Kiến trúc máy tính thƣờng đƣợc ứng dụng khoảng thời gian dài, hàng chục năm; cấu trúc thƣờng thay đổi với phát triển công nghệ Trên kiến trúc, hãng chế tạo máy tính đƣa nhiều loại máy tính khác cấu trúc, đặc trƣng hiệu suất, giá thành khác Các sản phẩm IBM ví dụ điển hình Kiến trúc máy tính IBM đƣợc ứng dụng ngày cờ thƣơng hiệu IBM Ngƣời lập trình thƣờng cần đến kiến thức kiến trúc, giúp ngƣời lập trình nhận biết chƣơng trình tạo chạy chƣa đạt hiệu suất tối đa hệ thống, hiểu đƣợc kỹ làm tăng hiệu suất chƣơng trình, v.v Kiến trúc máy tính bao gồm ba phần: Kiến trúc phần mềm, tổ chức máy tính lắp đặt phần cứng - Kiến trúc phần mềm máy tính chủ yếu kiến trúc phần mềm xử lý, bao gồm: tập lệnh, dạng lệnh kiểu định vị + Trong đó, tập lệnh tập hợp lệnh mã máy (mã nhị phân) hoàn chỉnh hiểu đƣợc xử lý bới xử lý trung tâm, thông thƣờng lệnh tập lệnh đƣợc trình bày dƣới dạng hợp ngữ Mỗi lệnh chứa thông tin yêu cầu xử lý thực hiện, bao gồm: mã tác vụ, địa toán hạng nguồn, địa toán hạng kết quả, lệnh (thông thƣờng thông tin ẩn) + Kiểu định vị cách thức thâm nhập toán hạng Kiến trúc phần mềm phần mà lập trình viên hệ thống phải nắm vững để việc lập trình hiểu quả, sai sót - Phần tổ chức máy tính liên quan đến cấu trúc bên xử lý, cấu trúc bus, cấp nhớ mặt kỹ thuật khác máy tính - Lắp đặt phần cứng máy tính ám việc lắp ráp máy tính dùng linh kiện điện tử phận phần cứng cần thiết Ta nên lƣu ý vài máy tínhkiến trúc phần mềm nhƣng phần tổ chức lắp đặt phần cứng khác 2.2 Kiến trúc tập lệnh Kiến trúc tập lệnh máy tính bao gồm: - Tập lệnh: tập hợp chuỗi số nhị phân mã hoá cho thao tác mà máy tính thực đƣợc - Các kiểu liệu: kiểu liệu mà máy tính xử lý 2.3 Tổ chức máy tính Các thành phần máy tính: - Bộ xử lý trung tâm (Central Processing Unit): Điều khiển hoạt động máy tính xử lý liệu - Bộ nhớ (Main Memory): Chứa chƣơng trình liệu đƣợc sử dụng - Hệ thống vào (Input/Output System): Trao đổi thong tin máy tính với bên - Liên kết hệ thống (System Interconnection): Kết nối vận chuyển thông tin thành phần máy tính với Các hệ máy tính Sự phát triển máy tính đƣợc mô tả dựa tiến công nghệ chế tạo linh kiện máy tính nhƣ: xử lý, nhớ, ngoại vi,…Ta nói máy tính điện tử số trải qua năm hệ liên tiếp Việc chuyển từ hệ trƣớc sang hệ sau đƣợc đặc trƣng thay đổi công nghệ 3.1 Thế hệ 1: Máy tính dùng đèn điện tử Về kỹ thuật : Linh kiện dùng đèn điện tử, độ tin cậy thấp, tổn hao lƣợng lớn Tốc độ tính toán từ vài nghìn đến vài trăm nghìn phép tính/giây Về phần mềm : Chủ yếu sử dụng ngôn ngữ máy để lập trình Về ứng dụng : Mỗi máy tính đƣợc nhóm ngƣời thực tất từ thiết kế, xây dựng lập trình , thao tác đến quản lý Mục đích chủ yếu phục vụ nghiên cứu khoa học kỹ thuật Hình 1: Máy tính dùng đèn điện tử ENIAC ENIAC (Electronic Numerical Integrator and Computer) máy tính điện tử số Giáo sƣ Mauchly ngƣời học trò Eckert Đại học Pennsylvania thiết kế vào năm 1943 đƣợc hoàn thành vào năm 1946 Đây máy tính khổng lồ với thể tích dài 20 mét, cao 2,8 mét rộng vài mét ENIAC bao gồm: 18.000 đèn điện tử, 1.500 công tắc tự động, cân nặng 30 tấn, tiêu thụ 140KW Nó có 20 ghi 10 bit (tính toán số thập phân) Có khả thực 5.000 phép toán cộng giây Công việc lập trình tay cách đấu nối đầu cắm điện dùng ngắt điện 3.2 Thế hệ 2: Máy tính dùng transistor Công ty Bell phát minh transistor vào năm 1947 hệ thứ hai máy tính đƣợc đặc trƣng thay đèn điện tử transistor lƣỡng cực Máy tính hệ có đặc điểm sau : Về kỹ thuật : Linh kiện chủ yếu transistor Bộ nhớ có dung lƣợng khác lớn Kích thƣớc máy tính giảm, rẻ tiền hơn, tiêu tốn lƣợng Về phần mềm : Ngôn ngữ cấp cao xuất nhƣ FORTRAN năm 1956, COBOL năm 1959, ALGOL năm 1960 hệ điều hành kiểu (Batch Processing) đƣợc dùng Trong hệ điều hành này, chƣơng trình ngƣời dùng thứ đƣợc chạy, xong đến chƣơng trình ngƣời dùng thứ hai tiếp tục Về ứng dụng : tham gia giải toán kinh tế xã hội Hình 2: Máy tính hệ thứ hai 3.3 Thế hệ 3: Máy tính dùng mạch tích hợp SSI, MSI LSI Thế hệ thứ ba đƣợc đánh dấu xuất mạch kết (mạch tích hợp IC: Integrated Circuit) Các mạch kết độ tích hợp mật độ thấp (SSI: Small Scale Integration) chứa vài chục linh kiện kết độ tích hợp mật độ trung bình (MSI: Medium Scale Integration) chứa hàng trăm linh kiện mạch tích hợp Mạch in nhiều lớp xuất hiện, nhớ bán dẫn bắt đầu thay nhớ xuyến từ Máy tính đa chƣơng trình hệ điều hành chia thời gian đƣợc dùng Máy tính hệ có đặc điểm sau : Về kỹ thuật: Linh kiện chủ yếu sử dụng mạch tích hợp (IC), thiết bị ngoại vi đƣợc cải tiến, đĩa từ đƣợc sử dụng rộng rãi Tốc độ tính toán đạt vài triệu phép toán giây, dung lƣợng nhớ đạt vài MB Về phần mềm: Xuất nhiều hệ điều hành khác nhau, xử lý song song Phần mềm đa dạng, chất lƣợng cao, cho phép khai thác máy tính theo nhiều chế độ khác Về ứng dụng: Tham gia vào nhiều lĩnh vực xã hội Hình 3: Máy hệ thứ ba UNIVAC 3.4 Thế hệ 4: Máy tính dùng mạch tích hợp VLSI Thế hệ thứ tƣ đƣợc đánh dấu IC có mật độ tích hợp cao (LSI: Large Scale Integration) chứa hàng ngàn linh kiện Các IC mật độ tích hợp cỡ lớn (VLSI: Very Large Scale Integration) chứa 10 ngàn linh kiện mạch Hiện nay, chip VLSI chứa hàng triệu linh kiện Tốc đọ đạt tời hang chục triệu phép tính giây Với xuất vi xử lý (microprocessor) chứa phần thực phần điều khiển xử lý, phát triển công nghệ bán dẫn máy vi tính đƣợc chế tạo khởi đầu cho hệ máy tính cá nhân Các nhớ bán dẫn, nhớ cache, nhớ ảo đƣợc dùng rộng rãi Các kỹ thuật cải tiến tốc độ xử lý máy tính không ngừng đƣợc phát triển: kỹ thuật ống dẫn, kỹ thuật vô hƣớng, xử lý song song mức độ cao,… Về ứng dụng: máy tính đƣợc ứng dụng hầu hết lĩnh vực xã hội 3.5 Thế hệ 5: Các nhà sản xuất nghiên cứu chế tạo máy tính mô hoạt động ngƣời, có trí khôn nhân tạo với khả tự suy diễn phát triển tình nhận đƣợc giải đƣợc yêu cầu đa dạng Ngƣời Nhật tiên phong chƣơng trình nghiên cứu đời hệ thứ máy tính, hệ máy tính thông minh, dựa ngôn ngữ trí tuệ nhân tạo nhƣ LISP PROLOG, giao diện ngƣời - máy thông minh Đến thời điểm này, nghiên cứu cho sản phẩm bƣớc đầu gần (2004) mắt sản phẩm ngƣời máy thông minh gần giống với ngƣời nhất: ASIMO (Advanced Step Innovative Mobility: Bƣớc chân tiên tiến đổi chuyển động) Với hàng trăm nghìn máy móc điện tử tối tân đặt thể, ASIMO lên/xuống cầu thang cách uyển chuyển, nhận diện ngƣời, cử hành động, giọng nói đáp ứng số mệnh lệnh ngƣời Thậm chí, bắt chƣớc cử động, gọi tên ngƣời cung cấp thông tin sau bạn hỏi, gần gũi thân thiện Hiện có nhiều công ty, viện nghiên cứu Nhật thuê Asimo tiếp khách hƣớng dẫn khách tham quan nhƣ: Viện Bảo tàng Khoa học lƣợng Đổi quốc gia, hãng IBM Nhật Bản, Công ty điện lực Tokyo Hãng Honda bắt đầu nghiên cứu ASIMO từ năm 1986 dựa vào nguyên lý chuyển động hai chân Cho tới nay, hãng chế tạo đƣợc 50 robot ASIMO Các tiến liên tục mật độ tích hợp VLSI cho phép thực mạch vi xử lý ngày mạnh (8 bit, 16 bit, 32 bit 64 bit với việc xuất xử lý RISC năm 1986 xử lý siêu vô hƣớng năm 1990) Chính xử lý giúp thực máy tính song song với từ vài xử lý đến vài ngàn xử lý Biểu diễn liệu số học máy tính Các máy tính xử lý thông tin số chữ Các thông tin đƣợc biểu diễn dƣới dạng mã định Bản chất vật lý việc biểu diễn thông tin điện áp (“0” ứng với điện áp, “1” ứng với điện áp mức quy chuẩn mạch điện tử) việc mã hoá thông tin số chữ đƣợc tuân theo chuẩn quốc tế Mã hiệu để mã hoá thông tin cho máy tính xử lý giá trị biến nhị phân "0" "1", tƣơng ứng với biến logic "False" "True" Một biến nhận hai giá trị “0” “1” đƣợc gọi bit (Binary Digit) Hai trạng thái bit, thực chất giá trị tƣơng ứng với "False" "True", hay trạng thái "tắt" hoăc "đóng" công tắc điện, đƣợc sử dụng để mã hoá cho tất ký tự (gồm số, chữ ký tự đặc biệt khác) Các bit đƣợc ghép lại thành đơn vị mang thông tin đầy đủ - mã tự - cho ký tự biểu diễn số, ký tự chữ ký tự đặc biệt khác 10 Để nâng cao hiệu suất làm việc CPU máy tính, ta thƣờng dùng nhớ đệm – Buffer Trao đổi liệu thiết bị ngoại vi CPU đƣợc tiến hành theo bƣớc: - Trao đổi liệu CPU nhớ đệm, thực nhờ lệnh CPU - Trao đổi liệu nhớ đệm thiết bị ngoại vi Tốc độ trao đổi đƣợc dịnh tốc độ xử lý thiết bị ngoại vi Quá trình trao đổi nhớ đệm điều khiển thông qua tín hiệu điều khiển từ CPU Tất ngoại vi đƣợc nối vào xử lý nhớ hệ thống dây nối phức tạp tính đa dạng ngoại vi 97 Cấu trúc chung thiết bị ngoại vi: Dữ liệu Đệm liệu Chuyển đổi nhị phân tín hiệu Modul vào Dữ liệu từ môi trường Logic điều khiển - Bộ chuyển đổi tín hiệu: chuyển đổi liệu bên bên máy tính - Bộ đệm liệu: lƣu trữ liệu trung gian máy tính thiết bị ngoại vi, đặt bên thiết bị ngoại vi - Khối logic điều khiển: điều khiển hoạt động thiết bị ngoại vi đáp ứng theo yêu cầu modul vào 1.3 Mô-đun nối ghép vào-ra Chức nối ghép thiết bị ngoại vi với bus máy tính - Điều khiển định thời gian cho trình trao đổi - Trao đổi thông tin với CPU - Trao đổi thong tin với thiết bị ngoại vi - Đệm bên máy với thiết bị ngoại vi - Phát lỗi thiết bị ngoại vi Cấu trúc chung Modul vào ra: Thanh ghi liệu cổng IO liệu liệu Thanh ghi điều khiển trạng thái địa 98 điều khiển cổng IO liệu Các thành phần modul vào ra: - Thanh ghi liệu: đệm liệu trình trao đổi - Các cổng vào (IO port): kết nối với thiết bị ngoại vi, cổng có địa xác định chuẩn kết nối riêng phụ thuộc vào sơ đồ chân - Thanh ghi trạng thái điều khiển: lƣu giữ thong tin trạng thái/điều khiển cho cổng vào - Khối logic điều khiển: điều khiển modul vào 1.4 Các phương pháp địa hóa cổng vào-ra Không gian địa vi xử lý: Một số vi xử lý quản lý không gian địa gọi không gian địa nhớ Ví dụ: vi xử lý 680x0 (Motorola) Một số vi xử lý quản lý không gian địa nhớ địa cổng vào tách biệt Số đƣờng truyền địa tới hai không gian khác Ví dụ: vi xử lý Intel Đặc điểm vi xử lý không gian địa chỉ: - Có tín hiệu điều khiển phân biệt truy cập nhớ hay thiết bị vào - Trong tập lệnh có lệnh chuyên dụng cho hai không gian riêng Các phƣơng pháp địa hoá cổng I/O 99 - I/O theo đồ nhớ (Memory Mapped IO): Vào cổng đƣợc đánh địa theo không gian địa nhớ Thao tác vào nhƣ việc đọc / ghi nhớ CPU trao đổi liệu với cổng vào thông qua lệnh truy nhập liệu với nhớ Có thể thực hệ thống - I/O riêng biệt: Cổng vào đƣợc đánh địa theo không gian vào riêng biệt CPU trao đổi liệu với cổng thông qua lệnh I/O chuyên dụng (In/Out) Có thể thực hệ thống có không gian địa vào riêng biệt Các phƣơng pháp điều khiển vào-ra 2.1 Vào điều khiển thăm dò Nguyên tắc chung: CPU muốn làm việc với đối tƣợng đó, trƣớc tiên phải kiểm tra xem thiết bị có trạng thái sẵn sang làm việc hay không, có phát tín hiệu điều khiển đọc ghi thiết bị thực việc trao đổi liệu Hoạt động: - CPU yêu cầu thao tác vào - Modul vào thực thao tác - CPU kiểm tra bit trạng thái: Nếu chƣa sẵn sang quay lại kiểm tra, sẵn sang thực trao đổi liệu với modul vào Ví dụ: Bộ phận đo nhiệt (thiết bị vào) lắp sẵn hệ thống, lúc cung cấp số đo nhiệt độ đối tƣợng cần điều chỉnh Một đèn LED nét (thiết bị ra) dùng để thị giá trị đại lƣợng vật lý định hệ thống nói Nhƣ vậy, CPU muốn có thong tin nhiệt độ hệ thống việc đọc cổng ghép với đo nhiệt độ, CPU muốn biểu diễn thong tin vừa đọc đƣợc đèn LED việc đƣa tín hiệu điều khiển tới mà kiểm tra xem thiết bị có sẵn sang làm việc hay không Cổng vào số (có địa 00) đƣợc dung để đọc trạng thái sẵn sang hai thiết bị ngoại vi Tín hiệu sẵn sang TBNV số (cổng vào 01) đƣợc đặt vào bit D0, tín hiệu sẵn sang TBNV số (cổng vào 02) đƣợc đặt vào bit D1 Các bit có giá trị thiết bị ngoại vi tƣơng ứng trạng thái sẵn sang làm việc với CPU chúng đƣợc đƣa vào BUS liệu CPU đọc lệnh đọc cổng vào số 100 bắt đầu Đọc cổng 00 Bit D0=1? Đọc cổng 01 Hết số liệu Kết thúc 101 Thăm dò Đọc liệu từ cổng 01 2.2 Vào-ra điều khiển ngắt Khối chức thực việc đáp ứng yêu cầu phục vụ CPU thiết bị vào/ra thiết bị điều khiển ngắt (Interrupt Controller) Để hiểu ngắt cần thiết nhƣ nào, ta xét khả sau: - Thiết bị vào/ra cần đến CPU có trao đổi liệu CPU với thiết bị vào/ra - Một số thiết bị vào/ra hoạt động chậm so với khả xử lý CPU, vậy, việc CPU phải chờ đợi để trao đổi liệu làm nhiều thời gian Dựa thực tế này, kiến trúc máy tính đề nghị giải pháp hữu hiệu nhằm làm tăng hiệu suất hoạt động xử lý liệu CPU nhƣ máy tính nói chung Giải pháp dựa quy trình sau: 102 - Thiết bị ngoại vi muốn làm việc với CPU phải gửi yêu cầu ngắt đến CPU thông qua tín hiệu yêu cầu ngắt (Interrupt Request Signal) - CPU tạm dừng tiến trình thực hiện, gửi tín hiệu chấp nhận phục vụ ngắt cho thiết bị vào/ra - CPU tiến hành phục vụ thiết bị vào/ra thực chất thực việc trao đổi liệu, thực xong quay tiếp tục công việc bỏ dở Thông thƣờng trình vào theo ngắt đƣợc trợ giúp thiết bị điều khiển ngắt PIC PIC có chức ghi nhận yêu cầu ngắt IRQ cung cấp cho CPU số ngắt đại diện cho địa chƣơng trình phục vụ ngắt tƣơng ứng yêu cầu ngắt IRQ Cấu trúc hệ thống ngắt Quá trình vào theo ngắt: - CPU thực chƣơng trình - Thiết bị vào có yêu cấu phục vụ phát tín hiệu IRQ cho PIC - CPU hoàn thành nốt câu lệnh chƣơng trình thực Tiếp theo CPU phát tín hiệu INTA (Interrupt Acknowledge) trả lời PIC báo sẵn sang phục vụ trình ngắt - PIC phát số hiệu ngắt (con số đại diện cho địa chƣơng trình phục vụ ngắt tƣơng ứng với tín hiệu IRQ) cho CPU Dựa số hiệu ngắt CPU kích hoạt thực chƣơng trình phục vụ ngắt để thực vào liệu - Khi chƣơng trình phục vụ ngắt kết thúc CPU quay lại tiếp tục thực chƣơng trình vừa bị tạm dừng Ƣu điểm: 103 - CPU thực vào liệu sau có yêu cầu từ thiết bị trình vào liệu có độ tin cậy cao - CPU phục vụ thiết bj vào có yêu cầu tăng hiệu CPU 2.3 Vào theo phƣơng pháp DMA (Direct Memory Access) Việc trao đổi liệu nhớ thiết bị ngoại vi phải thông qua CPU Mặc dù có lúc CPU yêu cầu liệu, nhƣng điều khiển trình trao đổi liệu thành phần máy tính Điều làm cho CPU tham gia vào hoạt động tốc độ xử lý CPU chậm nhiều Để giải vấn đề này, kiến trúc máy tính đƣa giải pháp thiết bị vào/ra đƣợc phép truy cập trực tiếp nhớ (DMA-Direct Memory Access) Để thay CPU việc truy cập trực tiếp vào nhớ, thiết bị vào/ra đƣợc ghép thêm đơn vị điều khiển truy cập trực tiếp nhớ DMAC (DMA Controler) Cơ chế thực mang lại hiệu lớn hệ thống máy tính thu thập xử lý khối liệu phức tạp đƣợc thực nhƣ sau: - Khi thiết bị vào yêu cầu truy cập vào nhớ, thay CPU tham gia vào toàn trình này, thiết bị vào/ra đƣa yêu cầu thực truy cập trực tiếp nhớ tới CPU thông qua DMA Request Line - CPU nhận yêu cầu, thực việc trao quyền sử dụng đƣờng truyền dẫn liệu cho thiết bị vào/ra (tức treo dƣờng truyền dẫn liệu nhớ, thiết bị vào/ra CPU), sau gửi thông báo nhận biết đồng ý cho thiết bị vào/ra qua DMA Acknowledge Line) Những tín hiệu trao đổi đƣợc gọi tín hiệu bắt tay (Handshaking) - Thiết bị vào/ra thực việc Ghi Đọc nhớ trực tiếp qua đƣờng truyền dẫn liệu không thông qua CPU Nhƣ CPU tiếp tục thực thao tác xử lý khác Cấu trúc hệ thống vào liệu theo kiểu truy nhập nhớ trực tiếp 104 Quá trình DMA đƣợc thực nhƣ sau: Giả sử CPU thực bình thƣờng - DMAC đƣợc xác lập chế độ làm việc, nhận thong tin địa đầu khối nhớ chứa liệu kích thƣớc khối liệu cần truyền - Thiết bị ngoại vi phát tín hiệu DRQ cho DMAC - DMAC phát tín hiệu Hold = cho CPU đòi CPU vào chế độ DMA - CPU thực nốt chu kỳ máy, sau CPU phát tín hiệu HLDA trả lời cho DMAC tự tách khỏi hệ thống Bus Quyền điều khiển hệ thống bus thuộc DMAC - DMAC làm chủ hệ thống bus thực điều khiển toàn trình chuyển liệu trực tiếp thiết bị vào nhớ - Khi khối liệu đƣợc chuyển xong, DMAC kết thúc trình DMA việc phát tín hiệu Hold = cho CPU trả quyền điều khiển hệ thống bus cho CPU - CPU tiếp tục làm việc bình thƣờng Phƣơng pháp DMA đƣợc dung để thực truyền liệu thiết bị có khả truy xuất thong tin với khối lƣợng lớn đòi hỏi tốc độ cao nhƣ thiết bị đĩa từ, nhớ * Khối điều khiển DMAC 105 Các thành phần DMAC - Thanh ghi liệu: chứa liệu trao đổi - Thanh ghi địa chỉ: chứa địa ngăn nhớ liệu - Bộ đếm liệu: chứa số từ liệu cần trao đổi - Khối logic điều khiển: điều khiển hoạt động DMAC Hoạt động DMAC: Khi cần vào liệu CPU nhờ DMAC tiến hành vào liệu với thông tin cho biết nhƣ sau: - Địa thiết bị vào - Địa đầu mảng nhớ chứa liệu DMAC nạp ghi địa - Số từ liệu cần truyền DMAC nạp vào đếm liệu - CPU thực việc khác - DMAC điều khiển việc trao đổi liệu sau truyền từ liệu nội dung ghi địa tăng lên nội dung đếm liệu giảm xuống đơn vị - Khi đếm liệu 0, DMAC gởi tín hiệu ngắt CPU để báo kết thúc DMA * Các cấu hình thiết kế DMA System bus Cấu hình DMA 106 CPU DMAC IO module … IO module Memory Mỗi lần truyền DMA sử dụng bus hai lần - Giữa module vào với DMA - Giữa DMA với nhớ System bus Cấu hình DMAC CPU DMAC DMAC Memory IO module IO module DMAC điều khiển vài module vào Mỗi lần truyền DMAC sử dụng bus lần: - Giữa DMAC với nhớ 107 IO module Cấu hình DMAC System bus CPU DMAC Memory IO bus IO module IO module IO module Bus vào tách rời, hỗ trợ thiết bị cho phép DMA Mỗi lần truyền, DMAC sử dụng bus lần: - Giữa DMA với nhớ Bộ xử lý vào-ra - Việc điều khiển vào đƣợc sử dụng điều khiển vào chuyên dụng - Bộ xử lý vào hoạt động theo chƣơng trình riêng - Chƣơng trình xử lý vào nằm nhớ nhớ riêng - Hoạt động theo kiến trúc đa xử lý Nối ghép với thiết bị ngoại vi 4.1 Các kiểu nối ghép Có hai kiểu nối ghép vào ra: - Nối ghép song song - Nối ghép nối tiếp 108 a Nối ghép song song - Truyền bit song song - Tốc độ truyền nhanh - Cần đƣờng truyền song song - Tốn nhiều dây dẫn b Nối ghép nối tiếp - Truyền lần lƣợt bit - Cấn có chuyển đổi từ liệu song song sang nối tiếp ngƣợc lại - Tốc độ chậm - Cấn đƣờng truyền liệu 4.2 Các cấu hình nối ghép Các cấu hình ghép nối ghép - Điểm tới điểm (point to point): Qua cổng vào ghép thiết bị ngoại vi Ví dụ: PS/2, COM, LPT,… - Điểm tới đa điểm (Point to multipoint): Thông qua cổng vào ghép nhiều thiết bị vào Ví dụ: SCSI 15 thiết bị, USB 127 thiết bị, IEEE 1394 (FireWire) 63 thiết bị … 4.3 Các cổng vào-ra thông dụng - PS/2 : nối ghép bàn phím chuột - VGA(Video Graphic Adapter): Cổng nối ghép hình - LPT (Line PrinTer): nối ghép với máy in cổng song song 109 - COM (COMmunication): nối ghép với Modem, chuột, thiết bị khác Cổng nối tiếp 25 chân - USB: cổng nối tiếp đa cho phép nối ghép nối tiếp tối đa 17 thiết bị thông qua Hub 110 TÀI LIỆU THAM KHẢO [1] Trần Quang Vinh, (2004), Kiến Trúc Máy Tính, NXB Đại học Sƣ phạm [2] Nguyễn Đình Việt, (2005), Kiến Trúc Máy Tính, NXB Đại học Quốc gia Hà Nội [3] TS Vũ Đức Lung, (2007), Giáo trình Kiến trúc máy tính, Trƣờng đại học công nghệ thông tin, Đại học Quốc gia Thành phố Hồ Chí Minh [4] Võ Văn Chín, Nguyễn Hồng Vân, Phạm Hữu Tài, (2003), Giáo trình Kiến trúc máy tính, Đại học Cần Thơ 111 ... đại làm khoảng cách máy tính lớn máy vi tính ngày thu hẹp Giá máy vi tính từ vài trăm USD đến vài ngàn USD Kiến trúc máy tính 2.1 Kiến trúc máy tính Để tìm hiểu kiến trúc máy tính, cần phân biệt... làm tăng hiệu suất chƣơng trình, v.v Kiến trúc máy tính bao gồm ba phần: Kiến trúc phần mềm, tổ chức máy tính lắp đặt phần cứng - Kiến trúc phần mềm máy tính chủ yếu kiến trúc phần mềm xử lý, bao... CHUNG Máy tính phân loại máy tính Kiến trúc máy tính Các hệ máy tính CHƢƠNG HỆ THỐNG MÁY TÍNH 30 Các thành phần máy tính

Ngày đăng: 24/08/2017, 10:07

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan