Bài giảng Kiến trúc và tổ chức máy tính - Chương 5: Hệ thống Vào/Ra

pdf 28 trang ngocly 4840
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc và tổ chức máy tính - Chương 5: Hệ thống Vào/Ra", để 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:

  • pdfbai_giang_kien_truc_va_to_chuc_may_tinh_chuong_5_he_thong_va.pdf

Nội dung text: Bài giảng Kiến trúc và tổ chức máy tính - Chương 5: Hệ thống Vào/Ra

  1. KIẾN TRÚC VÀ TỔ CHỨC MÁY TÍNH (Computer Organization and Architecture) Ch ươ ng 5 Hệ th ống Vào/Ra bangtqh@utc2.edu.vn Nội dung 1. Tổng quan v ề h ệ th ống vào/ra –Cấu trỳc c ơ b ản – Đặ c điểm 2. Cỏc ph ươ ng phỏp điều khi ển vào/ra –Bằng ch ươ ng trỡnh –Bằng ng ắt – Truy nh ập b ộ nh ớ tr ực ti ếp DMA 3. Ghộp n ối Thi ết b ị ngo ại vi 4. Cỏc c ổng vào/ra thụng d ụng trờn PC bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 2
  2. 5.1. Tổng quan v ề hệ thống I/O BXL Các ngắt Cache Bus chính Mạch ĐK Mạch ĐK Mạch ĐK Bộ nhớ vào/ra vào/ra vào/ra chính Đồ họa Đĩa Đĩa Mạng bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 3 5.1. Tổng quan v ề hệ thống I/O  Ch ức n ăng: – Trao đổ i thụng tin gi ữa mỏy tớnh v ới mụi tr ườ ng bờn ngoài  Cỏc thao tỏc c ơ b ản: – Vào d ữ li ệu (Input) – Ra d ữ li ệu (Output)  Cỏc thành ph ần chớnh: – Thi ết b ị ngo ại vi –Mạch ghộp nối vào ra (Module vào/ra) bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 4
  3. Đặ c điểm hệ thống vào/ra  Tồn t ại đa d ạng cỏc TBNV khỏc nhau v ề: – Nguyờn t ắc ho ạt độ ng –Tốc độ truy xu ất – Khuụn d ạng d ữ li ệu  Tất c ả cỏc thi ết b ị ngo ại vi đề u ch ậm h ơn CPU và b ộ nh ớ chớnh  Cần cú modul vào ra để n ối ghộp TBNV v ới CPU và bộ nh ớ chớnh bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 5 Tại sao c ần Modul vào/ra? Khụng th ể n ối tr ực ti ếp cỏc thi ết b ị ngo ại với bus h ệ th ống, vỡ: – CPU khụng th ể điều khi ển đượ c t ất c ả TBNV –Tốc độ trao đổ i d ữ li ệu khỏc nhau – Khuụn d ạng d ữ li ệu khỏc nhau –Tất c ả cú t ốc độ ch ậm h ơn CPU và RAM Ch ức n ăng c ủa Modul vào/ra: –Nối ghộp v ới CPU và hệ th ống nh ớ –Nối ghộp v ới m ột ho ặc nhi ều TBNV bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 6
  4. Thi ết bị ngoại vi  Ch ức n ăng: Chuy ển đổ i d ữ li ệu gi ữa bờn trong và bờn ngoài mỏy tớnh  Đặ c điểm –Tốc độ làm vi ệc ch ậm h ơn CPU và RAM r ất nhi ều → cần cú Module vào ra để ghộp n ối cỏc thi ết b ị ngo ại vi vào h ệ th ống Bus mỏy tớnh.  Phõn lo ại – Giao ti ếp ng ườ i-mỏy: Bàn phớm, mỏy in, màn hỡnh, . – Giao ti ếp mỏy-mỏy: Thi ết b ị theo dừi và ki ểm tra – Truy ền thụng: Modem, NIC, . bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 7 Một s ố TB ngoại vi thụng dụng bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 8
  5. Cấu trỳc chung c ủa TB ngoại vi bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 9 Cỏc thành phần c ủa TB ngoại vi Bộ chuy ển đổ i d ữ li ệu ( transducer ): Chuy ển đổ i d ữ li ệu gi ữa bờn trong và bờn ngoài mỏy tớnh Bộ đệ m d ữ li ệu ( Buffer ): Đệ m d ữ li ệu khi truy ền gi ữa module vào/ra và TBNV Kh ối logic điều khi ển ( Control logic ) : Điều khi ển ho ạt độ ng c ủa TBNV đỏp ứng theo yờu c ầu t ừng module vào ra bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 10
  6. Module vào/ra Ch ức n ăng: – Điều khi ển và đị nh th ời gian – Trao đổ i thụng tin v ới CPU – Trao đổ i thụng tin v ới TBNV –Bộ đệ m d ữ li ệu – Phỏt hi ện lỗi n ếu cú bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 11 Cấu trỳc chung c ủa Modul vào/ra Nối ghép với Nối ghép với bus hệ thống TBNV Dữ liệu Thanh ghi dữ liệu Logic Các đ−ờng giao diện Trạng thái dữ liệu với TBNV Thanh ghi ĐK/trạng thái Điều khiển Các đ−ờng Dữ liệu địa chỉ Logic Logic giao diện Trạng thái Các đ−ờng vào/ra với TBNV Điều khiển điều khiển bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 12
  7. Thành ph ần c ơ b ản c ủa Modul vào/ra  Thanh ghi d ữ li ệu: đệ m d ữ li ệu trong quỏ trỡnh trao đổ i gi ữa CPU và TBNV  Cỏc c ổng vào/ra: kết n ối v ới TBNV, m ỗi c ổng cú m ột đị a ch ỉ xỏc đị nh  Thanh ghi điều khi ển/tr ạng thỏi: lữu gi ữ thụng tin điều khi ển, tr ạng thỏi cho cỏc c ổng vào/ra  Logic điều khi ển: điều khi ển Modul vào/ra bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 13 Đị a chỉ húa c ổng Vào/Ra  Vào/Ra riờng bi ệt – Khụng gian đị a ch ỉ c ổng vào/ra nằm ngoà i khụng gian đị a ch ỉ b ộ nh ớ (d ữ li ệu). – CPU trao đổ i v ới c ổng vào/ra theo cỏc l ệnh chuyờn dụng: IN, OUT –Cần cú tớn hi ệu phõn bi ệt truy nh ập c ổng vào/ra hay truy nh ập b ộ nh ớ  Vào/Ra theo b ản đồ b ộ nh ớ – Khụng gian đị a ch ỉ c ổng vào/ra nằm trong khụng gian đị a ch ỉ b ộ nh ớ – Dựng chung tớn hi ệu truy nh ập b ộ nh ớ – Dựng chung l ệnh trao đổ i d ữ li ệu v ới b ộ nh ớ bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 14
  8. VD Đị a ch ỉ húa c ổng vào ra riờng bi ệt Bộ nh ớ Lệnh: MOV T/h ĐK: IO/M = 0 Thi ết b ị vào Thi ết b ị ra 00000h Lệnh: IN Lệnh: OUT T/h ĐK: IO/M = 1 T/h ĐK: IO/M = 1 0000h 0000h 1 MB 64 KB 64 KB FFFFFh FFFFh FFFFh bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 15 VD Đ/ch ỉ húa c ổng IO b ằng b ản đồ b ộ nh ớ  Lệnh và tớn hi ệu điều khi ển chung cho c ả hai: 00000H MOV IO/M = 0 Vào/ra Bộ nhớ FFFFFH bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 16
  9. 5.2. Cỏc P/phỏp đ.khi ển Vào/Ra Vào/ra b ằng ch ươ ng trỡnh (Programmed IO) Vào/ra b ằng ng ắt (Interrupt Driven IO) Vào/ra b ằng DMA (Direct Memory Access ) bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 17 Vào/ra bằng chương trỡnh Nguyờn t ắc chung: –Sử dụng l ệnh vào/ra trong ch ươ ng trỡnh để trao đổ i d ữ li ệu v ới c ổng vào/ra – Khi BXL th ực hi ện ch ươ ng trỡnh, g ặp l ệnh vào/ra thỡ BXL điều khi ển trao đổ i d ữ li ệu v ới thi ết b ị ngo ại vi bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 18
  10. Ho ạt độ ng vào/ra b ằng ch ương trỡnh CPU yờu cầu thao tỏc vào/ra Modul vào/ra th ực hi ện thao Đọc trạng thái của tỏc TBNV Modul vào/ra thi ết l ập cỏc bit Sai tr ạng thỏi TBNV sẵn sàng ? CPU ki ểm tra cỏc bit tr ạng Đúng thỏi để n ắm đượ c tỡnh tr ạng Trao đổi DL của TBNV: với TBNV –Nếu ch ưa sẵn sàng thỡ quay lại ki ểm tra –Nếu đó sẵn sàng thỡ ti ến hành trao đổ i dữ li ệu v ới modul vào ra bangtqh@utc2.edu.vn Ch ươ ng 5 - H19ệ th ống Vào/Ra Nhận xột CPU tr ực ti ếp điều khi ển vào ra: đọ c tr ạng thỏi, ki ểm tra tr ạng thỏi, th ực hi ện trao đổ i d ữ li ệu. Tr ườ ng hợp thi ết bị ch ưa sẵn sàng ho ặc nhi ều thi ết bị cựng cần trao đổ i dữ li ệu → tốn nhi ều th ời gian CPU. Vi ệc th ực hi ện trao đổ i đơ n gi ản, theo ý mu ốn c ủa ng ườ i l ập trỡnh. bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 20
  11. Vào/Ra bằng Ngắt (interrrupt)  Nguyờn t ắc chung – CPU khụng ph ải đợ i tr ạng thỏi s ẵn sàng c ủa Module vào ra. – Khi Module vào ra sẵn sàng thỡ nú phỏt ra tớn hi ệu yờu cầu ng ắt CPU. – CPU th ực hi ện ch ươ ng trỡnh con vào ra t ươ ng ứng để trao đổ i d ữ li ệu. – CPU tr ở l ại ch ươ ng trỡnh đang b ị ng ắt. bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 21 Vào/Ra bằng Ngắt (tt)  Chuy ển điều khi ển đế n ch ươ ng trỡnh con bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 22
  12. Ngắt tuần t ự bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 23 Ngắt lồng nhau bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 24
  13. Hoạt động Mạch điều khi ển thi ết b ị phỏt ra ng ắt BXL th ực hi ện xong BXL c ất cỏc thụng tin cũn l ại lệnh hi ện t ại của tr ạng thỏi x ử lý ng BXL phỏt tớn hi ệu ch ấp Th ực hi ện ng ắt ứ nh ận ng ắt Ph n n c ầ ầ n mn Ph ề BXL c ất n ội dung Thanh ghi c ờ và Khụi ph ục thụng tin m Bộ đế m CT vào Stack tr ạng thỏi BXL n ạp vào B ộ đế m CT giỏ tr ị Khụi ph ục Thanh ghi c ờ đị a ch ỉ m ới l ấy t ừ ng ắt vào và B ộ đế m CT bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 25 Nhi ều ngắt x ảy ra đồng thời Nếu cú nhi ều yờu cầu ng ắt cựng một lỳc gửi đế n CPU thỡ CPU gi ải quy ết th ế nào? Nh ờ sự can thi ệp của Mạch điều khi ển ng ắt lập trỡnh đượ c (PIC - Programmable Interrupt Controller ) bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 26
  14. Xử lý v ới nhi ều ngắt Cỏc ng ắt b ị c ấm – BXL sẽ b ỏ qua cỏc ng ắt khỏc trong khi đang th ực hi ện m ột ng ắt – Cỏc ng ắt ph ải ch ờ và đượ c ki ểm tra sau khi ng ắt đang ph ục v ụ đượ c x ử lý xong – Cỏc ng ắt đượ c th ực hi ện tu ần t ự Đinh ngh ĩa ưu tiờn ng ắt: – Ng ắt cú m ức ưu tiờn th ấp h ơn thỡ cú th ể b ị ng ắt bởi ng ắt cú ưu tiờn cao h ơn – Khi ng ắt cú m ức ưu tiờn cao h ơn đượ c x ử lý xong thỡ BXL quay v ề ng ắt tr ướ c đú bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 27 Đặ c điểm Điều khi ển vào/ra b ằng ng ắt  Cú s ự k ết h ợp gi ữa ph ần c ứng và ph ần m ềm – Ph ần c ứng: yờu c ầu ng ắt BXL – Ph ần m ềm: trao đổ i d ữ li ệu  BXL tr ực ti ếp điều khi ển vào/ra  BXL khụng ph ải đợ i Modul vào/ra ⇒ hi ệu qu ả BXL s ử dụng t ốt h ơn bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 28
  15. Phõn loại ngắt Ng ắt c ứng ( Hard Interrupt ): yờu c ầu ng ắt do m ạch ph ần c ứng bờn ngoài g ửi đế n – Ng ắt c ứng NMI ( None Maskable Interrupt ): cú yờu c ầu ng ắt thỡ b ắt bu ộc ph ải ng ắt • Vớ dụ: Cú s ự c ố ngu ồn; l ỗi b ộ nh ớ – Ng ắt c ứng MI ( Maskable Interrupt ): cú yờu c ầu ng ắt thỡ cú hai kh ả n ăng x ẩy ra: • Đượ c ng ắt n ếu ng ắt đú ở tr ạng thỏi cho phộp • Khụng đượ c ng ắt n ếu ng ắt đú ở tr ạng thỏi b ị cấm – Ng ắt cứng MI dựng để trao đổ i d ữ li ệu v ới TBNV bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 29 Phõn loại ngắt Ng ắt mềm (Soft Interrupt ): Yờu cầu ng ắt do lệnh gọi ng ắt nằm trong ch ươ ng trỡnh sinh ra Ng ắt ngo ại l ệ ( Exception Interrupt ): là cỏc ng ắt sinh ra do l ỗi xu ất hi ện trong quỏ trỡnh th ực hi ện ch ươ ng trỡnh – Vớ d ụ: •Gặp lệnh chia cho 0 •Lệnh sai cỳ phỏp • tràn s ố • Nh ảy đế n cỏc điều ki ện khụng t ồn t ại bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 30
  16. Vào/Ra bằng Ngắt (tt)  Nhỡn t ừ CPU – Ho ạt độ ng đọ c d ữ li ệu – Phỏt tớn hi ệu điều khi ển đọ c – Làm vi ệc khỏc – Cu ối m ỗi chu k ỳ l ệnh, ki ểm tra tớn hi ệu ng ắt –Nếu b ị ng ắt •Cất tr ạng thỏi (cỏc thanh ghi) vào stack • Chuy ển t ới đị a ch ỉ ch ươ ng trỡnh con ph ục v ụ ng ắt để đọ c d ữ li ệu • Khụi ph ụ tr ạng thỏi (cỏc thanh ghi) bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 31 Vào/Ra bằng Ngắt (tt)  Nhỡn t ừ Modul Vào/ra – Ho ạt độ ng đọ c d ữ li ệu – Đọ c tớn hi ệu điều khi ển t ừ CPU – Nh ận d ữ li ệu t ừ TBNV (trong lỳc này CPU làm vi ệc khỏc) – Khi đó cú d ữ li ệu  phỏt tớn hi ệu ng ắt t ới CPU – CPU nh ận d ữ li ệu vào ( để x ử lý) – Truy ền d ữ li ệu t ới CPU bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 32
  17. Vào/Ra bằng Ngắt (tt)  Vấn đề n ảy sinh – CPU làm sao phõn bi ệt đượ c Module vào/ra nào phỏt tớn hi ệu ng ắt – Tr ườ ng h ợp cựng 1 lỳc cú nhi ều Module phỏt tớn hi ệu ng ắt thỡ sao? Cần cú ph ươ ng phỏp ghộp n ối ng ắt  Cỏc ph ươ ng phỏp: –Sử d ụng nhi ều đườ ng ng ắt – Software Poll ( Ki ểm tra vũng b ằng ph ần m ềm) – Daisy Chain or Hardware Poll ( Ki ểm tra vũng b ằng ph ần c ứng ) –Sử d ụng b ộ điều khi ển ng ắt (PIC) bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 33 PP Sử dụng nhi ều đường ngắt  Mỗi Modul vào/ra cú đườ ng yờu c ầu ng ắt khỏc nhau  CPU ph ải cú nhi ều đườ ng tớn hi ệu yờu c ầu ng ắt   Số l ượ ng Modul b ị h ạn ch ế (h ạn ch ế s ố l ượ ng TBNV)   Ph ải quy đị nh m ức độ ưu tiờn cỏc đườ ng ng ắt bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 34
  18. Phương phỏp Software Poll  CPU th ực hi ện ph ần m ềm h ỏi l ần l ượ t t ừng modul vào/ra  Tốc độ ch ậm  Th ứ t ự h ỏi vũng chớnh là th ứ t ự ưu tiờn bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 35 PP Daisy Chain or Hardware Poll  CPU phỏt tớn hi ệu ch ấp nh ận ng ắt (INTA) đế n Modul vào/ra đầ u tiờn, nếu module này khụng cú nhu cầu ng ắt  nú gửi đế n modul kế ti ếp (c ứ nh ư vậy)  Nếu modul cú nhu cầu ng ắt, nú sẽ đỏp ứng bằng cỏch đặ t vect ơ ng ắt lờn bus dữ li ệu  CPU sử dụng vect ơ để xỏc đị nh CTC điều khi ển ng ắt bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 36
  19. PP Sử dụng bộ điều khi ển ngắt  PIC – Programable Interrupt Controller: Cú nhi ều đườ ng ng ắt quy đị nh m ức ưu tiờn  PIC ch ọn 1 ng ắt khụng b ị c ấm cú ưu tiờn cao nh ất g ửi tới CPU bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 37 Vớ dụ: PIC 8259A bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 38
  20. Vào/ra bằng DMA  Nh ượ c di ểm c ủa vào/ra bằng ch ươ ng trỡnh và vào/ra bằng ng ắt –Tốc độ truy ền b ị h ạn ch ế – Chi ếm th ời gian c ủa CPU (do CPU tham gia vào quỏ trỡnh trao đổ i d ữ li ệu)  Để kh ắc ph ục, dựng DMA – Thờm modul ph ần c ứng trờn bus: DMAC ( DMA Controller ) – DMAC điều khi ển vào/ra khụng cần s ự tham gia c ủa CPU bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 39 Sơ đồ c ấu trỳc c ủa DMAC bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 40
  21. Cỏc thành phần c ủa DMAC  Thanh ghi d ữ li ệu: – Ch ứa dữ li ệu c ần trao đổ i  Thanh ghi đị a ch ỉ: – Ch ứa đị a ch ỉ ng ăn nh ớ d ữ li ệu  Bộ đế m d ữ li ệu: – Ch ứa số t ừ d ữ li ệu c ần trao đổ i  Logic điều khi ển: – điều khi ển ho ạt độ ng c ủa DMAC bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 41 Hoạt động c ủa DMA  CPU bỏo cho DMAC – Input hay Output ? – Đị a ch ỉ c ổng vào/ra (thi ết b ị) – Đị a ch ỉ đầ u tiờn c ủa m ảng nh ớ d ữ li ệu  nạp vào thanh ghi đị a ch ỉ –Số t ừ nh ớ c ần truy ền  CPU làm vi ệc khỏc  DMAC điều khi ển trao đổ i d ữ li ệu (gi ữa b ộ nh ớ chớnh v ới Modul vào/ra)  Với m ỗi t ừ nh ớ (d ữ li ệu) đượ c truy ền thỡ –Nội dung thanh ghi đị a ch ỉ t ăng –Bộ đế m d ữ li ệu gi ảm  Khi b ộ đế m d ữ li ệu = 0 thỡ DMAC g ửi tớn hi ệu ng ắt tới CPU để bỏo k ết thỳc DMA bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 42
  22. Sơ đồ Bus địa chỉ 5 1 HRQ DREQ 2 CPU DMAC Bộ nhớ TBNV HLDA DACK 3 Bus dữ liệu 4 Bus điều khiển bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 43 Quỏ trỡnh hoạt động  B1: TBNV gửi tớn hi ệu DREQ (Dma REQ uest) tới DMAC  B2: DMAC gửi tớn hi ệu HRQ (Hold ReQuest) để xin dựng cỏc đườ ng bus  B3: CPU sẽ th ực hi ện xong chu kỳ bus hi ện tại và tr ả lời đồ ng ý bằng vi ệc gửi tớn hi ệu HLDA (HoLD Acknowledge) tới DMAC  B4: DMAC gửi tớn hi ệu DACK (DMA ACK nowledge) tới TBNV bỏo chu ẩn bị truy ền dữ li ệu  B5: DMAC th ực hi ện điều khi ển quỏ trỡnh truy ền dữ li ệu gi ữa bộ nh ớ và TBNV  B6: DMAC th ực hi ện xong cụng vi ệc, nú bỏ kớch ho ạt tớn hi ệu HRQ .Hệ th ống tr ở lại bỡnh th ườ ng. bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 44
  23. Cỏc ki ểu thực hi ện DMA  DMA truy ền theo kh ối ( block-transfer DMA ): DMAC sử d ụng bus để truy ền c ả kh ối d ữ li ệu  DMA ăn tr ộm chu kỳ (cycle stealing DMA ): DMAC ộp bu ộc CPU treo tạm th ời từng chu kỳ để th ực hi ện truy ền một byte dữ li ệu  DMA trong su ốt (transparent DMA ): DMAC nh ận bi ết nh ững chu kỳ nào CPU khụng dựng bus thỡ lấy bus để tranh th ủ truy ền một byte dữ li ệu bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 45 Cấu hỡnh DMA: ki ểu 1 Bus đơ n, b ộ điều khi ển DMA riờng rẽ Mỗi l ần truy ền, DMAC s ử d ụng bus 2 l ần: –Từ Modul vào/ra đế n DMAC –Từ DMAC đế n b ộ nh ớ CPU b ị treo bus 2 l ần bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 46
  24. Cấu hỡnh DMA: ki ểu 2 Bus đơ n, b ộ điều khi ển DMA tớch h ợp DMAC điều khi ển một ho ặc vài Modul vào/ra Mỗi l ần truy ền, ch ỉ s ử d ụng bus 1 l ần –Từ DMAC t ới b ộ nh ớ CPU ch ỉ bị treo bus 1 l ần bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 47 Cấu hỡnh DMA: ki ểu 3 Bus vào/ra tỏch r ời, h ỗ tr ợ t ất c ả cỏc thi ết b ị cho phộp DMA Mỗi lần truy ền ch ỉ dựng bus 1 l ần: –Từ DMA t ới b ộ nh ớ CPU c ũng ch ỉ b ị treo bus 1 l ần bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 48
  25. Đặ c điểm vào/ra bằng DMA CPU khụng tham gia quỏ trỡnh trao đổ i dữ li ệu DMAC điều khi ển quỏ trỡnh trao đổ i dữ li ệu gi ữ bộ nh ớ chớnh với Modul Vào/ra  hoàn toàn bằng ph ần cứng  tốc độ nhanh Phự hợp với cỏc yờu cầu trao đổ i mảng kớch th ướ c lớn bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 49 5.3. Nối ghộp thi ết bị ngoại vi Cỏc ki ểu n ối ghộp vào/ra: –Nối ghộp song song –Nối ghộp n ối ti ếp Cỏc c ấu hỡnh n ối ghộp: – Điểm t ới điểm – Điểm t ới đa điểm bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 50
  26. Nối ghộp song song Đến Đến Modul bus thiết vào/ra hệ bị song thống ngoại song vi  Truy ền nhi ều bit song song  Tốc độ nhanh  Cần nhi ều đườ ng truy ền d ữ li ệu bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 51 Nối ghộp nối ti ếp Đến Đến Modul thiết bị bus hệ vào/ra nối ngoại vi thống tiếp Truy ền l ần l ượ t t ừng bit Cần cú b ộ chuy ển đổ i song song thành n ối ti ếp và ng ượ c l ại Tốc d ộ ch ậm Cần ớt đườ ng truy ền d ữ li ệu bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 52
  27. Cỏc cấu hỡnh ghộp nối Điểm t ới điểm (point-to-point): – Thụng qua m ột c ổng vào/ra, n ối ghộp v ới m ột TBNV – Vớ d ụ: c ổng chu ột, bàn phớm, Điểm tới đa điểm (point-to-multipoint): – Thụng qua m ột c ổng vào/ra, n ối ghộp đượ c v ới nhi ều TBNV – Vớ d ụ: • SCSI: 7 ho ặc 15 thi ết b ị • USB: 127 thi ết b ị • IEEE 1394 FireWire: 63 thi ết b ị bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 53 5.4. Cỏc c ổng vào ra thụng dụng  Cổng P/S2  Cổng ghộp n ối màn hỡnh  Cổng LPT (Line Printer)  Cổng COM  Cổng USB  Cổng HDMI  Chia nhúm – th ảo lu ận bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 54
  28. Thắc mắc – Thảo luận? bangtqh@utc2.edu.vn Ch ươ ng 5 - Hệ th ống Vào/Ra 55