intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Ghép nối và điều khiển thiết bị ngoại vi - Chương 4

Chia sẻ: Nguyễn Nhi | Ngày: | Loại File: PDF | Số trang:4

154
lượt xem
36
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tài liệu tham khảo giáo trình môn học Ghép nối và điều khiển thiết bị ngoại vi nhằm cung cấp kiến thức cơ bản trong việc tìm hiểu thiết kế mạch ghép nối ngoại vi với máy vi tính - Chương 4 Ghép nối điều khiển ngắt

Chủ đề:
Lưu

Nội dung Text: Ghép nối và điều khiển thiết bị ngoại vi - Chương 4

  1. Tài li u môn h c: Ghép n i và ñi u khi n thi t b ngo i vi CHƯƠNG 4: GHÉP N I ðI U KHI N NG T 4.1 Khái ni m và phân lo i ng t 4.1.1 Khái ni m M i khi m t thi t b ph n c ng hay m t chương trình c n ñ n s giúp ñ c a CPU, nó g i ñi m t tín hi u ho c l nh g i là ng t (Interrupt Request – IRQ) ñ n b vi x lý ch ñ nh m t công vi c c th nào ñó mà nó c n CPU th c hi n. Khi b vi x lý nh n ñư c tín hi u ng t, nó thư ng t m ngưng t t c các ho t ñ ng khác và kích ho t m t chương trình con ñang có trong b nh g i là chương trình x lý ng t (Interrupt Service Routine _ ISR) tương ng v i t ng s li u ng t c th . Sau khi chương trình x lý ng t làm xong nhi m v , các ho t ñ ng c a máy tính s ti p t c l i t nơi ñã b t m d ng lúc x y ra ng t. 4.1.2 Phân lo i ng t Có ba lo i ng t chính, ñ u tiên là các ng t ñư c t o ra b i m ch ñi n c a máy tính nh m ñáp l i m t s ki n nào ñó như nh n phím trên bàn phím ... Các ng t này ñư c b ñi u khi n ng t 8259A qu n lý. 8259A s n ñ nh m c ñ ưu tiên cho t ng ng t r i g i ñ n CPU. Th hai là các ng t do CPU t o ra khi g p ph i m t k t qu b t thư ng trong khi th c hi n chương trình như chia cho 0 ch ng h n … Cu i cùng là các ng t do chính chương trình t o ra nh m g i các chương trình con xa ñang n m trong ROM ho c RAM, các ng t này g i là ng t m m chúng thư ng là b ph n c a các chương trình con ph c v c a ROM-BIOS ho c c a DOS. Ngoài ba lo i ng t trên còn có lo i ng t ñ c bi t là ng t không b che NMI ñòi h i CPU ph c v ngay khi có yêu c u. Lo i ng t này thư ng ñư c dùng ñ báo hi u s c như s t ñi p áp hay l i b nh . Như v y NMI là m c ng t có ñ ưu tiên cao nh t . Các ng t trong PC có th chia thành 4 nhóm như sau : - Các ng t vi x lý : Thư ng g i là các ng t logic ñư c thi t k s n trong b VXL. B n trong s các ng t này (0,1,3,4 ) do chính b VXL t o ra, còn ng t 2 (NMI ) s ñư c kích ho t khi có tín hi u t o ra b i m t trong các thi t b ngoài. 1. Các ng t c ng Ðư c thi t k s n trong ph n c ng c a c a PC, tám ng t trong s các ng t này (2,8,9,t Bh ñ n Fh) ñư c g n ch t vào trong b VXL ho c vào b ng m ch chính c a h th ng. T t c các ng t c ng ñ u do 8259A ñi u khi n . 2. Các ng t m m Gi ng viên: Nguy n Văn Minh Trí 55
  2. Tài li u môn h c: Ghép n i và ñi u khi n thi t b ngo i vi Nh ng ng t này là m t ph n c a các chương trình ROM -BIOS, các s hi u dành cho các ng t c a ROM- BIOS là t 10h ñ n 1C h và 48h . Ngoài ra còn có các ng t DOS và ng t BASIC ph c v h ñi u hành DOS và chương trình BASIC . 3. Các ng t ñ a ch B ng 4.1 : B ng ch c năng các ng t trong máy vi tính INT (Hex) IRQ Common Uses 00 Exception Handlers Chia m t s cho 0 01 Exception Handlers Th c hi n t ng bư c 02 Non-Maskable IRQ Non-Maskable IRQ (Các l i ch n l ) 03 Exception Handlers ði m d ng chương trình do ngư i s d ng ñ t 04 Exception Handlers Vư t quá n i dung thanh ghi hay b nh 05 - 07 Exception Handlers - 08 Hardware IRQ0 B th i gian h th ng 09 Hardware IRQ1 Bàn phím 0A Hardware IRQ2 Redirected 0B Hardware IRQ3 C ng n i ti p COM2/COM4 0C Hardware IRQ4 C ng n i ti p COM1/COM3 0D Hardware IRQ5 Reserved/Sound Card 0E Hardware IRQ6 ði u khi n ñĩa m m 0F Hardware IRQ7 C ng song song 10 - 6F Software Interrupts Ng t ROM-BIOS hay DOS 70 Hardware IRQ8 ð ng h th i gian th c 71 Hardware IRQ9 Redirected IRQ2 72 Hardware IRQ10 Reserved 73 Hardware IRQ11 Reserved 74 Hardware IRQ12 PS/2 Mouse 75 Hardware IRQ13 Math's Co-Processor 76 Hardware IRQ14 Hard Disk Drive 77 Hardware IRQ15 Reserved 78 - FF Software Interrupts - Ba trong s các ng t này tr ñ n ba b ng r t quan tr ng, ñó là b ng kh i t o màn hình, b ng cơ s ñĩa và b ng các ký t ñ th . Các b ng này ch a các tham s ñư c ROM Gi ng viên: Nguy n Văn Minh Trí 56
  3. Tài li u môn h c: Ghép n i và ñi u khi n thi t b ngo i vi BIOS dùng khi kh i ñ ng h th ng và t o các ký t ñ th . Các s hi u dành cho các ng t này là t 1D hex ñ n 1F hex. 4.2 X lý ng t c a nhi u thi t b ngo i vi Thông thư ng m t MVT c n x lý ng t c a nhi u TBNV, do ñó c n gi i quy t các v n ñ sau: - Cho phép ho c c m ng t cho m t yêu c u ng t c a m t TBNV. - Ghi nh n và s p x p nhi u yêu c u ng t theo th t ưu tiên. - Xác ñ nh ngu n ng t do TBNV nào gây ra. - T o vector ng t, t c ñ a ch ô nh c a l nh ñ u tiên trong chương trình con ph c v ng t. 4.2.1 Cho phép ho c c m ng t 1. Cho phép ho c c m ng t b ng l nh - L nh c m ng t DI (Disable interrupt) và cho phép ng t EI (Enable Interrupt) c a 8085. - Ghi vào thanh ghi c n i dung bit IF (Interrupt Flag) các giá tr : IF =1 : cho phép ng t IF=0 : c m ng t 2. Cho phép ho c c m ng t b ng m ch ph n c ng V i l i vào NMI và yêu c u ng t c a TBNV, ta có th dùng các m ch l t ñ ñi u khi n cho phép ho c c m ng t. 4.2.2 S p x p ưu tiên ng t Theo m t trong ba phương pháp sau: 1. Phương pháp h i vòng (polling): Dùng chương trình, ñ c theo th t ưu tiên các bit tr ng thái c a các TBNV và ki m tra chúng. N u bit nào xác l p lên 1, t c TBNV tương ng có yêu c u ng t, và VXL chuy n sang chương trình con ng t ph c v TBNV ñó. Sau ñó l i ñ c và ki m tra bit tr ng thái TBNV có m c ưu tiên th p hơn. Phương pháp này ñơn gi n v thi t b nhưng m t th i gian h i vòng. 2. Phương pháp ng t c ng ð tránh m t th i gian h i vòng, ngư i ta n i các bit tr ng thái c a TBNV v i m ch OR, l i ra c ng OR n i vào chân INTR c a VXL. Khi b t kỳ TBNV nào có yêu c u ng t, VXL s nh n bi t qua INTR và ti n hành h i vòng. Phương pháp này gi m ñư c th i gian ki m tra tr ng thái khi chưa có yêu c u ng t nào, nhưng cũng không thay ñ i ñư c th t ưu tiên. 3. Phương pháp x lý ưu tiên b ng m ch c ng Có hai lo i ưu tiên theo v trí và ưu tiên tuỳ theo m ch so sánh. Ưu tiên theo v trí ñ t g n VXL Sơ ñ m ch ví d trên hình 4.1, v i ho t ñ ng như sau: - Tín hi u tr l i ng t INTA (Interrupt Acknowledge) t VXL ñi n i ti p qua các BGN, qua m ch x lý ng t và tr v l i VXL theo m t m t xích kín (daisy chain). BGN nào ñ t g n VXL có m c ưu tiên cao Gi ng viên: Nguy n Văn Minh Trí 57
  4. Tài li u môn h c: Ghép n i và ñi u khi n thi t b ngo i vi - N u m t BGN ñã ghi nh n ng t, tín hi u INTA b ch n và không truy n t i BGN sau. Do ñó, VXL không nh n ñư c tín hi u INTA, nghĩa là có m t yêu c u ng t ñã x y ra. DI0÷DIn 1 INTR VXL INTA BGN1 BGN2 BGN3 DI0÷DIn 0 INTA INTA (b) (a) Hình 4.1: Sơ ñ ưu tiên ng t theo v trí và vector ng t Phương pháp này tuy ñơn gi n nhưng th t ưu tiên không thay ñ i ñư c và n u có m t BGN nào b h ng, m ch s luôn báo có yêu c u ng t. Ưu tiên ng t dùng m ch so sánh Dùng các vi m ch Intel 8214, 8259 có th thay ñ i ưu tiên ng t b ng chương trình. 4.2.3 Xác ñ nh ngu n gây ng t Có nh ng phương pháp xác ñ nh TBNV nào gây ng t ñ chuy n sang chương trình con ph c v ng t tưng ng cho TBNV ñó: - Phương pháp h i vòng: VXL ñ c và ki m tra l n lư t tr ng thái các TBNV. N u k t qu là 1, tr ng thái TBNV là s n sàng và ngu n ng t là TBNV ñó. - Phương pháp ñ c vector ng t t o b i tín hi u ng t INTA trong ưu tiên ng t theo v trí. - Phương pháp ñ c vào thanh ghi ưu tiên PR trong sơ ñ dùng m ch so sánh. 4.2.4 T o vector ng t Vector ng t ch a ñ a ch ñ u c a chương trình con ph c v ng t. Các vector ng t c a MVT – PC ñư c trình bày trên b ng 4.1. Ta có th t o vector ng t b ng c ng AND colector h như hình 4.1 (b). Phương pháp này thay ñ i ñư c m c ưu tiên và cách tìm ngu n ng t, nhưng m ch ph c t p và ñ t ti n. Gi ng viên: Nguy n Văn Minh Trí 58
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2