




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、輸入輸出控制串行接口、輸入輸出控制串行接口、并行接口并行接口- -學(xué)習(xí)目標(biāo)學(xué)習(xí)目標(biāo) (1) 掌握掌握 PC 機(jī)的機(jī)的 I/O 尋址方式并了解尋址方式并了解 PC 機(jī)機(jī) I/O 端端口地址分配口地址分配 。 (2) 掌握掌握PC機(jī)的三種輸入機(jī)的三種輸入 / 輸出控制方式輸出控制方式:程序控制程序控制方式方式, 中斷控制方式及中斷控制方式及 DMA 控制方式的工作原理。控制方式的工作原理。 (3) 掌握與掌握與8259A 可編程中斷控制器并了解可編程中斷控制器并了解 PC及及 PC/AT 兼容的兼容的 ISA 總線上的常規(guī)中斷、新的總線上的常規(guī)中斷、新的 PCI 中斷、串行中斷技術(shù)以及高級可編程中
2、斷控制中斷、串行中斷技術(shù)以及高級可編程中斷控制子系子系統(tǒng)統(tǒng) APIC 概況。概況。 (4) 掌握與掌握與 8237 可編程可編程 DMA 控制器相關(guān)的具體內(nèi)控制器相關(guān)的具體內(nèi)容并了解容并了解 PC 中的中的 DMA 通道。通道。 3.53.5輸入輸入/ /輸出輸出及控制及控制 3.5.1 3.5.1 輸入輸入/ /輸出輸出及控制及控制 計(jì)算機(jī)通過計(jì)算機(jī)通過I/O設(shè)備與外部交換信息,設(shè)備與外部交換信息, I/O 操作的任務(wù)操作的任務(wù)是將輸入設(shè)備輸入的信息送入內(nèi)存的指定區(qū)域或者將是將輸入設(shè)備輸入的信息送入內(nèi)存的指定區(qū)域或者將內(nèi)存指定區(qū)域的內(nèi)容送出到輸出設(shè)備。內(nèi)存指定區(qū)域的內(nèi)容送出到輸出設(shè)備。 I/
3、O 操作特點(diǎn)操作特點(diǎn) 多數(shù)多數(shù) I/O 設(shè)備在操作過程中包含機(jī)械動作設(shè)備在操作過程中包含機(jī)械動作, 速度比速度比 CPU 慢得多慢得多, 因此為提高系統(tǒng)效率因此為提高系統(tǒng)效率, I/O 操作與操作與 CPU 的數(shù)據(jù)處理操作往往并行進(jìn)行。的數(shù)據(jù)處理操作往往并行進(jìn)行。 多個(gè)多個(gè) I/O 設(shè)備本身也要能同時(shí)工作設(shè)備本身也要能同時(shí)工作, 例如鍵例如鍵盤、顯示屏打印輸出同時(shí)工作。盤、顯示屏打印輸出同時(shí)工作。 除鍵盤、顯示器和鼠標(biāo)外除鍵盤、顯示器和鼠標(biāo)外, 不同不同 PC 所配置所配置的的 I/O 設(shè)備的數(shù)量、品種和性能差別很大設(shè)備的數(shù)量、品種和性能差別很大, 且且經(jīng)常會增減或升級。經(jīng)常會增減或升級。 不
4、同種類的多種不同種類的多種 I/O 設(shè)備可以以不同的方設(shè)備可以以不同的方式與主機(jī)連接。式與主機(jī)連接。 為實(shí)現(xiàn)為實(shí)現(xiàn) I/O 操作操作, 不同不同 I/O 設(shè)備都有自己專用設(shè)備都有自己專用的的 I/O 控制器控制器, 接收接收 CPU 啟動啟動 I/O 操作的命操作的命令令, 獨(dú)立地控制獨(dú)立地控制 I/O 設(shè)備工作設(shè)備工作, 表明表明 I/O 操作操作是否完成。是否完成。 I/O 控制器是一組電路控制器是一組電路 , 不同的設(shè)備其控制器不同的設(shè)備其控制器的結(jié)構(gòu)和功能也不相同的結(jié)構(gòu)和功能也不相同 。鍵盤、鼠標(biāo)、打印。鍵盤、鼠標(biāo)、打印 機(jī)等的機(jī)等的 I/O 控制器比較簡單控制器比較簡單 , 集成在主
5、板芯集成在主板芯片組中片組中 。 主機(jī)上連主機(jī)上連 接接 I/O 設(shè)備的各種插頭設(shè)備的各種插頭 / 插座及相應(yīng)的通插座及相應(yīng)的通信規(guī)范及電器特性等稱為信規(guī)范及電器特性等稱為 I/O 設(shè)備接口或設(shè)備接口或( I/O 設(shè)設(shè) 備備) 3.5.2 3.5.2 輸入輸入/ /輸出輸出及控制方式及控制方式 1. 程序控制方式程序控制方式 是指在程序的控制下進(jìn)行數(shù)據(jù)傳送是指在程序的控制下進(jìn)行數(shù)據(jù)傳送,分為無條分為無條件傳送方式和條件傳送方式兩種。件傳送方式和條件傳送方式兩種。 在傳送數(shù)據(jù)之前不查詢外設(shè)的狀態(tài)而直接執(zhí)在傳送數(shù)據(jù)之前不查詢外設(shè)的狀態(tài)而直接執(zhí)行輸入指令或輸出指令的方式就是無條件傳行輸入指令或輸出指
6、令的方式就是無條件傳送。無條件傳送是輸入送。無條件傳送是輸入/輸出控制方式最簡單輸出控制方式最簡單的一種的一種 , 該傳送方式的條件是該傳送方式的條件是, 傳送不是太頻傳送不是太頻繁繁, 并需保證每次傳送時(shí)并需保證每次傳送時(shí), 外設(shè)處于就緒狀態(tài)。外設(shè)處于就緒狀態(tài)。 條件傳送也稱為查詢式傳條件傳送也稱為查詢式傳送送, CPU 通過執(zhí)行程序不通過執(zhí)行程序不斷讀取外設(shè)的狀態(tài)。輸入斷讀取外設(shè)的狀態(tài)。輸入設(shè)備處于準(zhǔn)備好狀態(tài)或輸設(shè)備處于準(zhǔn)備好狀態(tài)或輸出設(shè)備處于空閑狀態(tài)出設(shè)備處于空閑狀態(tài), 則則 CPU 執(zhí)行輸入指令或輸執(zhí)行輸入指令或輸出指令與外設(shè)交換信息。出指令與外設(shè)交換信息。要求接口電路中除了有數(shù)要求接
7、口電路中除了有數(shù)據(jù)端口外據(jù)端口外, 還應(yīng)有狀態(tài)端還應(yīng)有狀態(tài)端口。口。 2.中斷控制方式中斷控制方式 當(dāng)輸入設(shè)備已將數(shù)據(jù)準(zhǔn)備好或輸出設(shè)備可以當(dāng)輸入設(shè)備已將數(shù)據(jù)準(zhǔn)備好或輸出設(shè)備可以接收數(shù)據(jù)時(shí)接收數(shù)據(jù)時(shí) , 便可向便可向CPU發(fā)中斷請求。發(fā)中斷請求。 CPU 響應(yīng)中斷請求后響應(yīng)中斷請求后, 暫時(shí)停止執(zhí)行當(dāng)前程序而去暫時(shí)停止執(zhí)行當(dāng)前程序而去執(zhí)行一個(gè)為外設(shè)輸入執(zhí)行一個(gè)為外設(shè)輸入/輸出數(shù)據(jù)的服務(wù)程序。輸出數(shù)據(jù)的服務(wù)程序。此服務(wù)程序即為中斷處理子程序或中斷服務(wù)此服務(wù)程序即為中斷處理子程序或中斷服務(wù)子程序。中斷服務(wù)程序執(zhí)行完子程序。中斷服務(wù)程序執(zhí)行完, CPU 又轉(zhuǎn)回又轉(zhuǎn)回到被中斷處而繼續(xù)執(zhí)行原來的程序。到被
8、中斷處而繼續(xù)執(zhí)行原來的程序。 在中斷控制方式下在中斷控制方式下, CPU 和外設(shè)在大部分時(shí)和外設(shè)在大部分時(shí)間里是并行工作的。間里是并行工作的。 CPU不必在兩個(gè)輸入不必在兩個(gè)輸入/輸出過程之間對接口的狀態(tài)進(jìn)行測試和等待輸出過程之間對接口的狀態(tài)進(jìn)行測試和等待, 而是完成與輸入而是完成與輸入/輸出無關(guān)的正常的工作信號。輸出無關(guān)的正常的工作信號。當(dāng)外設(shè)準(zhǔn)備就緒時(shí)當(dāng)外設(shè)準(zhǔn)備就緒時(shí), 外設(shè)會主動向外設(shè)會主動向CPU發(fā)中發(fā)中斷請求而進(jìn)入一個(gè)傳送過程。此過處理完成斷請求而進(jìn)入一個(gè)傳送過程。此過處理完成后后, CPU又可以繼續(xù)執(zhí)行被中斷的任務(wù)又可以繼續(xù)執(zhí)行被中斷的任務(wù), 而不而不是轉(zhuǎn)入等待狀態(tài)。因此是轉(zhuǎn)入等待
9、狀態(tài)。因此, 采用中斷方式可以大采用中斷方式可以大大提高大提高 CPU 的效率并具有較高的實(shí)時(shí)性。的效率并具有較高的實(shí)時(shí)性。 3. DMA 控制方式控制方式 與程序控制方式相比與程序控制方式相比 , 采用中斷控制方式進(jìn)采用中斷控制方式進(jìn)行輸入行輸入 / 輸出能提高輸出能提高 CPU 的利用率。但其數(shù)的利用率。但其數(shù)據(jù)傳輸仍是通過執(zhí)行程序來完成的據(jù)傳輸仍是通過執(zhí)行程序來完成的, 并且每次并且每次傳輸都需要保護(hù)斷點(diǎn)處的現(xiàn)場信息傳輸都需要保護(hù)斷點(diǎn)處的現(xiàn)場信息,這又需要這又需要 CPU 一定的執(zhí)行時(shí)間。采用中斷控制方式傳一定的執(zhí)行時(shí)間。采用中斷控制方式傳輸數(shù)據(jù)的速度不可能很快輸數(shù)據(jù)的速度不可能很快,
10、不能滿足高速不能滿足高速 I/O 設(shè)備以及磁盤設(shè)備成組交換數(shù)據(jù)的需求。設(shè)備以及磁盤設(shè)備成組交換數(shù)據(jù)的需求。 DMA 方式采用專門的硬件控制器方式采用專門的硬件控制器 ( DMAC) 來執(zhí)行數(shù)據(jù)傳送。來執(zhí)行數(shù)據(jù)傳送。 DMAC 可從可從 CPU 那里接那里接管系統(tǒng)總線的控制權(quán)管系統(tǒng)總線的控制權(quán), 并且由并且由 DMAC 本身發(fā)本身發(fā)出的存儲器地址信號以及訪問存儲器和出的存儲器地址信號以及訪問存儲器和I/O設(shè)設(shè)備的讀寫脈沖等控制信號備的讀寫脈沖等控制信號, 使得數(shù)據(jù)通過總線使得數(shù)據(jù)通過總線直接在存儲器和直接在存儲器和I/O設(shè)備之間設(shè)備之間(或或I/O設(shè)備與存設(shè)備與存儲器之間儲器之間, 存儲器與存儲
11、器之間存儲器與存儲器之間) 進(jìn)行傳送。進(jìn)行傳送。在在DMA接管總線執(zhí)行數(shù)據(jù)傳送過程中接管總線執(zhí)行數(shù)據(jù)傳送過程中, CPU暫停工作暫停工作, 不參與數(shù)據(jù)傳送。不參與數(shù)據(jù)傳送。 使用使用 DMA 控制方式進(jìn)控制方式進(jìn)行輸入行輸入/輸出操作時(shí)輸出操作時(shí), CPU必須先對指定外必須先對指定外設(shè)的設(shè)的 DMA 通道設(shè)定工通道設(shè)定工作方式作方式, 給出給出 I/O 操作操作命令命令, 指出要傳送的數(shù)指出要傳送的數(shù)據(jù)在存據(jù)在存 儲器中的起始儲器中的起始地址及需要傳送的字地址及需要傳送的字節(jié)數(shù)目等節(jié)數(shù)目等, 然后才能啟然后才能啟動動DMAC工作。工作。非屏蔽中斷請求非屏蔽中斷請求中斷邏輯中斷邏輯INT n指令
12、指令I(lǐng)NT0指令指令除法除法錯誤錯誤單步單步TF=1 IR0 8259A IR1 可編程可編程 IR2 中斷中斷 IR3 控制器控制器 IR4 (PIC) IR5 IR6 IR7INTRNMICPUn410系統(tǒng)定時(shí)器系統(tǒng)定時(shí)器鍵盤鍵盤彩色彩色/圖形接口圖形接口保留保留(通信通信)串行通信接口串行通信接口保保 留留(ALT打印機(jī)打印機(jī))軟盤軟盤保留保留(打印機(jī)打印機(jī))08090A0B0C0D0E0F 3.5.3 8259A 可編程中斷控制器可編程中斷控制器 8259A邏輯結(jié)構(gòu)邏輯結(jié)構(gòu) 1. 8259A 中斷控制器結(jié)構(gòu)中斷控制器結(jié)構(gòu)8259A 是為控制優(yōu)先級中斷而設(shè)計(jì)的可編程芯是為控制優(yōu)先級中斷而
13、設(shè)計(jì)的可編程芯片片 , 它具有將中斷源按優(yōu)先級排隊(duì)、辨認(rèn)中斷源、它具有將中斷源按優(yōu)先級排隊(duì)、辨認(rèn)中斷源、向向 CPU提供中斷向量等功能提供中斷向量等功能 , 可協(xié)助可協(xié)助 CPU 方便地方便地管理八級中斷管理八級中斷 中斷請求線中斷請求線 IRQO-IRQ7 上的中斷請求信號接至上的中斷請求信號接至 8 位的中斷請求寄存器位的中斷請求寄存器 IRR,IRR 寄存所有中斷請求寄存所有中斷請求( 對應(yīng)位置對應(yīng)位置 1 表示有中斷請求表示有中斷請求 ) I/O I/O 設(shè)備發(fā)出的中斷請求信號為高電平的時(shí)間必須設(shè)備發(fā)出的中斷請求信號為高電平的時(shí)間必須保保 持到持到 8259A 8259A 接收到接收到
14、 CPU CPU 發(fā)出的第一個(gè)中斷響發(fā)出的第一個(gè)中斷響應(yīng)信號應(yīng)信號 INTAINTA負(fù)脈沖結(jié)束時(shí)為止。負(fù)脈沖結(jié)束時(shí)為止。 8259A 8259A 接收到第接收到第二個(gè)中斷二個(gè)中斷 響應(yīng)信號響應(yīng)信號INTAINTA后后, , 將把中斷類型碼的值將把中斷類型碼的值輸出到數(shù)據(jù)總線上輸出到數(shù)據(jù)總線上。 8259A 8259A 內(nèi)部的數(shù)據(jù)總線緩沖器用于連接系統(tǒng)的數(shù)據(jù)內(nèi)部的數(shù)據(jù)總線緩沖器用于連接系統(tǒng)的數(shù)據(jù)總線和總線和 8259A 8259A 的內(nèi)部總線的內(nèi)部總線, , 以便以便CPUCPU對對 8259A 8259A 寫寫入狀態(tài)字和控制字入狀態(tài)字和控制字 , , 或者讀出或者讀出 8259A 8259A
15、的信息的信息 讀讀/ /寫控制電路接受寫控制電路接受I/O I/O 命令命令, , 對對8259A8259A初始化命令初始化命令字寄存器和操作命令字寄存器進(jìn)行編程字寄存器和操作命令字寄存器進(jìn)行編程, , 以規(guī)定以規(guī)定 8259A 8259A 的工作方式和控制方式的工作方式和控制方式,級聯(lián)緩沖級聯(lián)緩沖、 比較比較 2 . 8259A 編程及示例編程及示例 使用使用 8259A 進(jìn)行中斷控制時(shí)進(jìn)行中斷控制時(shí) ,CPU 首先應(yīng)對首先應(yīng)對 8259A 內(nèi)部的各寄存器寫入相應(yīng)的初始化命令字內(nèi)部的各寄存器寫入相應(yīng)的初始化命令字 ICW 和控制命令字和控制命令字 OCW, 即要對即要對 8259A 進(jìn)行初始
16、進(jìn)行初始化編程。化編程。 初始化命令字共有四個(gè)初始化命令字共有四個(gè) : ICW1(PC 的主片口地址為的主片口地址為 20H, 從片口地址為從片口地址為 A0H, ICW2,ICW3 和和 ICW4( 主片口地址都是主片口地址都是 21H, 從片從片口地址都是口地址都是 A1H) 。編程時(shí)。編程時(shí) CPU 必須按必須按 ICW1-ICW4 的順序?qū)懙捻樞驅(qū)?入入。 初始化命令字初始化命令字 ICW 例如:例如:ICW1 用于設(shè)置用于設(shè)置 8259A 基本工作方式基本工作方式 D7D6D5D4D3D2D1D0A7A6A51LTIMADISNGLIC4IC4 用于規(guī)定是否需要寫入初始化命令字用于規(guī)
17、定是否需要寫入初始化命令字I CW :I C4 = 1 , 需要寫入需要寫入 ICW4; IC4 = 0 , 不需寫入不需寫入 ICW4。 SNGL 用于指出使用單片用于指出使用單片 8259A 還是多片還是多片 8259A: SNGL = 1, 單片方式單片方式。 SNGL = , 級連方式級連方式ICW2 ICW3 ICW4 功能?功能? 操作命令字操作命令字 CPU CPU 向向 8259A 8259A 寫完初始化命令字后寫完初始化命令字后, , 為進(jìn)一步提為進(jìn)一步提高它的中斷處理功能高它的中斷處理功能, , 例如例如: :為了屏蔽某些中斷為了屏蔽某些中斷, ,為為了能夠發(fā)出中斷結(jié)束命令
18、等了能夠發(fā)出中斷結(jié)束命令等, , 還需繼續(xù)設(shè)置還需繼續(xù)設(shè)置8259A8259A寫入操作命令字。操作命令字共有三個(gè)寫入操作命令字。操作命令字共有三個(gè): : OCW1( OCW1( 主片口地址為主片口地址為 21H, 21H, 從片口地址為從片口地址為 A1H) A1H) OCW2( OCW2( 主片口地址為主片口地址為 20H, 20H, 從片口地址為從片口地址為 AOH)AOH)OCW3OCW3( ( 主片口地址為主片口地址為 20H, 20H, 從片口地址為從片口地址為 AOH)AOH) OCW1 OCW1 用來設(shè)置中斷屏蔽寄存器中各位的值用來設(shè)置中斷屏蔽寄存器中各位的值 D7 D6 D5
19、D4 D3 D2 D1 D0D7 D6 D5 D4 D3 D2 D1 D0M7 M6 M5 M4 M3 M2 M1 MOM7 M6 M5 M4 M3 M2 M1 MO 當(dāng)當(dāng) Mi = 1 Mi = 1 時(shí)時(shí) , , 對應(yīng)的第對應(yīng)的第 i i 個(gè)中斷請求被個(gè)中斷請求被屏蔽屏蔽 U=0,1,2, U=0,1,2, ,7) ,7)。 OCW2 OCW2 用來設(shè)置中斷結(jié)束、優(yōu)先權(quán)循環(huán)等操作方式用來設(shè)置中斷結(jié)束、優(yōu)先權(quán)循環(huán)等操作方式 D7 D6 D5 D4 D3 D2 D1 DORSLEO I00L2L1 LO R: 優(yōu)先權(quán)循環(huán)位優(yōu)先權(quán)循環(huán)位. R=O 時(shí)時(shí) ,8 個(gè)中斷的優(yōu)先級固定個(gè)中斷的優(yōu)先級固定不
20、變不變 (IRQ7 最低最低 ,IRQ0 最高最高 ). R= 1 時(shí)時(shí) , 優(yōu)先級循優(yōu)先級循 環(huán)。此時(shí)優(yōu)先級采用循環(huán)輪轉(zhuǎn)方式環(huán)。此時(shí)優(yōu)先級采用循環(huán)輪轉(zhuǎn)方式 , 一個(gè)中斷請求一個(gè)中斷請求 , 例如例如 IRQ4, 服務(wù)完畢后服務(wù)完畢后 , 就輪為最低級別的優(yōu)先級就輪為最低級別的優(yōu)先級 , 而而 和它相鄰的中斷請求和它相鄰的中斷請求 , 此時(shí)為此時(shí)為 IRQ5, 變?yōu)樽罡邇?yōu)變?yōu)樽罡邇?yōu)先級先級 ,IRQ6 變?yōu)榇胃邇?yōu)先級變?yōu)榇胃邇?yōu)先級 , 其他依次類推其他依次類推 ; 8259A 初始化程序段(單片、嵌套中斷工作方式)初始化程序段(單片、嵌套中斷工作方式)MOV AL, 13H ; ICWl 送入
21、送入 AL,單片單片 8259A,邊沿觸發(fā)邊沿觸發(fā) OUT 20H,AL ; ICWl 送入送入 ICWl 口地址口地址MOV AL, 8 ; ICW2 送入送入 AL, 送中斷向量類型碼送中斷向量類型碼 高高5位位OUT 2lH,AL ; ICW2 送入送入 ICW2 口地址口地址MOV AL, 9 ; ICW4 送入送入 AL, 表示表示 80 x86 模式模式, 緩沖方式緩沖方式, 一般嵌套方式一般嵌套方式OUT 2lH,AL ; ICW4 送入送入 ICW4 口地址口地址MOV AL, OFFH ; OCWl 送入送入 AL, 屏蔽所有中斷屏蔽所有中斷OUT 2lH, AL ; OCW
22、l 送入送入 OCWl 口地址口地址; 查詢查詢 8259A 中斷屏蔽寄存器程序段中斷屏蔽寄存器程序段MOV AL, 0 ; OCWl 送送入入 AL, 表示表示 IMR為全為全0OUT 2lH,AL ; OCWl 送送入入OCWl 口地址口地址INAL, 2lH; 讀讀 IMR 狀態(tài)狀態(tài)ORAL, AL; IMR =0?JNZ D6 ; 若不為若不為 0, 則轉(zhuǎn)出錯程序則轉(zhuǎn)出錯程序 D6MOV AL, OFFH ; OCWl 送送入入 AL, 表示表示 IMR 為全為全 lOUT 2lH, ALINAL, 2lH; 讀讀 IMR 狀態(tài)狀態(tài)ADD AL, 1 ; IMR=l?JNZ D6 ;
23、若不為若不為 1 , 則轉(zhuǎn)出錯程序則轉(zhuǎn)出錯程序 D6 3. PC 的的 ISA 總線中斷總線中斷 PC/XT 使用一片使用一片 8259A 管理管理 8 級可屏蔽硬級可屏蔽硬件中斷件中斷 , PCI AT 及以上的系統(tǒng)使用兩片及以上的系統(tǒng)使用兩片 8259A管理管理 15 級可屏蔽硬件中斷。級可屏蔽硬件中斷。 IRQ標(biāo)準(zhǔn)功能標(biāo)準(zhǔn)功能總線插槽總線插槽 總線類型總線類型使用參考使用參考0系統(tǒng)定時(shí)器系統(tǒng)定時(shí)器未引出未引出 1鍵盤控制器鍵盤控制器未引出未引出 2供第二個(gè)供第二個(gè)8259A8259A級聯(lián)用級聯(lián)用未引出未引出 8實(shí)時(shí)時(shí)鐘實(shí)時(shí)時(shí)鐘未引出未引出 9可用可用( (類似類似IRQ2 )IRQ2 )
24、引出引出XT/ISAXT/ISA網(wǎng)卡網(wǎng)卡 10可用可用引出引出ISAISAUSBUSB 11可用可用引出引出ISAISASCSISCSI主適配器主適配器 12可用的主板鼠標(biāo)口可用的主板鼠標(biāo)口引出引出ISAISA主板鼠標(biāo)端口主板鼠標(biāo)端口 13數(shù)學(xué)協(xié)處理器數(shù)學(xué)協(xié)處理器未引出未引出 14主主IDEIDE引出引出ISAISA第一個(gè)第一個(gè)IDE (IDE (硬盤硬盤) ) 15次次IDEIIDEI可用可用引出引出ISAISA第二個(gè)第二個(gè)IDE(CD-ROM/IDE(CD-ROM/磁帶磁帶) ) 3串行口串行口2 (COM2)2 (COM2)引出引出XT/ISAXT/ISACOM2/COM2/內(nèi)置內(nèi)置MO
25、DEMMODEM 4串行口串行口1 (COMl)1 (COMl)引出引出XT/ISAXT/ISACOMICOMI 5聲音聲音/ /并行口并行口2 (LPTI)2 (LPTI)引出引出XT/ISAXT/ISA聲卡聲卡 6軟盤控制器軟盤控制器引出引出XT/ISAXT/ISA軟盤控制器軟盤控制器 7并行口并行口1 (LPTl)引出引出XT/ISALPTl 4. 中斷控制方式下中斷控制方式下 I/O 的執(zhí)行過程的執(zhí)行過程 (1)鍵盤設(shè)備通過中斷請求線鍵盤設(shè)備通過中斷請求線 IRQl 將將 8259A 內(nèi)部中斷請求觸發(fā)器內(nèi)部中斷請求觸發(fā)器 IRR 相應(yīng)位相應(yīng)位 (IRQl ) 置置位。位。 (2)825
26、9A 收到收到 IRQl 信號信號, 將與同時(shí)申請中斷將與同時(shí)申請中斷的其他信號或正掛起的中斷信號的其他信號或正掛起的中斷信號, 通過內(nèi)部中通過內(nèi)部中斷優(yōu)先級分析器進(jìn)行分析比較斷優(yōu)先級分析器進(jìn)行分析比較, 如果該中斷請如果該中斷請求是唯一的求是唯一的, 或優(yōu)先級為最高或優(yōu)先級為最高, 則由則由 8259A 的的 INT 引腳向引腳向 CPU 發(fā)出中斷請求信號發(fā)出中斷請求信號 INTR (3)CPU 響應(yīng)中斷響應(yīng)中斷, 連續(xù)發(fā)出兩個(gè)連續(xù)發(fā)出兩個(gè)INTA信號信號, 第一個(gè)第一個(gè) INTA 信號將現(xiàn)行的中斷服務(wù)寄存器信號將現(xiàn)行的中斷服務(wù)寄存器 ISR 相應(yīng)位置位相應(yīng)位置位, 表示正在為它服務(wù)表示正在
27、為它服務(wù), 同時(shí)中同時(shí)中斷請求觸發(fā)器斷請求觸發(fā)器 IRR 相應(yīng)位復(fù)位相應(yīng)位復(fù)位, 為再次中斷為再次中斷請求請求 做好準(zhǔn)備做好準(zhǔn)備 (如果中斷請求是由從片如果中斷請求是由從片8259A發(fā)出的發(fā)出的, 則主片則主片 8259A 將從將從 CAS0- CAS2 引腳向從片送出識別碼引腳向從片送出識別碼) 。第二個(gè)。第二個(gè) INTA 信號則要求信號則要求 8259A 將中斷信號的類型將中斷信號的類型碼送到數(shù)據(jù)總線上。碼送到數(shù)據(jù)總線上。 (4)CPU 收到收到 8 位中斷類型碼位中斷類型碼 (鍵盤中斷類型碼鍵盤中斷類型碼為為 09H)后后, 將其乘以將其乘以4 后作為中斷向量的地址后作為中斷向量的地址
28、(5) CPU 屏蔽中斷屏蔽中斷, 將中斷現(xiàn)場信息將中斷現(xiàn)場信息 (標(biāo)志寄存標(biāo)志寄存器和器和 IP及及CS 值值) 壓入系統(tǒng)堆錢壓入系統(tǒng)堆錢, 標(biāo)志寄存器標(biāo)志寄存器 I 位位(中斷允許位中斷允許位) 和和T 位位 (陷阱標(biāo)志位陷阱標(biāo)志位) 清零清零, 并并按中斷向量地址取得到新的按中斷向量地址取得到新的 IP 及及 CS 的值的值 (6) CPU 以以 CS 的值為段址的值為段址 , IP 為偏移值為偏移值 , 轉(zhuǎn)轉(zhuǎn)去執(zhí)行鍵盤中斷服務(wù)程序去執(zhí)行鍵盤中斷服務(wù)程序 (7)CPU 執(zhí)行鍵盤中斷服務(wù)程序從鍵盤輸入緩執(zhí)行鍵盤中斷服務(wù)程序從鍵盤輸入緩沖器中取得輸入的數(shù)據(jù)。沖器中取得輸入的數(shù)據(jù)。 (8)中斷
29、服務(wù)程序結(jié)束時(shí)返回到原先被中斷的中斷服務(wù)程序結(jié)束時(shí)返回到原先被中斷的程序繼續(xù)執(zhí)行。程序繼續(xù)執(zhí)行。 用中斷控制方式的用中斷控制方式的 I/O 處理過程的效率要比處理過程的效率要比程序控制方式高程序控制方式高 , 但但 CPU理過程也更復(fù)雜理過程也更復(fù)雜, 如果處理的是高速外部設(shè)備如果處理的是高速外部設(shè)備,由于頻繁地中斷由于頻繁地中斷, CPU效率會降低效率會降低, 此時(shí)應(yīng)采用此時(shí)應(yīng)采用 DMA 控制方式控制方式3.5.4 8237 可編程可編程 DMA 控制器控制器 1.DMA1.DMA控制方式的原理控制方式的原理 CS: 片選片選, 低電平有效。低電平有效。 RESET: 復(fù)位復(fù)位, 高電平有
30、效。高電平有效。 屏蔽寄存器置屏蔽寄存器置 1 ,其他寄存器其他寄存器均清均清0。復(fù)位后。復(fù)位后 , 8237 處于空處于空閑周期閑周期, 它的所有控制線都處它的所有控制線都處于高阻狀態(tài)于高阻狀態(tài),復(fù)位之后必須重復(fù)位之后必須重新初始化新初始化, 否則否則 8237 不能進(jìn)不能進(jìn)入入DMA 操作。操作。READY: 準(zhǔn)備就緒準(zhǔn)備就緒, 高電平有效。高電平有效。當(dāng)所選擇的存儲器或當(dāng)所選擇的存儲器或 I/O 端口端口的速度較慢的速度較慢, 需要延長傳輸時(shí)需要延長傳輸時(shí)間時(shí)間時(shí), 使使 READY 端處于低電端處于低電平平, 8237 自動在存儲器讀和存自動在存儲器讀和存儲器寫周期中插入等待周期儲器寫
31、周期中插入等待周期, 當(dāng)傳輸完成時(shí)當(dāng)傳輸完成時(shí) , READY 端為端為高電平高電平, 表示存儲器或外設(shè)準(zhǔn)表示存儲器或外設(shè)準(zhǔn)備就緒。備就緒。 ADSTB: 地址選通地址選通, 高電平有高電平有效。當(dāng)前地址寄存器的高效。當(dāng)前地址寄存器的高 8位位經(jīng)數(shù)據(jù)總線經(jīng)數(shù)據(jù)總線 DB7 DB0 送到送到外部鎖存器中。外部鎖存器中。 AEN: 地址允許輸出地址允許輸出, 高電平高電平有效。把外部鎖存器中的高有效。把外部鎖存器中的高 8 位地址放到系統(tǒng)地址總線上位地址放到系統(tǒng)地址總線上, 與芯片輸出低與芯片輸出低 8 位地址構(gòu)成內(nèi)位地址構(gòu)成內(nèi)存單元地址的偏移量。存單元地址的偏移量。DMA傳送時(shí)屏蔽別的系統(tǒng)總線驅(qū)
32、動傳送時(shí)屏蔽別的系統(tǒng)總線驅(qū)動器。器。 MEMR: 存儲器讀存儲器讀, 低電平有效低電平有效, 輸出輸出, 只用于只用于 DMA 傳送。在傳送。在 DMA 讀周期期間讀周期期間 , 用于從尋用于從尋址的存儲器單元中讀出數(shù)據(jù)址的存儲器單元中讀出數(shù)據(jù) MEMW: 存儲器寫存儲器寫, 低電平有效低電平有效, 輸出輸出, 只用于只用于 DMA 傳送。在傳送。在 DMA 寫周期期間寫周期期間,用于將數(shù)用于將數(shù)據(jù)寫入所尋址的存儲單元中。據(jù)寫入所尋址的存儲單元中。 lOR: I/O 讀信號讀信號, 低電平有效低電平有效 , 雙向。雙向。CPU 控制總線時(shí)控制總線時(shí), 它是輸入信號它是輸入信號, CPU 利用此
33、信號利用此信號讀取讀取 8237 內(nèi)部寄存器的狀態(tài)內(nèi)部寄存器的狀態(tài); 當(dāng)當(dāng) 8237 控制控制總線時(shí)總線時(shí), 它是輸出信號它是輸出信號, 與與MEMW相配合相配合, 控控制制 數(shù)據(jù)由外設(shè)傳送至存儲器。數(shù)據(jù)由外設(shè)傳送至存儲器。 lOW: I/O 寫信號寫信號, 低電平有效低電平有效, 雙向。雙向。 CPU 控制總線時(shí)控制總線時(shí), 它是輸入信號它是輸入信號, CPU 利用它把信利用它把信息寫入息寫入 8237 內(nèi)部寄存器內(nèi)部寄存器(初始化初始化) ; 當(dāng)當(dāng) 8237 控制總線時(shí)控制總線時(shí), 它是輸出信號它是輸出信號, 與與 MEMR 互相互相配合配合, 把數(shù)據(jù)從存儲器傳送至外設(shè)。把數(shù)據(jù)從存儲器傳送
34、至外設(shè)。 EOP: DMA 傳送過程結(jié)束信號傳送過程結(jié)束信號, 低電平有效低電平有效, 雙向。當(dāng)由外部向雙向。當(dāng)由外部向DMA控制器送一個(gè)控制器送一個(gè)EOP信信號時(shí)號時(shí), DMA 傳送過程被外部強(qiáng)迫結(jié)束。當(dāng)傳送過程被外部強(qiáng)迫結(jié)束。當(dāng) DMA 控制的任一通道計(jì)數(shù)結(jié)束時(shí)控制的任一通道計(jì)數(shù)結(jié)束時(shí), 會從會從EOP引腳輸出一個(gè)低電平引腳輸出一個(gè)低電平, 表示表示 DMA 傳輸結(jié)束。傳輸結(jié)束。無論是從外部終止無論是從外部終止 DMA 過程過程 , 還是內(nèi)部計(jì)還是內(nèi)部計(jì)數(shù)數(shù) 結(jié)束引起結(jié)束引起 DMA 過程終止過程終止, 都會使都會使 DMA 控控制器的內(nèi)部寄存器復(fù)位。制器的內(nèi)部寄存器復(fù)位。 DREQ0-D
35、REQ3: DMA 請求輸入信號請求輸入信號, 有效有效電平可由編程設(shè)定。是外設(shè)為取得電平可由編程設(shè)定。是外設(shè)為取得DMA 服務(wù)服務(wù)而送到各個(gè)通道的請求信號。而送到各個(gè)通道的請求信號。 在固定優(yōu)先級情況下在固定優(yōu)先級情況下 , DREQ0 優(yōu)先級最高優(yōu)先級最高, DREQ3 優(yōu)先級最低優(yōu)先級最低; 在優(yōu)先級循環(huán)方式下在優(yōu)先級循環(huán)方式下 , 某通道的某通道的 DMA 請求請求被響應(yīng)后被響應(yīng)后 , 隨即降為最低級。隨即降為最低級。 8237 用用 DACK 信號對信號對 DREQ 的響應(yīng)的響應(yīng), 在信在信號有效之前號有效之前, DREQ 信號必須維持有效。信號必須維持有效。 DACK0 - DAC
36、K3: DMAC 對各個(gè)通道請求的對各個(gè)通道請求的響應(yīng)信號響應(yīng)信號, 輸出輸出, 有效電平可由編程設(shè)定。有效電平可由編程設(shè)定。 8237 接收到通道請求后接收到通道請求后, 向向 CPU 發(fā)出發(fā)出 DMA 請求信號請求信號 HRQ, 當(dāng)當(dāng) 8237 獲得獲得 CPU 送來的總送來的總線允許信號線允許信號 HLDA后后 , 產(chǎn)生產(chǎn)生 DACK 信號送到信號送到相應(yīng)的外設(shè)端口相應(yīng)的外設(shè)端口, 從而進(jìn)入從而進(jìn)入 DMA 服務(wù)過程服務(wù)過程 HRQ: 8237 給給 CPU 的總線請求的總線請求, 高電平有效。高電平有效。當(dāng)當(dāng) I/O 端口要求端口要求 DMA 傳送時(shí)傳送時(shí), 向向 DMA 發(fā)送發(fā)送 D
37、REQ 信號信號, 如果相應(yīng)通道屏蔽位為如果相應(yīng)通道屏蔽位為0, DMA 請求未被屏蔽請求未被屏蔽, 則則 DMA 控制器的控制器的 HRQ 端輸端輸出為有效電平出為有效電平,向向 CPU 發(fā)總線請求。發(fā)總線請求。 HLDA: 總線響應(yīng)信號總線響應(yīng)信號, 高電平有效高電平有效, 是是 CPU 對對 HRQ 信號的應(yīng)答信號。信號的應(yīng)答信號。 CPU 接收到接收到 HRQ 信號后信號后, 在當(dāng)前總線周期結(jié)束之后讓出在當(dāng)前總線周期結(jié)束之后讓出總線總線 , 并使并使 HLDA 信號有效。信號有效。 程序命令控制邏輯對程序命令控制邏輯對 CPU 送來的程序命令送來的程序命令進(jìn)行譯碼進(jìn)行譯碼, 在在 DM
38、A請求服務(wù)之前請求服務(wù)之前 (即芯片處即芯片處于空閑周期于空閑周期) , 通過通過 I/O 地址緩沖器送來的地地址緩沖器送來的地址址 A3 - AO 分別對內(nèi)部寄存器進(jìn)行預(yù)置分別對內(nèi)部寄存器進(jìn)行預(yù)置; 在在 DMA 服務(wù)期間服務(wù)期間 (即芯片處于操作周期即芯片處于操作周期) ,對方對方式控制字的最低兩位式控制字的最低兩位Dl、DO 進(jìn)行譯碼進(jìn)行譯碼, 以確以確定定DMA 的的 操作通道。操作通道。 A3-A0: 地址總線低地址總線低 4 位位, 雙向。當(dāng)雙向。當(dāng) CPU 控控制總線時(shí)制總線時(shí), 是地址輸入線是地址輸入線, CPU 用這用這 4 條地條地 址線對址線對 DMA 控制器的內(nèi)部寄存器進(jìn)行尋址控制器的內(nèi)部寄存器進(jìn)行尋址, 完成對完成對 DMA 控制器的編程。當(dāng)控制器的編程。當(dāng)8237控制總控制總線時(shí)線時(shí), 由這由這 4 條線輸出要訪問的存儲單元的條線輸出要訪問的存儲單元的最低最低 4 位地址。位地址。 A7 -A4: 地址線地址線 , 輸出輸出 , 用于用于 DMA 傳送時(shí)輸傳送時(shí)輸出要訪問的存儲單元低出要訪問的存儲單元低 8 位地址中的高位地址中的高 4 位。位。 DB7 _ DBO: 8 位雙向數(shù)據(jù)線位雙向數(shù)據(jù)線 , 與系統(tǒng)數(shù)據(jù)總與系統(tǒng)數(shù)據(jù)總線相連。在線相連。在 CPU
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 沖壓設(shè)備安全管理制度
- 市政護(hù)欄鋪設(shè)清洗方案(3篇)
- 操場施工完整方案(3篇)
- 景觀古鎮(zhèn)改造方案(3篇)
- 船運(yùn)運(yùn)輸保障方案(3篇)
- 退稅減稅督查方案(3篇)
- 保險(xiǎn)公司財(cái)務(wù)代理及理賠服務(wù)合作協(xié)議
- 特色燒烤店員工招聘合同范本
- 礦業(yè)權(quán)抵押貸款合同解除條件合同
- 濱江景觀帶綠地使用權(quán)租賃協(xié)議
- 2025年下半年廣州南沙區(qū)南沙街招考雇員易考易錯模擬試題(共500題)試卷后附參考答案
- 河北開放大學(xué)2025年《醫(yī)用基礎(chǔ)化學(xué)#》形考任務(wù)3答案
- 【課件】(二)聽覺課件-2024-2025學(xué)年冀少版生物七年級下冊
- 《ISO 37001-2025 反賄賂管理體系要求及使用指南》專業(yè)解讀和應(yīng)用培訓(xùn)指導(dǎo)材料之6:8運(yùn)行(雷澤佳編制-2025A0)
- 計(jì)算機(jī)網(wǎng)絡(luò)實(shí)習(xí)報(bào)告3000字范文
- 腎移植術(shù)后的護(hù)理查房
- 委托代建代管合同協(xié)議
- 開發(fā)面試題及答案大全
- 2025年4月版安全法律法規(guī)標(biāo)準(zhǔn)文件清單
- 2025春季學(xué)期國開電大專科《管理學(xué)基礎(chǔ)》一平臺在線形考(形考任務(wù)一至四)試題及答案
- 爆破作業(yè)人員培訓(xùn)考核信息系統(tǒng)操作手冊培訓(xùn)單位平臺
評論
0/150
提交評論