YOMEDIA
ADSENSE
ÔN TẬP THIẾT BỊ NGOẠI VI
131
lượt xem 33
download
lượt xem 33
download
Download
Vui lòng tải xuống để xem tài liệu đầy đủ
Interface là gì, bao gồm những công việc gì ? * Interface là giao diện ghép nối giữa hai thiết bị, giữa hai chương trình ứng dụng hay giữa người sử dụng và các chương trình ứng dụng. Nguyên nhân : là do sự khác nhau giữa hệ thống trung tâm và thế giới rộng lớn bên ngoài về : tốc độ làm việc, mức tín hiệu, không đồng bộ… * Interface bao gồm : + Thiết bị : - Ports: ghép nối với các thiết bị máy tính hóa : mouse, printer,.. - Controller : ghép nối với các...
AMBIENT/
Chủ đề:
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: ÔN TẬP THIẾT BỊ NGOẠI VI
- ------ ÔN TẬP THIẾT BỊ NGOẠI VI
- ÔN TẬP TBNV Chương 0. Interface 0.1 Interface là gì, bao gồm những công việc gì ? * Interface là giao diện ghép nối giữa hai thiết bị, giữa hai chương trình ứng dụng hay giữa người sử dụng và các chương trình ứng dụng. Nguyên nhân : là do sự khác nhau giữa hệ thống trung tâm và thế giới rộng lớn bên ngoài về : tốc độ làm việc, mức tín hiệu, không đồng bộ… * Interface bao gồm : + Thiết bị : - Ports: ghép nối với các thiết bị máy tính hóa : mouse, printer,.. - Controller : ghép nối với các thiết bị chuyên dùng : FDC, HDC, CRTC,… - Converter : chuyển đồi tín hiệu số thành tương tự và ngược lại : sound card,.. + Chương trình điều khiển - Liên kết các chương trình hệ thống và/ hoặc chương trình ứng dụng với phần cứng vào ra (SPIs và APIs) - Các hàm của thiết bị, BIOS, OS hoặc theo ứng dụng: SLLs, DLLs, DRVs, … 0.2 Mô hình ghép nối hiện đại ? Các TBNV hiện đại theo mô hình sau : các thiết bị ghép qua USB, IEEE 1394,.. và các bus vào ra hiện đại khác http://www.ebook.edu.vn 1
- Chương 1. Kiến trúc hệ VXL-MT. 1.1. Nêu các chu kỳ bus của CPU và DMAC, các chu kỳ bus nào thường dành để, ghép nối thiết bị ngoại vi, cho ví dụ cụ thể ? a. Chu kì Bus * Có 8 chu kì bus của CPU - M1, opcode fetching : Add -> Program mem, -MEMR. - Data mem Reading : Add -> Data mem, -MEMR - Data mem Writing : Add -> Data mem, -MEMW - IO Port Reading : Add -> IO space, -IOR - IO Port Writing : Add -> IO space, -IOW - Interrupt Acknowledge, -INTA : CPU phát tín hiệu INTA, để thiết lập ưu tiên. - Halt, waiting for Ext. Intr. hoặc reset - Bus Idle :bus nghỉ * Có 2 chu kì bus của DMA -IOR-MemW và MemR-IOW . b. Các chu kì bus thường dành để ghép nối TBNV Có 4 chu kì - IO Port Reading : đọc cổng vào ra - IO Port Writing : ghi cổng vào ra. - Interrupt Acknowledge,INTA : CPU phát tín hiệu INTA, để thiết lập ưu tiên. - Halt, waiting for Ext, Intr hoặc reset c. Ví dụ chu kì DMAC trao đổi cả mảng dữ liệu MemR-IOW. - CPU phải ghi từ điều khiển và từ chế độ làm việc vào DMAC để quy định cách thức làm việc. - Khi TBNV có yêu cầu trao đổi dữ liệu, nó gửi DRQ=1 đến DMAC. - DMAC đưa tín hiệu HRQ đến chân HOLD của CPU để yêu cầu treo CPU. Tín hiệu HOLD phải ở mức cao cho đến khi hết quá trình trao đổi dữ liệu. - Nhận được yêu cầu treo, CPU kết thúc chu kì bus hiện tại, sau đó treo các bus của mình, và đưa tín hiệu HLDA báo cho DMAC biết được toàn quyền sử dụng bus. - DMAC đưa xung DACK báo cho TBNV biết có thể bắt đầu trao đổi dữ liệu. - DMAC đưa địa chỉ của byte đầu ra bus địa chỉ và đưa tín hiệu MemR=0 để đọc 1 byte từ bộ nhớ ra bus dữ liệu. Tiếp đó DMAC đưa tín hiệu IOW=0 để ghi dữ liệu ra TBNV. DMAC sau đó giảm bộ đếm số byte, cập nhật lại địa chỉ byte cần đọc tiếp và lặp cho đến khi hết số đếm TC. http://www.ebook.edu.vn 2
- 1.2. Khái niệm. chế độ hoạt động wait state, vẽ các biểu đồ thời gian để minh hoạ. ? a.K/n wait state - Th−êng dïng ®Ó ghÐp nèi : bé nhí, TBNV tèc ®é chËm. - Khi Bus Master ph¸t ®Þa chØ vµ tÝn hiÖu ®äc/ghi (thªm c¸c tÝn hiÖu kh¸c ) ®Ó thùc hiÖn 1 chu k× bus, MMU/IO Port (Controller) chñ ®éng ph¸t tÝn hiÖu Ready = 0 víi môc ®Ých yªu cÇu Bus Master gi÷ nguyªn tr¹ng th¸i bus thªm mét/vµi nhÞp Clock ®Ó chóng cã thêi gian hoµn tÊt viÖc ®äc/ ghi. Sù chÌn thªm c¸c kho¶ng wait nµy gióp cho VXL cã thÓ ®ång bé vÒ thêi gian so víi c¸c thiÕt bÞ ngo¹i vi chËm. b. BiÓu ®å Chu kú T1: ALE=1 ®Ó chèt lÊy ®Þa chØ bé nhí hay TBNV ®−a ra c¸c ®−êng ®Þa chØ. Chu kú T2: §−a ra c¸c tÝn hiÖu ®iÒu khتn ®äc/ghi vµ c¸c d÷ liÖu lªn c¸c ®−êng d÷ liÖu. Cuèi T2, sÏ kiÓm tra tÝn hiÖu ready cña MMU hay IO port. Chu kú T3: thêi gian dµnh cho TBNV hay mem ®äc ghi d÷ liÖu. nÕu sau T2, ph¸t hiÖn tÝn hiÖu Ready=0 th× sÏ chÌn vµo sau T3 mét kho¶ng TW ®Ó kÐo dµi thêi gian chê ®äc ghi. Sau ®ã l¹i tiÐp tôc theo dâi tÝn hiÖu Ready. Chu kú T4: C¸c tÝn hiÖu bus ®−îc gi¶i ho¹t, chuÈn bÞ cho mét chu kú bus míi. 1.3 Xây dựng sơ đồ mạch và đồ thị thời gian để tạo ra 01 ws cho ISA bus. ( chương 4). http://www.ebook.edu.vn 3
- Chương 2. Interface Protocols 2.1. Giao thức ghép nối là gì? Khi thực hiện ghép nối cần các loại thông thông tin gì (tóm tắt) ? Phân nhóm các lớp (theo 2 nhóm chính). a. Giao thức: Là các quy định về - Tín hiệu (signals). - Định dạng dữ liệu (data format). - Tốc độ (Rate). - Phát hiện và sửa lỗi (error detective and correct). - Tập lệnh và tương tác ( command and respondse set) - Kịch bản ( scenario). b. Phân loại Theo mô hình ISO 7 lớp có thể phân thành hai nhóm chính + Các giao thức hướng truyền tin (Transport Oriented Protocols ) : - Physical ( wire, cable, connector, port). - Data link (CRC, CS, token). - Network (Comm, 2 network). - Transport( Err- protected raw infor). + Các giao thức hướng ứng dụng ( Application Oriented Protocols). - Seasion ( Opening, End). - Presentation (Common language) - Application ( Read/Write, Start/Stop, File Transfer). c. Khi thực hiện ghép nối cần chú ý cá tín hiệu + Thiết bị thông minh ? + Hơn 1 thiết bị ? -> bus/ mạng hay không ? -> dung bít( trường ) địa chỉ -Nếu dùng bus > standard bus hay không ? tại sao ? +Data : Xa/ gần , nhanh/ chậm -> serial/ parallent Xa : Daisy chain cho tín hiệu hoặc nguồn cấp… + Các tín hiệu điều khiển và trạng thái - Control signals - Status signals - Handshaking signal - Analog/ Digital - Daisy chain. http://www.ebook.edu.vn 4
- 2.2. Khái niệm về hand shaking signal, cho ví dụ.? a. Kh¸i niÖm Lµ thñ tôc x¶y ra vµo lóc më ®Çu hay kÕt thóc 1 lÇn ghÐp nèi, dïng tÝn hiÖu phÇn cøng hay c¸c kÝ tù ®Ó ®µm ph¸n. * C¸c ký tù b¾t tay(Handshaking Signals): RTS : Request To Send CTS : Clear To Send DTR : Data Terminal ready DSR : Data Set Ready RI : Ring Indication CD : Carrier Detect b.VÝ dô: PC-LPT handshaking: PC Comm-Modem handshaking http://www.ebook.edu.vn 5
- 2.3. So sánh single end và differential, cho ví dụ ứng dụng.? a. TÝn hiÖu single end (®¬n cùc) Lµ tÝn hiÖu lµ ®iÖn thÕ so víi mét ®iÖn thÕ chuÈn nµo ®ã, th−êng lµ Gnd. * VÝ dô : - C¸c tÝn hiÖu trªn bus : data, address, control, RS232… - Cã n tÝn hiÖu -> cã n+1 d©y dÉn. * Nh¹y c¶m víi nhiÔu b.TÝn hiÖu diffrential (vi sai) Lµ hiÖu hai tÝn hiÖu tõ cæng m¸y tÝnh vµ TBNV. Tõ tÝn hiÖu ®¬n cùc qua bé biÕn ®æi thµnh 2 ®iÖn thÕ A,B. Qua hÖ trung t©m l¹i ®−îc biÕn ®æi l¹i thµnh ®¬n cùc. C¨n cø vµo VA-VB ta x¸c ®Þnh ®iÖn ¸p. VA-VB >= 100mV bÝt 1 (møc logic) n tÝn hiÖu cÇn 2n d©y dÉn - Khi thu mäi thµnh phÇn gièng nhau trªn hai sîi d©y ®−îc lo¹i trõ -> chÞu ®−¬c nhiÔu tèt - Dïng víi kho¶ng c¸ch lín, tèc ®é cao, nguîc so víi ®¬n cùc. - Cã thÓ dïng d©y kh«ng bäc kim. * VÝ dô - RS232 (®¬n cùc ) : 9600bps ë kho¶ng c¸ch 100 feet (Mouse) - RS485 (vi sai) : 1 Mbps ë kho¶ng c¸ch 5000 feet ( USB) 2.4. Khi ghép nối trực tiếp với bus, các cổng In hoặc Out cần phải có cấu trúc (chức năng) như thế nào? vì sao? 2.5. Yêu cầu của các mạch ghép nối có khả năng thực hiện kiểu hot pluggible. - Yªu cÇu tÝn hiÖu chÆt chÏ, tÝn hiÖu kh«ng ®−îc chËp m¹ch - Yªu cÇu vÒ nguån cung cÊp: + Khi c¾m thiÕt bÞ vµo th× nguån ph¶i cã tr−íc + Khi rót thiÕt bÞ ra th× nguån ph¶i rót sau - Khi c¾m rót, tÝn hiÖu ph¶i ë tr¹ng th¸i trë kh¸ng cao HiZ. - Khi c¾m vµo ®−êng bus råi th× CPU cã thÓ më lµ duy nhÊt. 2.6. Khi nào thường dùng ghép nối cách ly? nêu các kiểu cách ly và đặc điểm mỗi loại. a. GhÐp nèi c¸ch ly GhÐp nèi c¸ch ly nh»m ng¨n ngõa sù rß rØ ®iÖn thÕ cao so víi hÖ trung t©m. Sö dông ghÐp nèi c¸ch ly th−êng trong c¸c tr−êng hîp cã sù kh¸c nhau vÒ - møc dßng ¸p, hiÖu ®iÖn thÕ(xoay chiÒu, mét chiÒu) - c«ng suÊt gi÷a tÝn hiÖu vµo vµ tÝn hiÖu ra - gi÷a 2 m«i tr−êng - ®èi t−îng c¸ch m¸y tÝnh kho¶ng 50m mµ hay bÞ sÐt. Nhê c¸ch ghÐp nèi nµy mµ ®é an toµn cña thiÕt bÞ ®−îc ®¶m b¶o. http://www.ebook.edu.vn 6
- VÝ dô: s¬ ®å c¸ch ly quang häc ®èi víi In/ out. b. Ph©n lo¹i Tuú theo dßng tÝn hiÖu vµo, ®é chªnh lÖch ®iÖn thÕ gi÷a Vcc víi ®iÖn thÕ ®Çu vµo In (nh¸nh cã ®ièt) sÏ lµm cho ®ièt s¸ng hoÆc tèi. NÕu ®ièt s¸ng, ta sÏ thu ®−îc dßng ®iÖn ë nh¸nh kia. C¸c kiÓu c¸ch ly - Relay: t−¬ng tù c«ng t¾c ®iÖn, dïng khi ko cÇn ®iÖn thÕ cao - Opto Coupler => ®Ó ghÐp c¸c thiÕt bÞ tin häc c«ng nghiÖp, ®iÖn thÕ cao, c«ng suÊt lín. - IrLED... 2.7 Nèi tÝn hiÖu kiÓu daisy chain : cÊu tróc vµ ®Æc ®iÓm ? a. CÊu tróc Lµ ph−¬ng ph¸p trao ®æi th«ng tin trong hÖ thèng cã nhiÒu th«ng tin. C¸c thiÕt bÞ ®−îc nèi däc víi nhau theo chuçi c¸nh hoa b. §Æc ®iÓm - Nèi c¸c thiÕt bÞ cã kho¶ng c¸ch tõ vµi ®Õn vµi chôc m, ®Çu ra cña port (module) thø n nèi vãi ®Çu vµo cña n+1. - Kh«ng nèi vßng ( ®Çu ra cña port cuèi cïng kh«ng ph¶i ®Çu vµo cæng ®Çu tiªn) c. Ứng dụng - Dïng cho tÝn hiÖu ( song song vµ nèi tiÕp), nguån cung cÊp, handshake… - Dïng ®Ó ghÐp nèi nhiÒu module vµ cã kho¶ng c¸ch kh¸ lín, tÝn hiÖu ®−îc lÆp l¹i th«ng qua c¸c module trung gian. 2.8. Gói tin là gì? Cấu trúc bao gồm thành phần gì? Vì sao phải 'đóng gói' số liệu? nêu 01 ví dụ đóng gói số liệu chuẩn mà bạn biết.? Gói tin Là một khối (block) định dạng của thông tin dùng trong truyền tải thông tin, thường dùng là trong mạng máy tính. Các kiểu truyền dữ liệu không theo định dạng gói tín là: truyền từng bit, byte, kí tự Ph¶i ®ãng gãi v×: Khi truyÒn trªn mét ®−êng truyÒn vËt lÝ, ®ãng gãi d÷ liÖu sÏ lµm tèc ®é truyÒn nhanh hn, kiÓm so¸t lçi truyÒn tèt h¬n so víi khèi d÷ liÖu kh«ng cã ®iÓm kÕt thóc CÊu tróc: http://www.ebook.edu.vn 7
- Gåm 3 phÇn chÝnh: + Header: Th−êng lµ ID cña gãi tin, ko mang tin. Cã thÓ cã tªn b¶n tin, tªn gãi, stt, ký tù b¾t tay, ký tù ®ång bé, sè ktù/byte trong gãi…. + Content: Néi dung tin – mang th«ng tin. + Tailer: M· b¾t tay kÕt thóc ,cã thÓ cã m· kiÓm tra lçi, kh«ng mang tin. VÝ dô chuÈn: VÝ dô 1. VÝ dô2: Frame truyÒn kh«ng ®ång bé Start(1 bÝt) Data(5/6/7/8 bits) Parity Stop(1[1.5/2]bits) 2.9 Công thức Shannon xác định tốc độ cho đường truyền ? Shannon chỉ ra rằng dung lượng của một kênh truyền có nhiễu được cho bởi công thức sau: C=BW.log2(1+S/N) C-Dung lượng của kênh truyền(Kbps) BW-băng thông S-biên độ của tín hiệu ở thiết bị phát N-biên độ của nhiễu nhận ở đích S/N bằng tỷ số công suất tín hiệu/ nhiễu - Do đó, kênh điện thoại với băng thông BW=3 kHz và S/N=1000 có dung lượng khoảng 30000 bps. - Băng thông của một cặp dây xoắn là 4 kHz, gồm phổ tần số cho thoại. Giả sử 1 tỉ số signal-to-noise(SNR) của P0/Pn là 1000,(30dB), dung lượng của kênh truyền theo Shannon sẽ là: C = 4000 × Log 2 (1 + 1000) = 40 kbps 2.10. Nêu một số phương pháp kiểm tra lỗi. ? Khi trao đổi thông tin thường hay gây ra lỗi, đặc biệt truyền xa/ chuyển đổi tín hiệu. Nhiều phương pháp ( hardware/software) hỗ trợ để kiểm tra: - BCC ([Block] Check Sum Code), phÇn mÒm. - CRC, ECC… vi m¹ch/ phÇn mÒm- subroutine. - Parity 1 hoÆc 2 chiÒu - RAID (Redundancy) thõa d−: trao ®æi néi dung sè liÖu h¬n mét lÇn vµ so s¸nh. - Barcode: m· ho¸, gi¶i m·, kiÓm tra lçi - http://www.ebook.edu.vn 8
- 2.11 Hãy giải thích ý nghĩa các trường của BarCode EAN13 sau: AAA BBBBB CCCC D, cho ví dụ bằng số.? Gi¶i thÝch: Barcode EAN13: AAA BBBBB CCCC D Cã 4 ®é dµi v¹ch, 6 v¹ch/digital(b&w) A: kÝ hiÖu n−íc (VN: 893; JP: 45 – 49; Ge 400-440, Ru 460-469 ) B: KÝ hiÖu c«ng ty, tæ chøc s¶n xuÊt C: Chñng lo¹i mÆt hµng D: M· Checksum(bªn ph¶i nhÊt) tõ ph¶i sang tr¸i. 10 - [( D2*3 + D3*1 + D4*3 + D5*1...+ D13*1)mod10] VÝ dô: 893 12345 1234 7 2.12. Câu lệnh (từ master) và mã trả lời ( từ slave) thường có cấu trúc như thế nào?. CÊu tróc chung: o m· b¾t ®Çu ký tù riªng nh− @ / # / $... o m· lÖnh, 1..3 bytes/char o tham sè lÖnh, 1... n bytes, o m· kiÓm tra lçi, check sum, CRC (dÔ xö lý) o m· kÕt thóc, ký tù riªng. Cã thªm c¸c m· (ký tù) ®èi tho¹i dïng kÝ tù ®iÒu khiÓn cña ASCII nh−: ENQ, ACK, NACK, Bell, OK, ERR, BUSY … VÝ dô LÖnh AT cña modem. AT : Tiền tố lệnh, yêu cầu modem “chú ý”. tiếp theo là mã lệnh D : Dial. dùng lệnh D để quay số T : Tone dialing. Ví dụ ATDT 1260 => lệnh gửi cho modem yêu cầu modem quay số máy chủ 1260. Trả lời: OK(Error) connect @19260(result). Nếu đúng thì thực hiện lệnh và báo về. Không thì báo lỗi và không nhận được gì. 2.13 Kh¸i niÖm Time out ? Kh¶ n¨ng kiªn nhÉn 2.14. Phân biệt 2 phương pháp định vị các cổng I/O: mem mapped IOs và IO mapped IOs ?. Memory Mapped IOs IO Mapped IOs: (Z80, x86...): - IOs chung víi Mem trong - Kh«ng chiÕm kh«ng gian nhí, MemSpace => chiÕm vïng nhí, tèn - CPU chØ thùc hiÖn 2 lÖnh: IN vµ vïng nhí OUT - CPU xö lý c¸c cæng IO b»ng c¸c - x86 CPU’s IO map: IO mapped lÖnh nh− ®/v « nhí(mem)(lÖnh, chÕ IOs, 16 Addr bit IO => 64Kilo IO ®é ®Þa chØ.....) locations. PCs IO map: http://www.ebook.edu.vn 9
- - IO Mapped IOs - ChØ dïng 10 addr bit thÊp nhÊt => 1 kilo IO locations Soi g−¬ng víi 63 kilo cßn l¹i, mçi IO port chiÕm nhiÒu ®Þa chØ (nh− PIC, PIT, PPI..) => thiÕu IO space. SÏ dïng thªm kiÓu Mem Mapped IOs. 2.14. Trong CPU x86: nêu các lệnh ASM để trao đổi thông tin với cổng IO.? LÖnh IN vµ OUT: chØ dïng c¸c thanh ghi Accumulator : AL (8bit), AX (16 bit) vµ EAX (32 bit). ChÕ ®é ®Þa chØ: o Trùc tiÕp cho IO space :0..0FFh in al,60h ; Read KB port VÝ dô: out 61h,al ; beep, set/reset key flag out 23Eh, ax ; lÖnh sai do 23Eh >255. o Gi¸n tiÕp: cho IO space: 0..0FFFFh, qua thanh ghi dx mov dx,378h ; LPT port Add VÝ dô: mov al, ‘A’ ;41h ;’A’-> Printer. out dx,al mov dx,3F8h; Comm 1 port in al,dx ; http://www.ebook.edu.vn 10
- Ch−¬ng 3 Ph−¬ng ph¸p trao ®æi th«ng tin IO 3.1 : Kh¸i niÖm ng¾t ( interupt) ? Ng¾t: - Lµ sù dõng thùc hiÖn CTC ®Ó thùc hiÖn ch−¬ng tr×nh con, th−êng lµ do TBNV yªu cÇu th«ng qua port. - Khi CPU ®ang thùc hiÖn ch−¬ng tr×nh chÝnh, ®Õn dßng lÖnh thø n, ngÉu nhiªn, thiÕt bÞ ngo¹i vi thø i xin phôc vô b»ng c¸ch ph¸t ra tÝn hiÖu IRQ(i) (Interrupt Request) ®Õn CPU. CPU sÏ ngõng xö lý ch−¬ng tr×nh chÝnh vµ cÊt ng÷ c¶nh vµo Stack Memory, råi t×m ®Þa chØ cña ch−¬ng tr×nh con phôc vô ng¾t t−¬ng øng (Interrupt Service Routine - ISR) ®Ó thùc hiÖn. - Sau khi thùc hiÖn xong ISR, gÆp lÖnh iret (reti...), CPU kh«i phôc l¹i ng÷ c¶nh cña CTC vµ tiÕp tôc thùc hiÖn. §Æc ®iÓm : - Lµ ph−¬ng ph¸p vµo/ra kÕt hîp tÝn hiÖu vµ phÇn mÒm, ®Ó thùc hiÖn ®a nhiÖm. - Ch−¬ng tr×nh chÝnh bÞ dõng xö lý ®Ó gäi ch−¬ng tr×nh con - Lµ chÕ ®é ho¹t ®éng riªng cho c¸c Vi xö lý/ m¸y tÝnh kiÓu ON-LINE, - Nguån ng¾t : chñ yÕu tõ TBNV th«ng qua IO ports, CPU. - X¶y ra ngÉu nhiªn, - Khi cã tranh chÊp th× xÐt −u tiªn ng¾t. ThiÕt bÞ cã −u tiªn cao sÏ ngõng ISR cña tb cã −u tiªn thÊp h¬n. 3.2 Ph©n lo¹i ng¾t ? Gåm: Hardware, software, internal, exception, NMI a. Software Interrupt:( ng¾t mÒm ) - Lµ viÖc gäi 1 ctc (Subroutine) phôc vô ng¾t ®−îc x©y dùng riªng, c¸c ctc nµy cßn cã thÓ ®−îc gäi bëi thiÕt bÞ ngo¹i vi. - C¸c lÖnh gäi nh− INT n; (Intel x86) hay SWI n; (Motorola). - Tuy nhiªn, viÖc thùc hiÖn lÖnh ng¾t mÒm gièng nh− gäi thñ tôc, vµ ®«i khi ®−îc hiÓu lµ TRAP. - Ng¾t mÒm kh«ng ph¶i lµ ng¾t, ®©y lµ gäi mét thñ tôc. Ngoµi b»ng Int n cßn cã thÓ gäi b»ng tÝn hiÖu ISR. b. Hardware Interrupt: ( Ng¾t cøng ) http://www.ebook.edu.vn 11
- Lµ ng¾t do cæng ph¸t tÝn hiÖu NMI/IRQ ®Õn CPU Chia thµnh 2 lo¹i : Maskable vµ Non Maskable + Maskable Interrupt: lµ c¸c ng¾t th«ng th−êng, cã thÓ cÊm (disable) bëi lÖnh CLI hay cho phÐp (enable) STI C¸c ng¾t sÏ bÞ cÊm (t¹i CPU) : - sau khi CPU reset - tr−íc ®ã ®· cã IRQ kh¸c. - sau khi thùc hiÖn lÖnh CLI. + Non Maskable Interrupt ( NMI ) :lµ ng¾t cã møc −u tiªn cao nhÊt, th−êng cho c¸c viÖc: mÊt ®iÖn, sai sè liÖu (DRAM parity)... PC hiÖn nay, th−êng kh«ng dïng NMI. c. Internal (Ng¾t trong ): Lµ ng¾t do c¸c tÝn hiÖu xuÊt hiÖn bëi ho¹t ®éng cña chÝnh procesor .Dïng ®Ó bÉy/ ®Ó xö lý c¸c sù kiÖn trong khi thùc hiÖn . Nh÷ng sù kiÖn g©y ra ng¾t trong : - Divide by zero (chia cho 0) : t−¬ng øng thùc hiÖn lÖnh, Int 0, - Trap- Single Step: thùc hiÖn tõng lÖnh, debugger, Int 1, dïng cïng víi Trap Flag. - Break Point: t¹o ®iÓm dõng, debugger, Int 3, - Overflow: (trµn sè häc), Int 4. - ... d.Exception( ng¾t ngoµi ) Lµ ng¾t do c¸c tÝn hiÖu bªn ngoµi b¸o cho procesor .Sù kiÖn g©y ng¾t lµ sù kiÖn x¶y ra ngoµi tiÕn tr×nh ®ang thùc hiÖn . -Exception lµ vÊn ®Ò hay ®iÒu kiÖn ®Ó CPU dõng c«ng viÖc ®ang thùc hiÖn t×m ®Þa chØ vµ thùc hiÖn 1 ctc ®−îc thiÕt kÕ ®Ó ®ãn nhËn sù kiÖn nµy. -Exception gièng Interrupt, thùc hiÖn lÖnh riªng. -Trong PC, Exp kh¸c Intr qua 2 ®iÓm: - Liªn quan tíi viÖc thùc hiÖn ch−¬ng tr×nh, - Cã −u tiªn cao ®Ó dõng ch/tr - VÝ dô: Math Processor Exception 3.3 So s¸nh interrupt vµ exception ? 3.4 Tæ chøc ng¾t cña hä vi ®iÒu khiÓn 8051? +Cã 6 nguyªn nh©n g©y ra ng¾t víi hä Intel 8x51, t−íng øng víi 6 vector ng¾t : -2 ng¾t do bªn ngoµi (Ext. Interrupts): Int0 vµ Int1, -3 ng¾t do bé ®Þnh thêi (Timer Interrupts) : C¸c bé ®inh thêi 0, 1, 2 -1 ng¾t do cæng nèi tiÕp ( Serial port Interrupt - ph¸t/thu char). + øng víi c¸c ng¾t nµy, cã c¸c ®Þa chØ ®Çu cho ch−¬ng tr×nh con phôc vô ng¾t ( Interrupt Service Routine – ISR) t−¬ng øng t¹i trang zero t¹i bé nhí ch−¬ng tr×nh(Prog. Memory): 0003, 000Bh, 0013h, 001Bh, 0023h vµ 002Bh. -T¹i c¸c ®Þa chØ nµy th−êng ®Æt lÖnh LJMP nnnn vµ ®−îc ®Æt lÖnh RETI nÕu kh«ng cã ISR. http://www.ebook.edu.vn 12
- 3.5 Ph©n biÖt Interrupt Vector Table vµ Interrupt Descriptor Table ? B¶ng vector ng¾t vµ b¶ng m« t¶ ng¾t Gièng nhau : §Òu ®−îc sö dông trong hä x86 Kh¸c nhau : a.B¶ng vector ng¾t (IVT) - Sö dông trong chÕ ®é Real mode: - Vị trÝ : CPU x86 dïng 1 kilo byte ®Çu tiªn (RAM) ®Ó chøa b¶ng vector ng¾t (gåm 256 thµnh phÇn 4 bytes), Mçi vector (thµnh phÇn ) chøa ®Þa chØ ®Çu cña ISR( ch−¬ngtr×nh con phôc vô ng¾t ) t−¬ng øng. Khi khëi t¹o, BIOS n¹p vµo IVT ®Þa chØ ®Çu cña c¸c ISR øng víi IO. - §æi vector ng¾t: ®æi néi dung c¸c vector nµy - C¸c ng¾t cøng, NMI vµ Internal ®Òu t¬ng øng víi 1 lÖnh ng¾t mÒm cã cïng vector type, tøc cã vector trong b¶ng IVT. b.B¶ng m« t¶ ng¾t (Interrupt Descriptor Table - IDT) - Sö dông trong chÕ ®é Protected Mode: - Interrupt Descriptor Table (IDT) có thể định vị bất kỳ vùng nhớ nào - Vị trí và kích thước trong bảng IDTR: 32bit addr và 16 bit limit - Gate, not vector. - 256 thành phần mô tả trap/ interrupt/ task - địa chỉ và thuộc tính của ctc phục vụ ngắt - Int/ trap cho phép chuyển đến ISR trong tác vụ hiện tại . http://www.ebook.edu.vn 13
- Base 32: trá gèc miÒn nhí Limit 16: kÝch th−íc miÒn nhí. 3.6. Vẽ sơ đồ và mô tả hoạt động của máy tính PC (real mode) khi có ngoại vi xin ngắt (tín hiệu IRQi) - ứng với các thiết bị ngoại vi cụ thể cùng các tham số.? Ho¹t ®éng: 1. Khi trao ®æi sè liÖu: Ngo¹i vi víi IO port 2. IO port ph¸t tÝn hiÖu IRQ(i) tíi PIC 8259A, 3. NÕu ®−îc, PIC ph¸t tÝn hiÖu INT => CPU. CPU thùc hiÖn nèt lÖnh http://www.ebook.edu.vn 14
- hiÖn t¹i 4. CÊt ng÷ c¶nh cña ch−¬ng tr×nh chÝnh vµo stack mem: cê, ®i¹ chØ CS:IP; 5. Thùc hiÖn #1 INTA bus cycle => Prioritizing, thiÕt lËp −u tiªn. 6. Thùc hiÖn #2 INTA bus cycle => ®äc Vector type cña IO port, VectorType = i+8 nÕu VT=0..7 int 8..int 0Fh = i+68 nÕu VT=8..15 int 70h…int 77h. 7. CPU lÊy VectorType x 4 => IVT, ®äc ®c ®Çu ISR t−¬ng øng, n¹p vµo IP&CS, ISR b¾t ®Çu ®−îc thùc hiÖn. 8. ISR: (nÕu dïng ASM) - Ng«n ng÷ lËp tr×nh thêi gian thùc MASM, C, ... , - Cho phÐp ng¾t bëi møc −u tiªn cao h¬n - CÊt nh÷ng thanh ghi-ISR dïng vµo STACK Mem, - T/hiÖn néi dung ISR, - Kh«i phôc Reg tõ STACK Mem, LIFO, - Depriorotizing:( OCW2): thiÕt lËp l¹i −u tiªn. mov al,20h VÝ dô out 20h, al ; Non Specific EOI iret ; Return fron Intr. 3.8. Vẽ sơ đồ và mô tả hoạt động của máy tính PC khi có ngoại vi xin thực hiện DMA.? B¾t ®Çu t/h DMA, ngo¹i vi chuyÓn data => IO Port (PIO) IO Port ph¸t tÝn hiÖu DRQi tíi DMAC. NÕu chÊp nhËn DMAC ph¸t HRQ tíi CPU (CPU logic circuitry) CPU dõng ho¹t ®éng ë chu k× tr¹ng th¸i 3 cho bus cã trë kh¸ng cao CPU Tr¶ lêi t/h HLDA => DMAC råi ®i vµo tr¹ng th¸i ngñ Thùc hiÖn DMA bus cycle: http://www.ebook.edu.vn 15
- - Ph¸t ( tÝn hiÖu cho phÐp trao ®æi data ) /DACKi = 0 vµ /IOR = 0) => IO Port truyÒn sè liÖu lªn bus - Addr (DMAC & PageReg) => data mem, /MEMW => chuyÓn 1 byte/word Sau khi thùc hiªn chu k× chuyÓn 1 byte , t¨ng CurrentAddrReg, gi¶m CurrentCounter. NÕu CC=0 th× ph¸t T/C ( Termianl counter), nÕu 0 => , thùc hiÖn chu k× DMA tiÕp theo . 3.7 So sánh thời gian chuyển 256 byte số liệu dùng 2 phương pháp: chương trình phần mềm ASM (với đoạn ch/tr gọn như có thể) và chế độ DMA.? Trao ®æi b»ng ch−¬ng tr×nh ASM Trao ®æi b»ng DMA - ViÖc truyÒn tin do bé VXL ®iÒu khiÓn theo tõng lÖnh IN/ OUT gi÷a - Trao ®æi trùc tiÕp khèi nhí do bé thanh ghi AX cña bé VXL víi DMAC ®iÒu khiÓn , bé VXL bÞ cæng vµo ra nèi víi TBNV treo , kh«ng ho¹t ®éng ,DMAC hoµn toµn thay thÕ VXL ®Ó ®iÒu khiÓn trao ®æi tin . - Thêi gian trao ®æi sè liÖu l©u v× bé VXL ph¶I gi¶i m· , thùc hiÖn - Ph−¬ng ph¸p trao ®æi nhanh , cho lÖnh vµ ph¶i trao ®æi th«ng tin qua mét l−¬ng tin lín trùc tiÕp gi÷a thanh ghi AX trung gian khèi nhí vµ cæng vµo ra cho TBNV - Trao ®æi qua ba ph−¬ng ph¸p : b»ng c¸ch ph¸t ®/c cho khèi nhí , + §ång bé ph¸t lÖnh ®äc ghi sè liÖu trao ®æi + Kh«ng ®ång bé sè liÖu ®äc ghi qua thanh ghi ®Öm . + Ng¾t ch−¬ng tr×nh DMA Ch−¬ng tr×nh chuyÓn 256 byte sè liÖu tõ bé nhí ra TBNV mov cx,256 ChuyÓn 1 byte trong 1 m¶ng d÷ mov SI, head_of_buffer liÖu ra TBNV chØ hÕt 4 chu k× ®ång lap: Mov AL,SI ; 10 ck× clock hå -> cÇn 0.25*10-6 s Out Port, AL ; 10 ck× clock inc SI ; 2 ck× clock loop lap ; 17 ck× clock TÝnh thêi gian : Gi¶ sö 8088 tèc ®é Clock 16MHz, -> 1 chu k× clock : 62.5ns -> cÇn 2.5 *10-6 s http://www.ebook.edu.vn 16
- 3.9 Tổ chức các tính hiệu IRQ trong máy tính PC ? C¸ch tæ chøc + IRQ0 : System Timer ®−îc OS vµ c¸c øng dông c¨n cø ®Ó thùc hiÖn c¸c t¸c vô chu k× 55ms + IRQ1 : KB Port Interrupt : ng¾t khi cã user bÊm phÝm. + IRQ2 : Nèi sang Slave PIC më réng c¸c TBNV + IRQ3 : Cæng truyÒn tin RS232 sè 2, b¸o ng¾t khi thu/ph¸t xong 1 byte, lçi khi thu, cã tÝn hiÖu b¸o vÒ tõ MODEM + IRQ4 : Comm1 + IRQ5 : LPT2 : cæng m¸y in sè 2, b¸o ng¾t mçi khi cã s−ên xuèng cña xung ACK + IRQ6 : FDC interrupt : b¸o thùuc hiÖn xong 1 lÖnh do CS yªu cÇu nh− khëi ®éng mot¬, ®äc/ghi 1 sector… + IRQ7 : LPT1 + IRQ8 : Real Time Clock , ®−îc lËp tr×nh ®óng hÕt tkØ 21. + IRQ9: Thay cho IRQ2 tr−íc ®©y, th−êng dïng lµm ng¾t mµn h×nh + IRQ10: dù tr÷ + IRQ11: dù tr÷ + IRQ12 : ng¾t chuét + IRQ13 : b¸o thùc hiÖn xong phÐp tÝnh to¸n + IRQ14: IDE ghép qua ISA bus, báo ngắt mỗi khi HD controller thực hiện xong một lệnh do CS yêu cầu + IRQ15: Reserved. Đối với Industrial PC http://www.ebook.edu.vn 17
- 3.10. Tæ chøc c¸c kªnh IO dïng DMA ? DMAC #1 cung cấp 4 kênh 8 bit, có thể lưu tối đa 64KB trong một lần hoạt động, địa chỉ 0h-0fh/ • Kênh 0: Làm tươi bộ nhớ DRAM, giờ không dùng • Kênh 1: SDLC, LPT’s EPP/ECP/IEEE1284 mode, .. để dành. • Kênh 2: FDC, chế độ từng byte (truyền đơn) • Kênh 3: LPT’s EPP/ECP/IEEE1284 mode, Ir port (IEEE 802.11b), spare, hiện bỏ trống. DMAC #2: cung cấp các kênh 16 bit, có thể chuyển được tối đa 128KB (64KW) trong một lần hoạt động. địa chỉ 0C0h-0Cfh. • Kênh 4: được sử dụng để liên kết 2 chip DMAC để có thể làm việc như một đơn vị thống nhất. • Kênh 5: HDC ISA bus, spare. Đây là kênh dành cho ổ cứng. • Kênh 6: spare • Kênh 7: Spare 3.11 Watch Dog Timer lµ g× ? vÏ s¬ ®å cÊu tróc vµ m« t¶ ho¹t ®éng ? a. Khái niêm WatchDog timer là một bộ đếm, có một đường tín hiệu ra gắn với chân reset của CPU. Chức năng của nó là thực hiện tự động restart CPU trong các trường hợp mà hệ thống gặp trục trặc bởi vì không phải lúc nào người vận hành hệ thống cũng có thể giám sát được quá trình hoạt động của nó. b. Sơ đồ : http://www.ebook.edu.vn 18
- c. Hoạt động - Dùng 01 counter down, và mạch Oscillator độc lập với CPU. Trong quá trình hoạt động, theo 1 chu kỳ, do IRQ15 gọi ISR15 nạp giá trị preload cho counter để sao cho nội dung bộ đếm không về đến zero. Nếu CPU bị treo (halted), bộ đếm sẽ đếm lùi đần đến zero, phát ra xung BORROW OUT, xung này sẽ reset CPU – cold start. - Tùy thuộc vào hằng số thời gian của đối tượng, tùy từng hệ thống, bộ đếm WDT có thể được nạp giá trị đếm, nạp số chia tần để các khoảng thời gian từ 200us, 2ms, 20ms, 200ms, 2s đến 20s http://www.ebook.edu.vn 19
ADSENSE
Thêm tài liệu vào bộ sưu tập có sẵn:
Báo xấu
LAVA
AANETWORK
TRỢ GIÚP
HỖ TRỢ KHÁCH HÀNG
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn