計(jì)算機(jī)組成技術(shù)第8章學(xué)習(xí)專(zhuān)業(yè)課件_第1頁(yè)
計(jì)算機(jī)組成技術(shù)第8章學(xué)習(xí)專(zhuān)業(yè)課件_第2頁(yè)
計(jì)算機(jī)組成技術(shù)第8章學(xué)習(xí)專(zhuān)業(yè)課件_第3頁(yè)
計(jì)算機(jī)組成技術(shù)第8章學(xué)習(xí)專(zhuān)業(yè)課件_第4頁(yè)
計(jì)算機(jī)組成技術(shù)第8章學(xué)習(xí)專(zhuān)業(yè)課件_第5頁(yè)
已閱讀5頁(yè),還剩47頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

2025/2/251第8章輸入/輸出接口與中斷系統(tǒng)計(jì)算機(jī)組成技術(shù)教程哈爾濱工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院2025/2/252第8章輸入/輸出接口與中斷系統(tǒng)8.1輸入/輸出技術(shù)的發(fā)展8.2輸入/輸出接口的基本組成8.3中斷系統(tǒng)8.4DMA技術(shù)8.5常見(jiàn)的標(biāo)準(zhǔn)輸入/輸出接口作業(yè):1,2,3,5,7,9,112025/2/253計(jì)算機(jī)的I/O接口主機(jī)輸入/輸出接口(Interface)設(shè)備控制器設(shè)備執(zhí)行機(jī)構(gòu)計(jì)算機(jī)的外設(shè)往往不能直接與系統(tǒng)總線相連,需要一個(gè)中間環(huán)節(jié)完成數(shù)據(jù)緩沖、數(shù)據(jù)格式轉(zhuǎn)換、通信控制、時(shí)序和電平匹配等工作,這個(gè)中間環(huán)節(jié)就是接口電路。

設(shè)置接口的主要目的是將用戶編制的程序(或數(shù)據(jù))輸入至主機(jī)內(nèi),將運(yùn)算結(jié)果輸送給用戶,并能實(shí)現(xiàn)I/O系統(tǒng)與主機(jī)工作的協(xié)調(diào)等。2025/2/2548.1I/O技術(shù)的發(fā)展輸入/輸出技術(shù)的發(fā)展大致可分為4個(gè)階段:1.早期階段早期的I/O設(shè)備種類(lèi)較少,I/O設(shè)備與主機(jī)交換信息都必須通過(guò)CPU,這種交換方式延續(xù)了相當(dāng)長(zhǎng)的時(shí)間。2.接口模塊和DMA階段這一階段I/O設(shè)備通過(guò)接口模塊與主機(jī)連接,計(jì)算機(jī)系統(tǒng)采用了總線結(jié)構(gòu),通常在接口中都設(shè)有數(shù)據(jù)通路和控制通路。數(shù)據(jù)經(jīng)過(guò)接口既起到緩沖作用,又可完成“串

并”變換或“并

串”變換。控制通路用來(lái)傳送CPU向I/O設(shè)備發(fā)出的各種控制命令,或使CPU接收來(lái)自I/O設(shè)備的反饋信號(hào)。為了提高CPU的工作效率,出現(xiàn)了能滿足中斷請(qǐng)求處理要求的接口和DMA(DirectMemoryAccess)技術(shù)。雖然這一階段實(shí)現(xiàn)了CPU和I/O并行工作,但是在主機(jī)與I/O交換信息時(shí),CPU要中斷現(xiàn)行程序,也即CPU與I/O還不能做到絕對(duì)地并行工作。3.通道階段在小型和微型計(jì)算機(jī)中,采用DMA方式可實(shí)現(xiàn)高速外設(shè)與主機(jī)成組數(shù)據(jù)的交換,但在大、中型計(jì)算機(jī)中,外設(shè)配置繁多,數(shù)據(jù)傳送頻繁,需要采用專(zhuān)用通道技術(shù)。通道是負(fù)責(zé)管理I/O設(shè)備以及實(shí)現(xiàn)主存與I/O設(shè)備之間信息交換的部件,它可視為一種具有特殊功能的處理器。通道有專(zhuān)用的通道指令,能獨(dú)立地執(zhí)行用通道指令所編寫(xiě)的輸入/輸出程序,但它不是一個(gè)完全獨(dú)立的處理器,它要啟動(dòng)、停止或改變工作狀態(tài)受CPU的I/O指令控制,是從屬于CPU的一個(gè)專(zhuān)用處理器。依賴(lài)通道管理的I/O設(shè)備在與主機(jī)交換信息時(shí),CPU不直接參與管理,故CPU的資源利用率更高。4.I/O處理機(jī)階段I/O處理機(jī)又叫外圍處理機(jī)(PeripheralProcessorUnit,PPU),它基本獨(dú)立于主機(jī)工作,既可完成I/O通道要完成的I/O控制,還可完成碼制變換、格式處理、數(shù)據(jù)塊檢錯(cuò)、糾錯(cuò)等操作。具有I/O處理機(jī)的輸入/輸出系統(tǒng)與CPU工作的并行性更高,這說(shuō)明I/O系統(tǒng)對(duì)主機(jī)來(lái)說(shuō),具有更大的獨(dú)立性。

2025/2/2558.2I/O接口的基本組成接口:

I/O接口通常是指主機(jī)與外部設(shè)備之間設(shè)置的一個(gè)硬件電路及其相應(yīng)的軟件控制。主機(jī)與外設(shè)之間設(shè)置接口適配電路的原因:利用接口可實(shí)現(xiàn)多臺(tái)外部設(shè)備的選擇。通過(guò)接口可實(shí)現(xiàn)數(shù)據(jù)緩沖達(dá)到速度匹配。通過(guò)接口可實(shí)現(xiàn)數(shù)據(jù)串-并格式的轉(zhuǎn)換。通過(guò)接口可實(shí)現(xiàn)電平轉(zhuǎn)換。通過(guò)接口可傳送控制命令。通過(guò)接口可監(jiān)視設(shè)備的工作狀態(tài)。8.2.1

I/O接口的概念2025/2/2568.2.2

I/O接口的功能與組成I/O接口通常應(yīng)具備如下功能:設(shè)備選擇與尋址功能。傳送命令的功能。傳送數(shù)據(jù)的功能。反映I/O設(shè)備工作狀態(tài)的功能。

端口是指接口電路中的一些寄存器,分別用來(lái)存放數(shù)據(jù)信息、控制信息和狀態(tài)信息,相應(yīng)的就有數(shù)據(jù)端口、控制端口和狀態(tài)端口。(端口與寄存器等價(jià)?。。。?/p>

接口和端口是兩個(gè)不同的概念,若干端口加上相應(yīng)的控制邏輯才能組成接口。2025/2/257

I/O接口一般都由數(shù)據(jù)鎖存/緩沖器、狀態(tài)寄存器、命令寄存器、地址譯碼和控制邏輯等電路組成。8.2.2

I/O接口的功能與組成2025/2/2588.2.3

I/O接口的編址與控制方法

對(duì)I/O的編址有兩種方式,一種是獨(dú)立編址I/O,另一種是存儲(chǔ)器映象I/O。

在獨(dú)立編址I/O中,IN,OUT指令在微處理器、累加器與I/O設(shè)備之間或存儲(chǔ)器與I/O設(shè)備之間傳送數(shù)據(jù)。

用于INTEL微處理器系統(tǒng)的最普遍的I/O傳送技術(shù)就是獨(dú)立編址I/O,獨(dú)立編址的I/O設(shè)備的地址又稱(chēng)為端口。獨(dú)立編址I/O是指I/O存儲(chǔ)單元獨(dú)立與存儲(chǔ)器系統(tǒng)單獨(dú)隔離開(kāi)一個(gè)獨(dú)立的存儲(chǔ)空間。這種方式的缺點(diǎn)是只能使用IN、OUT指令在I/O與處理器之間傳送數(shù)據(jù)。但它的優(yōu)點(diǎn)是顯著的,端口與存儲(chǔ)空間隔離開(kāi)來(lái),用戶可以充分的擴(kuò)展存儲(chǔ)器而無(wú)須考慮給I/O留出空間。在存儲(chǔ)器映象I/O中,任一存儲(chǔ)器的指令均能執(zhí)行I/O數(shù)據(jù)傳送。2025/2/259指令系統(tǒng)包括給I/O設(shè)備傳送信息的指令(OUT)和從I/O設(shè)備讀出信息的指令(IN)。外設(shè)與微處理器內(nèi)累加器的數(shù)據(jù)交換是通過(guò)IN與OUT指令實(shí)現(xiàn)的。I/O地址存儲(chǔ)于寄存器DX中作為16位I/O地址,或由指令操作碼之后的操作數(shù)提供。例如:

INAL,8;從端口P8輸入一個(gè)字節(jié)到AL。

I/O指令8.2.3

I/O接口的編址與控制方法2025/2/2510無(wú)條件傳送方式計(jì)算機(jī)與外設(shè)數(shù)據(jù)傳送采用的是直接輸入/輸出方式,也稱(chēng)為無(wú)條件傳送方式。采用這種傳送方式的前提是外設(shè)必須處于隨時(shí)能提供數(shù)據(jù)或接收數(shù)據(jù)的狀態(tài)。該方式適用于對(duì)一些簡(jiǎn)單外設(shè)進(jìn)行操作。(1)當(dāng)簡(jiǎn)單外設(shè)作為輸出設(shè)備時(shí),要求CPU在執(zhí)行輸入指令時(shí),外設(shè)的數(shù)據(jù)是準(zhǔn)備好的;(2)當(dāng)簡(jiǎn)單外設(shè)作為輸入設(shè)備時(shí),要求CPU在執(zhí)行輸出數(shù)據(jù)指令時(shí),要確保所選中的輸入鎖存器是空的。8.2.3

I/O接口的編址與控制方法2025/2/2511程序查詢(條件傳送)方式的核心問(wèn)題在于每時(shí)每刻需不斷查詢I/O設(shè)備是否準(zhǔn)備就緒。要完成查詢過(guò)程,通常系統(tǒng)要執(zhí)行如下三類(lèi)指令:·測(cè)試指令·傳送指令·轉(zhuǎn)移指令8.2.3

I/O接口的編址與控制方法單個(gè)設(shè)備的查詢示意圖和程序流程圖2025/2/2512多個(gè)設(shè)備的查詢流程示意圖當(dāng)I/O設(shè)備較多時(shí),CPU需按各個(gè)I/O設(shè)備在系統(tǒng)中的優(yōu)先級(jí)別進(jìn)行逐級(jí)查詢,其流程圖如右。圖中設(shè)備的優(yōu)先順序按1至N降序排列。是是否否否是檢查狀態(tài)標(biāo)記1設(shè)備1準(zhǔn)備就緒?處理設(shè)備1檢查狀態(tài)標(biāo)記2處理設(shè)備2

···

···檢查狀態(tài)標(biāo)記N處理設(shè)備N(xiāo)設(shè)備2準(zhǔn)備就緒?設(shè)備N(xiāo)準(zhǔn)備就緒?8.2.3

I/O接口的編址與控制方法2025/2/25138.3中斷系統(tǒng)8.3.1程序中斷的目的和原理程序中斷的目的:

與數(shù)據(jù)傳輸速率低的I/O設(shè)備接口(鍵盤(pán))處理突發(fā)(不規(guī)則)事件(插入軟盤(pán))2025/2/2514中斷(Interrupt)是一個(gè)由內(nèi)外部事件激發(fā)來(lái)中斷當(dāng)前正在執(zhí)行程序而運(yùn)行另一個(gè)處理程序的過(guò)程。8.3.1程序中斷的目的和原理通常把實(shí)現(xiàn)中斷功能所需的軟硬件技術(shù),統(tǒng)稱(chēng)為中斷技術(shù)。把實(shí)現(xiàn)中斷功能的全部軟硬件統(tǒng)稱(chēng)為中斷系統(tǒng)。把凡能向CPU提出中斷請(qǐng)求的各種因素統(tǒng)稱(chēng)為中斷源。2025/2/25第七章-158.3.1程序中斷的目的和原理程序中斷的原理:

當(dāng)出現(xiàn)異常情況或特殊請(qǐng)求時(shí),計(jì)算機(jī)停止現(xiàn)行程序的運(yùn)行,轉(zhuǎn)向?qū)@些異常情況或特殊請(qǐng)求的處理,處理結(jié)束后再返回到現(xiàn)行原程序的間斷處繼續(xù)執(zhí)行。2025/2/25第七章-168.3.1程序中斷的目的和原理程序中斷的原理:1中斷是隨機(jī)的2中斷是可恢復(fù)的3中斷是自動(dòng)處理的中斷特點(diǎn)2025/2/25178.3.1程序中斷的目的和原理程序中斷的原理:微型計(jì)算機(jī)中斷系統(tǒng)CPU中斷處理機(jī)構(gòu)中斷服務(wù)程序中斷接口...請(qǐng)求1請(qǐng)求2請(qǐng)求N2025/2/25188.3.2

中斷處理過(guò)程和中斷服務(wù)程序一.中斷的一般處理過(guò)程中斷請(qǐng)求中斷判優(yōu)中斷響應(yīng)中斷處理中斷返回2025/2/25198.3.2

中斷處理過(guò)程和中斷服務(wù)程序二.中斷服務(wù)程序的一般流程Step1.保護(hù)斷點(diǎn):將斷點(diǎn)地址壓入堆棧保存,即當(dāng)前PC值入棧。Step2.關(guān)中斷:屏蔽其它中斷請(qǐng)求信號(hào)。Step3.保護(hù)現(xiàn)場(chǎng):將中斷服務(wù)程序使用的所有寄存器內(nèi)容入棧。Step4.中斷處理:執(zhí)行中斷源所要求的中斷服務(wù)程序。Step5.恢復(fù)現(xiàn)場(chǎng):恢復(fù)被使用寄存器的原有內(nèi)容。Step6.開(kāi)中斷:允許接受其它中斷請(qǐng)求信號(hào)。Step7.中斷返回:執(zhí)行IRET指令,棧頂內(nèi)容?PC,程序跳轉(zhuǎn)回?cái)帱c(diǎn)處。2025/2/25208.3.3

多重中斷及處理2025/2/25218.3.4中斷接口電路1.中斷接口電路的基本組成:中斷請(qǐng)求觸發(fā)器中斷屏蔽觸發(fā)器中斷源排隊(duì)器中斷向量地址形成部件主存

….服務(wù)程序入口1服務(wù)程序入口2服務(wù)程序入口3

….

….打印機(jī)服務(wù)程序聲卡服務(wù)程序

….鍵盤(pán)服務(wù)程序

….向量地址1中斷源1中斷源2中斷源n中斷源INTP1INTP2INTPn向量地址2向量地址3服務(wù)程序入口1服務(wù)程序入口2服務(wù)程序入口3中斷向量2025/2/25228.3.4中斷接口電路2.一個(gè)實(shí)際的中斷接口電路Intel8259A:2025/2/25238.3.5

微型計(jì)算機(jī)的中斷系統(tǒng)2025/2/25248.3.5

微型計(jì)算機(jī)的中斷系統(tǒng)

Intel系列微處理器包括兩條硬件中斷請(qǐng)求引腳(INTR和NMI)和一條響應(yīng)INTR中斷申請(qǐng)的硬件引腳(INTA)。除了引腳,微處理器還有軟中斷INTn、INTO、INT3和BOUND命令。兩個(gè)標(biāo)志位IF(中斷標(biāo)志)和TF(陷井標(biāo)志),一條返回指令I(lǐng)RET(或80386、80486、Pentium/PentiumPro中的IRETD)用于結(jié)束中斷服務(wù)程序,返回到主程序。2025/2/2525中斷向量和向量表

中斷向量和向量表對(duì)于理解硬件和軟件中斷是重要的。中斷向量表存放在存儲(chǔ)器的前1024字節(jié)中,地址從00000H到003FFH,它包括256種不同的4字節(jié)中斷向量,中斷向量包含中斷服務(wù)程序的地址(段地址和偏移地址)。下面列出了微處理器中每個(gè)專(zhuān)用中斷的功能描述:類(lèi)型0

除法出錯(cuò):當(dāng)除法結(jié)果溢出或企圖除以零時(shí)發(fā)生中斷。類(lèi)型1

單步或陷井:執(zhí)行每條指令后,若陷井標(biāo)志(TF)被置位,則產(chǎn)生中斷。一旦響應(yīng)此中斷,TF位被清除,以使中斷服務(wù)程序全速執(zhí)行。類(lèi)型2

非屏蔽硬件中斷:通過(guò)在微處理器的NMI輸入引腳上設(shè)置邏輯1實(shí)現(xiàn),此輸入是不可屏蔽的,即它無(wú)法被禁止。類(lèi)型3

斷點(diǎn)中斷:?jiǎn)巫止?jié)指令(INT3),INT3指令通常用于調(diào)試時(shí)保存程序中的斷點(diǎn)。8.3.5

微型計(jì)算機(jī)的中斷系統(tǒng)2025/2/2526類(lèi)型4

溢出:INTO指令的專(zhuān)用向量。若溢出標(biāo)志(OF)表示的溢出條件存在,INTO指令中斷執(zhí)行的程序。類(lèi)型5

邊界測(cè)試:將寄存器與存放在存儲(chǔ)器中的邊界值進(jìn)行比較的指令。若寄存器內(nèi)容大于存儲(chǔ)器中的第一個(gè)字而小于等于第二個(gè)字,則認(rèn)為寄存器內(nèi)容在邊界之內(nèi),不發(fā)生中斷。若寄存器內(nèi)容出界,則發(fā)生類(lèi)型5中斷。類(lèi)型6

非法操作碼:當(dāng)遇到程序中某個(gè)未定義的操作碼時(shí)發(fā)生中斷。類(lèi)型7

協(xié)處理器不存在:按機(jī)器狀態(tài)字(MSW)協(xié)處理器控制位的指示,當(dāng)系統(tǒng)沒(méi)有找到協(xié)處理器時(shí)發(fā)生中斷。若執(zhí)行ESC或WAIT指令并且沒(méi)有找到協(xié)處理器時(shí),發(fā)生類(lèi)型7異常中斷。8.3.5

微型計(jì)算機(jī)的中斷系統(tǒng)2025/2/2527中斷指令BOUNDINTOINTnINT3IRETBOUND指令有兩個(gè)操作數(shù),它比較寄存器和兩個(gè)字的存儲(chǔ)器數(shù)據(jù)。例如,執(zhí)行指令BOUNDAX,DATA,則AX與DATA和DATA+1的內(nèi)容進(jìn)行比較,再與DATA+2和DATA+3的內(nèi)容比較。如果AX小于DATA和DATA+1的內(nèi)容,則產(chǎn)生一個(gè)類(lèi)型5中斷,如果AX大于DATA+2和DATA+3的內(nèi)容,也產(chǎn)生一個(gè)類(lèi)型5中斷。若AX在這兩個(gè)內(nèi)存字的范圍內(nèi),則不發(fā)生中斷。INTO指令檢查溢出標(biāo)志(OF),若OF=1,INTO指令調(diào)用入口地址存放在類(lèi)型4中斷向量的程序。若OF=0,則INTO指令不執(zhí)行任何操作并執(zhí)行程序中的下一條指令。INTn指令調(diào)用類(lèi)型n,表示中斷向量存放的中斷服務(wù)程序的入口地址。例如,INT10H指令調(diào)用地址存放在向量類(lèi)型為10H(00040H-00043H)的中斷服務(wù)程序,我們只需將向量類(lèi)型號(hào)n乘以4,就可確定中斷向量的起始地址。唯一例外的是INT3指令,是一個(gè)單字節(jié)指令,通常用于調(diào)試軟件錯(cuò)誤。

IRET指令是用于軟中斷或硬件中斷返回的專(zhuān)用指令。IRET指令類(lèi)似于通常的RET,因?yàn)樗鼜臈V袡z索返回地址。但它又不同于通常的返回,它從棧中檢索標(biāo)志寄存器的拷貝。IRET指令從棧中移出六個(gè)字節(jié):兩個(gè)IP字節(jié),兩個(gè)CS字節(jié)和兩個(gè)用于標(biāo)志的字節(jié)。8.3.5

微型計(jì)算機(jī)的中斷系統(tǒng)2011年碩士研究生入學(xué)統(tǒng)一考試計(jì)算機(jī)專(zhuān)業(yè)試題在系統(tǒng)總線的數(shù)據(jù)線上,不可能傳輸?shù)氖?/p>

。A.指令

B.操作數(shù)

C.握手(應(yīng)答)信號(hào)

D.中斷類(lèi)型號(hào)2025/2/25第七章-28答:在取指周期,指令是被當(dāng)作數(shù)據(jù)從內(nèi)存中取來(lái)。操作數(shù)肯定是通過(guò)數(shù)據(jù)總線傳輸。中斷源是通過(guò)數(shù)據(jù)總線將中斷類(lèi)型號(hào)送給CPU。握手信號(hào)屬于控制信號(hào),故選擇C。2025/2/25298.4

DMA技術(shù)

DMA技術(shù)提供直接存取存儲(chǔ)器,此時(shí)微處理器暫時(shí)閑置,這允許數(shù)據(jù)在存儲(chǔ)器和I/O之間的傳輸速度只受到系統(tǒng)中的存儲(chǔ)器部件以及DMA控制器的速度限制。DMA傳輸有很多用途,但比較常見(jiàn)的有DRAM刷新,刷新屏幕顯示以及磁盤(pán)存儲(chǔ)器系統(tǒng)讀和寫(xiě)。2025/2/25308.4.1DMA的工作原理HOLDHLDA兩條DMA控制引腳信號(hào)的典型時(shí)序關(guān)系如圖所示:無(wú)論何時(shí)只要HOLD輸入加上高電平,DMA操作就被請(qǐng)求,微處理器在幾個(gè)時(shí)鐘周期內(nèi)作出響應(yīng),此時(shí),地址、數(shù)據(jù)以及控制總線就被置為高阻狀態(tài)。在這種狀態(tài)下,微處理器好像被移走,允許外部I/O設(shè)備或其它微處理器獲得對(duì)系統(tǒng)總線的訪問(wèn)權(quán),使得存儲(chǔ)器可以被直接存取。DMA是指直接存儲(chǔ)器存取發(fā)生在I/O和存儲(chǔ)器之間,而沒(méi)有使用微處理器。DMA寫(xiě)把數(shù)據(jù)從I/O傳輸?shù)酱鎯?chǔ)器,DMA讀把數(shù)據(jù)從存儲(chǔ)器傳輸?shù)絀/O設(shè)備。2025/2/25318.4.1DMA的工作原理1.DMA方式可以響應(yīng)隨機(jī)DMA請(qǐng)求,對(duì)于采用DMA方式的I/O接口來(lái)說(shuō),何時(shí)具備數(shù)據(jù)傳送條件是隨機(jī)的。2.DMA傳送在不影響CPU程序執(zhí)行狀態(tài)的前提下,滿足了高速數(shù)據(jù)傳送的速度要求,提高了整個(gè)系統(tǒng)的效率。3.DMA方式本身只能處理簡(jiǎn)單的數(shù)據(jù)傳送,無(wú)法處理數(shù)據(jù)傳輸過(guò)程可能出現(xiàn)的問(wèn)題,因此在某些場(chǎng)合往往需要綜合應(yīng)用DMA方式與程序中斷方式,二者互為補(bǔ)充。DMA方式的特點(diǎn)2025/2/25328.4.1DMA的工作原理DMA控制器初始化設(shè)置DMA傳送過(guò)程DMA請(qǐng)求DMA響應(yīng)DMA傳送DMA結(jié)束2025/2/25338.4.1DMA的工作原理1.周期挪用方式

周期挪用方式下DMA控制器一次只傳送一字節(jié),傳送完畢就釋放總線,讓CPU再接管總線,即由DMA控制器和CPU輪流掌管總線控制權(quán),直到一批數(shù)據(jù)傳送完畢。2.交替訪問(wèn)方式如果CPU的工作周期比主存儲(chǔ)器長(zhǎng)得多,就可采用交替訪問(wèn)的方式。此時(shí)CPU與DMA各有自己的主存地址寄存器、數(shù)據(jù)緩沖器和讀/寫(xiě)信號(hào)控制器,因此DMA傳送對(duì)CPU的工作沒(méi)有任何影響,是最高效的方式。3.

CPU停機(jī)方式當(dāng)DMA控制器迫使CPU讓出總線控制權(quán),直到完成傳送數(shù)據(jù)后,CPU再恢復(fù)對(duì)系統(tǒng)總線的控制,繼續(xù)原來(lái)的操作。DMA控制總線的方式2025/2/25348.4.2DMA控制器8237A

利用DMA方式傳送數(shù)據(jù)時(shí),數(shù)據(jù)的傳輸過(guò)程完全由DMA控制電路控制,故又有DMA控制器之稱(chēng),DMA控制器應(yīng)具有如下幾個(gè)功能:向CPU申請(qǐng)DMA傳送在CPU允許DMA工作時(shí),處理總線控制權(quán)的轉(zhuǎn)交,避免因進(jìn)入DMA工作而影響CPU正?;顒?dòng)或引起總線競(jìng)爭(zhēng)在DMA期間管理系統(tǒng)總線控制數(shù)據(jù)傳送確定數(shù)據(jù)傳送的起始地址和數(shù)據(jù)長(zhǎng)度,修正數(shù)據(jù)傳送過(guò)程中的數(shù)據(jù)地址和數(shù)據(jù)長(zhǎng)度在數(shù)據(jù)塊傳送結(jié)束時(shí),給出DMA操作完成的信號(hào)2025/2/25358.4.2DMA控制器8237A

2025/2/25368.4.2DMA控制器8237A

內(nèi)部寄存器CAR當(dāng)前地址寄存器(CurrentAddressRegister)

CWCR當(dāng)前字計(jì)數(shù)寄存器(CurrentWordCountRegister)BA和BWC基本地址寄存器(BA)和基本字計(jì)數(shù)寄存器(BWC)CR命令寄存器(CommandRegister)CAR用于存放DMA傳輸時(shí)的16位存儲(chǔ)器地址。每通道都有用于此功能的單獨(dú)的當(dāng)前地址寄存器。DMA操作時(shí)每傳輸一字節(jié)數(shù)據(jù),CAR可能遞增或遞減,這取決于管理程序是怎樣編制的。

當(dāng)前字計(jì)數(shù)寄存器(Currentwordcountregister)為通道編制DMA操作時(shí)可以傳輸?shù)淖止?jié)數(shù)(最大達(dá)到64KB)。存入該計(jì)數(shù)器的值比需要傳輸?shù)淖止?jié)少1。例如,如果CWCR中存放的是10,那么DMA操作要傳輸11個(gè)字節(jié)的數(shù)據(jù)。基本地址寄存器(BA)和基本字計(jì)數(shù)寄存器(BWC)用于通道選擇了自動(dòng)預(yù)置方式的情況下。此時(shí)這些寄存器用于DMA操作完成后對(duì)CAR和CWCR重裝。這樣就可以達(dá)到傳輸同樣的內(nèi)存數(shù)據(jù)時(shí)有相同的計(jì)數(shù)和地址。

命令寄存器(Commandregister)編程8237A

DMA控制器的操作。2025/2/25378.4.2DMA控制器8237A

地址寄存器和字計(jì)數(shù)寄存器編程:對(duì)8237A進(jìn)行編程需要4步用清除F/L命令清除F/L觸發(fā)器禁止通道請(qǐng)求將地址最低有效位(LSB)和最高有效位(MSB)裝入地址寄存器將字計(jì)數(shù)的LSB和MSB裝入字計(jì)數(shù)寄存器2025/2/25388.5常見(jiàn)的標(biāo)準(zhǔn)輸入/輸出接口

如果一個(gè)計(jì)算機(jī)只是一個(gè)獨(dú)立的系統(tǒng),計(jì)算機(jī)的作用將不會(huì)有多大,當(dāng)一些標(biāo)準(zhǔn)的接口協(xié)議提供出來(lái)以后。通過(guò)符合接口協(xié)議的硬件和軟件將計(jì)算機(jī)與計(jì)算機(jī),計(jì)算機(jī)與外圍設(shè)備之間連接起來(lái)。計(jì)算機(jī)系統(tǒng)最常見(jiàn)的接口是打印機(jī)并行口、RS-232串行口和USB接口等。2025/2/25398.5.1接口的分類(lèi)1.按數(shù)據(jù)傳送的方式分為并行接口和串行接口并行接口與系統(tǒng)總線之間、接口與外設(shè)之間都以并行總線方式傳送信息,即每次傳送一個(gè)字節(jié)或一個(gè)字的全部代碼。串行接口與外設(shè)之間采用串行方式傳送數(shù)據(jù),即每個(gè)字節(jié)或字是逐位依次傳送的,而接口與系統(tǒng)總線之間總是以并行方式傳送數(shù)據(jù)。

2.按接口通用性分為通用接口和專(zhuān)用接口通用接口不是針對(duì)某種用途或某種I/O設(shè)備而設(shè)計(jì)的,它以服務(wù)于多種用途和多種設(shè)備為目標(biāo),可供多種外設(shè)使用。專(zhuān)用接口是為某種用途或某類(lèi)外設(shè)而專(zhuān)門(mén)設(shè)計(jì)的接口電路。3.按功能選擇的靈活性分為可編程接口和不可編程接口可編程接口可以用編程方法設(shè)定或選擇接口的工作方式、功能和工作狀態(tài),以適應(yīng)各種外設(shè)的不同要求。因此,通過(guò)接口可連接多種不同的外設(shè)而不必增加特殊的附加電路,使用最為普遍。不可編程接口不能由程序來(lái)改變其功能,但可通過(guò)硬連線邏輯來(lái)實(shí)現(xiàn)不同的功能。4.按接口硬件復(fù)雜程度分為接口芯片和接口卡接口芯片大多是可編程的大規(guī)模集成電路,可以通過(guò)CPU輸出不同的命令和參數(shù),靈活地控制相連外設(shè)進(jìn)行相應(yīng)操作。接口卡是由若干集成電路按一定的邏輯結(jié)構(gòu)組裝成的一個(gè)部件,可以直接集成在系統(tǒng)板上,或制成一個(gè)插卡插在系統(tǒng)總線槽上。2025/2/25408.5.2打印機(jī)并行口

打印機(jī)接口是從“Centronic”接口演變來(lái)的,最大接線距離最好不超過(guò)5米,以前的標(biāo)準(zhǔn)Centronic并口協(xié)議是單向的數(shù)據(jù)傳送,現(xiàn)在的ECP(EPP)協(xié)議能接受雙向的數(shù)據(jù)傳送。打印機(jī)并行口的標(biāo)準(zhǔn):1:數(shù)據(jù)腳(Data)和接地腳信號(hào)(Groundsignal)在傳送數(shù)據(jù)時(shí),其接收端必須有對(duì)地參考點(diǎn),以判斷信號(hào)的值。2025/2/25418.5.2打印機(jī)并行口打印機(jī)并行口的標(biāo)準(zhǔn):2:使能信號(hào)(Strobe)與確認(rèn)信號(hào)(Acknowledgesignal)當(dāng)數(shù)據(jù)從個(gè)人微機(jī)不斷地送到打印機(jī),數(shù)據(jù)位在不斷改變,而且系統(tǒng)無(wú)法保證某一瞬間的數(shù)據(jù)值可以正確地被打印機(jī)接收。3:忙信號(hào)(Busysignal)和錯(cuò)誤信號(hào)(Faultsignal)

都是對(duì)打印機(jī)不正確的狀態(tài)作出反應(yīng),只是忙信號(hào)暫時(shí)停止數(shù)據(jù)從計(jì)算機(jī)流向打印機(jī),而錯(cuò)誤信號(hào)卻可以造成打印機(jī)停機(jī)。4:選用信號(hào)(Selectsignal)

選用信號(hào)表示打印機(jī)正被計(jì)算機(jī)選用,處于聯(lián)機(jī)狀態(tài)(ONLINE),準(zhǔn)備接受打印數(shù)據(jù)。5:無(wú)紙信號(hào)(PaperEmptysignal)

當(dāng)打印機(jī)用光打印紙時(shí),除了置忙信號(hào)外,打印機(jī)可通過(guò)此信號(hào)通知打印紙用完。6:初始化信號(hào)(Initializesignal)當(dāng)這條信號(hào)線上的信號(hào)由高電平變?yōu)榈碗娖綍r(shí),打印機(jī)會(huì)自行初始化打印機(jī)。7:聯(lián)機(jī)命令(SelectInputsignal)部分打印機(jī)的設(shè)計(jì)可通過(guò)計(jì)算機(jī)來(lái)切換聯(lián)機(jī)或脫機(jī),確定聯(lián)機(jī)與否的信號(hào)線就是輸入選擇線。8:自動(dòng)換行信號(hào)(AutoFeedXTsignal)打印到一行結(jié)尾時(shí)需要一個(gè)信號(hào)指定是否要從下一行行頭開(kāi)始打印,而這個(gè)自動(dòng)卷紙信號(hào),是計(jì)算機(jī)決定是否要卷紙并從下一行行頭開(kāi)始打印。2025/2/25428.5.3RS-232串行口串口是計(jì)算機(jī)中非常重要的接口,如鼠標(biāo)、連接互聯(lián)網(wǎng)的調(diào)制解調(diào)器等都是通過(guò)串口來(lái)實(shí)現(xiàn)連接的,串行接口的優(yōu)點(diǎn)是:接線量少,線路簡(jiǎn)單,可以避免干擾問(wèn)題。RS-232的作用RS-232線上的數(shù)據(jù)信號(hào)是以約±12V的EIA電壓傳送的。而一般的微計(jì)算機(jī)的工作電壓是+5V,通過(guò)RS-232可以完成EIA電壓與TTL電壓的轉(zhuǎn)換。計(jì)算機(jī)系統(tǒng)中,以“+5V”代表邏輯1,而接地電壓代表邏輯0。2025/2/25438.5.3RS-232串行口為了傳送的正確與迅速,一般采用通訊協(xié)議去制訂數(shù)據(jù)的時(shí)序、格式和操作方法,最常見(jiàn)的是同步協(xié)議和異步協(xié)議兩種。2025/2/25448.5.3RS-232串行口要將字符00110101B傳送到某一個(gè)接收器時(shí),異步通信前,數(shù)據(jù)線始終保持在“0”狀態(tài)(稱(chēng)為空閑狀態(tài)),而為了使接收器知道數(shù)據(jù)開(kāi)始傳送,在數(shù)據(jù)開(kāi)始傳送時(shí)先發(fā)送一個(gè)與空閑狀態(tài)相反的狀態(tài)“1”當(dāng)作起始位,接收器就能通過(guò)檢測(cè)狀態(tài)的變化知道數(shù)據(jù)開(kāi)始傳送。傳送過(guò)程是先起始位,傳送字符的數(shù)據(jù)位,從LSB(最低有效位)開(kāi)始,D0,D1,…,D7,接著傳送一個(gè)校驗(yàn)位,之后是停止位。異步數(shù)據(jù)傳送實(shí)例:2025/2/25458.5.3RS-232串行口一個(gè)數(shù)據(jù)發(fā)送器的傳送速率是指每秒鐘在一條線上傳送的位數(shù),單位為b/s(bitpersecond)。設(shè)傳送速率是2.4Kb/s時(shí),一秒鐘可傳送的數(shù)據(jù)字符數(shù)是2.4Kb/12b=200個(gè)字符。每一位傳送時(shí)間的倒數(shù)叫做波特率(Baudrate),波特率的設(shè)置一般有300,600,1200,4800,9600,14400,28800等,表示如下:波特率:波特率=傳送一位所用的秒數(shù)12025/2/25468.5.3RS-232串行口異步式傳送協(xié)議把每一個(gè)字符當(dāng)作獨(dú)立的信息來(lái)傳送,并按照一固定且預(yù)定的時(shí)序傳送,字符與字符之間的時(shí)序卻是任意的。一個(gè)完整的字符傳送,包括起始位、字符的數(shù)據(jù)位、校驗(yàn)位和停止位。同步協(xié)議是將許多的字符積聚成一個(gè)字符塊,再加上適當(dāng)?shù)目刂茢?shù)據(jù)位和錯(cuò)誤檢測(cè),采用統(tǒng)一的時(shí)鐘脈沖傳送出去。2025/2/25478.5.4

USB接口多媒體技術(shù)的廣泛應(yīng)用,使計(jì)算機(jī)連接的外設(shè)越來(lái)越多,如打印機(jī)、鍵盤(pán)、掃描儀、數(shù)碼攝像機(jī)、音頻系統(tǒng)、數(shù)碼相機(jī)等。如果仍然采用傳統(tǒng)的一個(gè)設(shè)備接一個(gè)接口的連接方式,使用不方便。Intel,Compaq,Digital,IBM,Microsoft,NEC,Northerntelecom等公司共同推出了新一代接口標(biāo)準(zhǔn)USB。特點(diǎn):為所有的USB外設(shè)提供了單一的、易于操作的標(biāo)準(zhǔn)連接方式支持PnP支持熱插拔提供

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論