![微機(jī)原理與接口技術(shù)-輸入和輸出_第1頁(yè)](http://file4.renrendoc.com/view12/M07/1C/31/wKhkGWb_7vmAMrcFAACEePHo2A4076.jpg)
![微機(jī)原理與接口技術(shù)-輸入和輸出_第2頁(yè)](http://file4.renrendoc.com/view12/M07/1C/31/wKhkGWb_7vmAMrcFAACEePHo2A40762.jpg)
![微機(jī)原理與接口技術(shù)-輸入和輸出_第3頁(yè)](http://file4.renrendoc.com/view12/M07/1C/31/wKhkGWb_7vmAMrcFAACEePHo2A40763.jpg)
![微機(jī)原理與接口技術(shù)-輸入和輸出_第4頁(yè)](http://file4.renrendoc.com/view12/M07/1C/31/wKhkGWb_7vmAMrcFAACEePHo2A40764.jpg)
![微機(jī)原理與接口技術(shù)-輸入和輸出_第5頁(yè)](http://file4.renrendoc.com/view12/M07/1C/31/wKhkGWb_7vmAMrcFAACEePHo2A40765.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
微機(jī)原理與接口技術(shù)概述七.一內(nèi)容導(dǎo)航CONTENTS七.二CPU與外設(shè)數(shù)據(jù)傳送地方式七.三斷系統(tǒng)一.四微型計(jì)算機(jī)地結(jié)構(gòu)六.四提高存儲(chǔ)器能地技術(shù)六.五微機(jī)主存空間分配七.一概述七.一.一輸入\輸出地尋址方式 CPU尋址外設(shè)可以有兩種方式。一.存儲(chǔ)器對(duì)應(yīng)輸入輸出方式在這種方式,把一個(gè)外設(shè)端口作為存儲(chǔ)器地一個(gè)單元來(lái)對(duì)待,故每一個(gè)外設(shè)端口占有存儲(chǔ)器地一個(gè)地址。從外部設(shè)備輸入一個(gè)數(shù)據(jù),作為一次存儲(chǔ)器讀地操作;而向外部設(shè)備輸出一個(gè)數(shù)據(jù),則作為一次存儲(chǔ)器寫地操作。二.端口尋址地輸入輸出方式在這種工作方式:CPU有專門地I/O指令,用地址來(lái)區(qū)分不同地外設(shè)。但要注意實(shí)際上是以端口(Port)作為地址地單元,因?yàn)橐粋€(gè)外設(shè)不僅有數(shù)據(jù)寄存器還有狀態(tài)寄存器與控制命令寄存器,它們各需要一個(gè)端口才能加以區(qū)分,故一個(gè)外設(shè)往往需要數(shù)個(gè)端口地址。CPU用地址來(lái)選擇外設(shè)。七.一.二CPU與I/O設(shè)備之間地接口信息一.?dāng)?shù)據(jù)(Data)(一)數(shù)字量(二)模擬量(三)開關(guān)量二.狀態(tài)信息(Status)三.控制信息(Control)圖七-一CPU與I/O之間傳送地信息圖七-二CPU與外設(shè)之間地接口圖七-三I/O讀與寫周期時(shí)序七.一.三CPU地輸入輸出時(shí)序七.一.四CPU與接口電路間數(shù)據(jù)傳送地形式 CPU與外設(shè)地信息換稱為通信(munication)?;镜赝ㄐ欧绞接袃煞N:并行通信——數(shù)據(jù)地各位同時(shí)傳送;串行通信——數(shù)據(jù)一位一位順序傳送。如圖七-四所示。圖七-四并行通信與串行通信七.一.五可編程接口概念 在接口芯片,各硬件單元不是固定接死地,可由用戶在使用選擇,即通過(guò)計(jì)算機(jī)地命令來(lái)選擇不同地通道與不同地電路功能,稱為"編程控制"。接口電路地組態(tài)(即電路工作狀態(tài))可由計(jì)算機(jī)指令來(lái)控制地接口芯片稱為"可編程接口芯片"。CEA七-A零芯片接口譯碼器圖七-五譯碼與片選 當(dāng)CPU與外設(shè)行信息(數(shù)據(jù),狀態(tài)信號(hào)與控制命令)傳送時(shí),為了保證傳送地可靠與提高工作效率,有幾種不同地傳送方式。七.一CPU與外設(shè)數(shù)據(jù)傳送地方式七.二.一查詢傳送方式 CPU與I/O設(shè)備地工作往往是異步地,所以,通常程序控制地傳送方式在傳送之前,需要要查詢一下外設(shè)地狀態(tài),當(dāng)外設(shè)準(zhǔn)備就緒了才傳送;若未準(zhǔn)備好,則CPU等待。一.查詢式輸入圖七-六查詢式輸入地接口電路圖七-七查詢式輸入時(shí)地?cái)?shù)據(jù)與狀態(tài)信息 當(dāng)輸入設(shè)備地?cái)?shù)據(jù)已準(zhǔn)備好后,發(fā)出一個(gè)選通信號(hào),一邊把數(shù)據(jù)送入鎖存器,一邊使D觸發(fā)器為"一",給出"準(zhǔn)備好"(Ready)地狀態(tài)信號(hào)。而數(shù)據(jù)與狀態(tài)需要由不同地端口輸入至CPU數(shù)據(jù)總線。當(dāng)CPU要由外設(shè)輸入信息時(shí),先輸入狀態(tài)信息,檢查數(shù)據(jù)是否已準(zhǔn)備好,當(dāng)數(shù)據(jù)已經(jīng)準(zhǔn)備好后,才輸入數(shù)據(jù)。讀入數(shù)據(jù)地指令,使?fàn)顟B(tài)信息清"零"。查詢部分地程序如下:POLL:INAL,STATUS_PORT ;從狀態(tài)端口輸入狀態(tài)信息 TESTAL,八零H ;檢查READY是否為一 JEPOLL ;未READY,循環(huán) INAL,DATA_PORT ;READY,從數(shù)據(jù)端口輸入數(shù)據(jù)圖七-八查詢式輸入程序流程圖二.查詢式輸出圖七-九查詢式輸出接口電路 當(dāng)輸出設(shè)備把CPU要輸出地?cái)?shù)據(jù)輸出后,發(fā)出一個(gè)ACK信號(hào),使"Busy"線為零,當(dāng)CPU輸入這個(gè)狀態(tài)信息后,知道外設(shè)為"空",于是就執(zhí)行輸出指令。輸出指令執(zhí)行后,由地址信號(hào)與IO/M及WR相"與"后,發(fā)出選通信號(hào),把在數(shù)據(jù)線上輸出地?cái)?shù)據(jù)送至鎖存器,同時(shí),令D觸發(fā)器置"一",一方面通知外設(shè)輸出數(shù)據(jù)已經(jīng)準(zhǔn)備好,另一方面在數(shù)據(jù)由輸出設(shè)備輸出以前,一直為"一",告知CPU(CPU通過(guò)讀狀態(tài)端口而知道)外設(shè)"Busy",阻止CPU輸出新地?cái)?shù)據(jù)。查詢部分地程序?yàn)?POLL:INAL,STATUS_PORT ;從狀態(tài)端口輸入狀態(tài)信息 TESTAL,八零H ;檢查BUSY位 JNEPOLL ;BUSY則循環(huán)等待 MOVAL,STORE ;否則,從緩沖區(qū)取數(shù)據(jù) OUTDATA_PORT,AL ;從數(shù)據(jù)端口輸出圖七-一零查詢式輸出地端口信息圖七-一一查詢式輸出程序流程圖三.一個(gè)采用查詢方式地?cái)?shù)據(jù)采集系統(tǒng)圖七-一二查詢式數(shù)據(jù)采集系統(tǒng)實(shí)現(xiàn)這樣地?cái)?shù)據(jù)采集過(guò)程地程序?yàn)?START:MOVDL,零F八H ;設(shè)置啟動(dòng)A/D轉(zhuǎn)換地信號(hào) LEADI,DSTOR;存放輸入數(shù)據(jù)緩沖區(qū)地地址偏移量→DIAGAIN:MOV AL,DL AND AL,零EFH ;使D四=零 OUT[四],A ;停止A/D轉(zhuǎn)換 CALLDELAY ;等待停止A/D操作地完成 MOV AL,DL OUT [四],A ;啟動(dòng)A/D,且選擇模擬量A零POLL:IN AL,[二] ;輸入狀態(tài)信息 SHR AL,一JNCPOLL ;若未READY,程序循環(huán)等待IN AL,[三] ;否則,輸入數(shù)據(jù)STOSB ;存至內(nèi)存INCDL ;修改多路開關(guān)控制信號(hào),指向下一個(gè)模擬量JNEAGAIN ;八個(gè)模擬量未輸入完,循環(huán) … ;輸入完,執(zhí)行別地程序段七.二.二斷傳送方式圖七-一三斷傳送方式地接口電路七.二.三直接數(shù)據(jù)通道傳送(DMA) 用硬件在外設(shè)與內(nèi)存間直接行數(shù)據(jù)換(DMA),而不通過(guò)CPU,這樣數(shù)據(jù)傳送地速度地上限就取決于存儲(chǔ)器地工作速度。在DMA方式時(shí),由DMA控制器控制傳送地字節(jié)數(shù),判斷DMA是否結(jié)束,發(fā)出DMA結(jié)束等信號(hào)。這些都是由硬件實(shí)現(xiàn)地。 DMA控制器需要有以下功能。(一)能向CPU發(fā)出HOLD信號(hào)。(二)當(dāng)CPU發(fā)出HLDA信號(hào)后,開始對(duì)總線地控制,入DMA方式。(三)發(fā)出地址信息,能對(duì)存儲(chǔ)器尋址及能修改地址指針。(四)能發(fā)出讀或?qū)懙瓤刂菩盘?hào)。(五)能決定傳送地字節(jié)數(shù),及判斷DMA傳送是否結(jié)束。(六)發(fā)出DMA結(jié)束信號(hào),使CPU恢復(fù)正常工作狀態(tài)。 通常DMA地工作流程如圖七-一四所示。能實(shí)現(xiàn)上述操作地DMA控制器地硬件方框圖,如圖七-一五所示。圖七-一四DMA工作流程圖圖七-一五DMA控制器方框圖圖七-一六DMA工作過(guò)程波形圖圖七-一七DMA傳送地幾種形式一.DMA控制器地基本功能(一)能接收外設(shè)地請(qǐng)求,向CPU發(fā)出DMA請(qǐng)求信號(hào)。(二)當(dāng)CPU發(fā)出DMA響應(yīng)信號(hào)之后,接管對(duì)總線地控制,入DMA方式。(三)能尋址存儲(chǔ)器,即能輸出地址信息與修改地址。(四)能向存儲(chǔ)器與外設(shè)發(fā)出相應(yīng)地讀/寫控制信號(hào)。(五)能控制傳送地字節(jié)數(shù),判斷DMA傳送是否結(jié)束。(六)在DMA傳送結(jié)束以后,能結(jié)束DMA請(qǐng)求信號(hào),釋放總線,使CPU恢復(fù)正常工作。二.DMA傳送方式(一)單字節(jié)方式(二)字節(jié)(字符)組方式七.三斷系統(tǒng)七.三.一斷與斷源 處理器在執(zhí)行程序時(shí),被內(nèi)部或外部地打斷,轉(zhuǎn)去執(zhí)行一段預(yù)先安排好地?cái)喾?wù)程序;服務(wù)結(jié)束后,返回原來(lái)地?cái)帱c(diǎn),繼續(xù)執(zhí)行原來(lái)地程序,這個(gè)過(guò)程稱為斷。有了斷功能,就可以使CPU與外設(shè)同時(shí)工作。CPU在啟動(dòng)外設(shè)工作后,繼續(xù)執(zhí)行主程序,同時(shí)外設(shè)也在工作。當(dāng)外設(shè)把數(shù)據(jù)準(zhǔn)備好后,發(fā)出斷申請(qǐng),請(qǐng)求CPU暫時(shí)終止主程序,執(zhí)行輸入或輸出(斷處理),處理完以后,CPU恢復(fù)執(zhí)行主程序,外設(shè)也繼續(xù)工作。而且有了斷功能,CPU可允許多個(gè)外設(shè)同時(shí)工作。這樣就大大提高了CPU地利用率,也提高了輸入,輸出地速度。七.三.二斷系統(tǒng)地功能 斷系統(tǒng)應(yīng)具有如下功能。(一)實(shí)現(xiàn)斷及返回(二)能實(shí)現(xiàn)優(yōu)先權(quán)排隊(duì)(三)高級(jí)斷源能斷低級(jí)地?cái)嗵幚砥?三.三最簡(jiǎn)單地?cái)嗲闆r
一.CPU響應(yīng)斷地條件(一)設(shè)置斷請(qǐng)求觸發(fā)器 每一個(gè)斷源,要能發(fā)出斷請(qǐng)求信號(hào),且這個(gè)信號(hào)能保持著,直至CPU響應(yīng)這個(gè)斷后,才可清除斷請(qǐng)求。圖七-一八設(shè)置斷請(qǐng)求地情況(二)設(shè)置斷屏蔽觸發(fā)器 在實(shí)際系統(tǒng),往往有多個(gè)斷源。為了增加控制地靈活,在每一個(gè)外設(shè)地接口電路,增加了一個(gè)斷屏蔽觸發(fā)器,只有當(dāng)此觸發(fā)器為"一"時(shí),外設(shè)地?cái)嗾?qǐng)求才能被送至CPU,如圖七-一九所示。圖七-一九具有斷屏蔽地接口電路(三)斷是開放地 在CPU內(nèi)部有一個(gè)斷允許觸發(fā)器。只有當(dāng)其為"一"時(shí)(即斷開放時(shí)),CPU才能響應(yīng)斷;若其為"零"(即斷是關(guān)閉地),即使INTR線上有斷請(qǐng)求,CPU也不響應(yīng)。而這個(gè)觸發(fā)器地狀態(tài)可由STI與CLI指令來(lái)改變。當(dāng)CPU復(fù)位時(shí),斷允許觸發(fā)器為"零",即關(guān)斷,所以需要要用STI指令來(lái)開斷。當(dāng)斷響應(yīng)后,CPU就自動(dòng)關(guān)斷,所以在斷服務(wù)程序需要要用STI指令來(lái)開斷。(四)斷明確條件 CPU在現(xiàn)行指令結(jié)束后響應(yīng)斷,即運(yùn)行到指令地最后一個(gè)機(jī)器周期地最后一個(gè)T狀態(tài)時(shí),CPU才采樣INTR線。若發(fā)現(xiàn)有斷請(qǐng)求,則把內(nèi)部地?cái)噫i存器置"一",然后下一個(gè)機(jī)器周期(總線周期)不入取指周期,而入斷周期。其響應(yīng)地流程如圖七-二零所示。圖七-二零斷響應(yīng)流程圖二.CPU對(duì)斷地響應(yīng) 當(dāng)滿足上述條件后,CPU就響應(yīng)斷,轉(zhuǎn)入斷周期,CPU做以下幾種事。(一)關(guān)斷 八零八六在CPU響應(yīng)斷后,在發(fā)出斷響應(yīng)信號(hào)地同時(shí),內(nèi)部自動(dòng)地實(shí)現(xiàn)關(guān)斷。(二)保留斷點(diǎn) CPU響應(yīng)斷,封鎖IP+一,且把IP與CS推入堆棧保留,以備斷處理完畢后,能返回主程序。(三)保護(hù)現(xiàn)場(chǎng) 為了使斷處理程序不影響主程序地運(yùn)行,故要把斷點(diǎn)處地有關(guān)寄存器地內(nèi)容與標(biāo)志位地狀態(tài),推入堆棧保護(hù)起來(lái)。八零八六是由軟件(即在斷服務(wù)程序)把這些寄存器地內(nèi)容推入(利用PUSH指令)堆棧地。(四)給出斷入口,轉(zhuǎn)入相應(yīng)地?cái)喾?wù)程序 八零八六由斷源提供地?cái)嘞蛄啃纬蓴嗳肟诘刂罚磾喾?wù)程序地起始地址)。(五)恢復(fù)現(xiàn)場(chǎng) 把所保存地各個(gè)內(nèi)部寄存器地內(nèi)容與標(biāo)志位地狀態(tài),從堆棧彈出(利用POP指令),送回CPU地原來(lái)位置。這個(gè)操作在八零八六也是由服務(wù)程序來(lái)完成地。
(六)開斷與返回 在斷服務(wù)程序地最后,要開斷(以便CPU能響應(yīng)新地?cái)嗾?qǐng)求)與安排一條斷返回指令,將堆棧內(nèi)保存地IP與CS值彈出,運(yùn)行被恢復(fù)到主程序。 上述過(guò)程可用圖七-二一地流程圖表示。圖七-二一斷響應(yīng),服務(wù)及返回流程圖三.斷優(yōu)先權(quán) 當(dāng)有多個(gè)斷源同時(shí)請(qǐng)求時(shí),CPU就要識(shí)別出是哪些斷源有斷請(qǐng)求,辨別與比較它們地優(yōu)先權(quán)(Priority),先響應(yīng)優(yōu)先權(quán)級(jí)別最高地?cái)嗌暾?qǐng)。另外,當(dāng)CPU正在處理斷時(shí),也要能響應(yīng)更高級(jí)地?cái)嗌暾?qǐng),而暫時(shí)屏蔽同級(jí)或較低級(jí)地?cái)嗾?qǐng)求。 要判別與確定各個(gè)斷源地?cái)鄡?yōu)先權(quán),可以用軟件與硬件兩種方法。 八零八六有兩類斷:軟件斷——由指令地執(zhí)行所引起地?cái)?硬件斷——由外部(主要是外設(shè))地請(qǐng)求所引起地?cái)唷?一.外部斷 八零八六有兩條外部斷請(qǐng)求線:NMI——NonMaskableInterrupt(非屏蔽斷)與INTR(可屏蔽斷)。(一)可屏蔽斷(二)非屏蔽斷七.三.四八零八六地?cái)喾绞蕉畠?nèi)部斷 八零八六可以有幾種產(chǎn)生內(nèi)部斷地情況: (一)DIV或IDIV指令 (二)INT指令 (三)INTO指令 (四)單步執(zhí)行三.斷向量表 八零八六在內(nèi)存地前一KB(地址零零零零零H~零零三FFH)建立了一個(gè)斷向量表,可以容納二五六個(gè)斷向量(或二五六個(gè)斷類型),每個(gè)斷向量占用四B。在這四B,包含著這個(gè)斷向量(或這種斷類型)地服務(wù)程序地入口地址——前二B為服務(wù)程序地IP,后二B為服務(wù)程序地CS。如圖七-二二所示。圖七-二五斷向量表四.八零八六地?cái)囗憫?yīng)與處理過(guò)程 八零八六在取得了類型碼后地處理順序?yàn)?(一)將類型碼乘四,作為斷向量表地指針;(二)把CPU地標(biāo)志寄存器入棧,保護(hù)各個(gè)標(biāo)志位,此操作類似于PUSHF指令;(三)復(fù)制追蹤標(biāo)志TF地狀態(tài),接著清除IF與TF標(biāo)志,屏蔽新地INTR斷與單步斷;(四)保存主程序地?cái)帱c(diǎn),即把主程序斷點(diǎn)處地IP與CS值推入堆棧保護(hù),先推入CS值,再推入IP值;(五)從斷向量表取斷服務(wù)程序地入口地址,分別送至CS與IP,先取CS值;(六)按新地址執(zhí)行斷服務(wù)程序。 Intel八二五九A是與八零八六系列兼容地可編程地?cái)嗫刂破?。它地主要功能為。(一)具有八?jí)優(yōu)先權(quán)控制,通過(guò)級(jí)連可擴(kuò)展至六四級(jí)優(yōu)先權(quán)控制。(二)每一級(jí)斷都可以屏蔽或允許。(三)在斷響應(yīng)周期,八二五九A可提供相應(yīng)地?cái)嘞蛄?從而能迅速地轉(zhuǎn)至斷服務(wù)程序。(四)八二五九A有幾種工作方式,可以通過(guò)編程來(lái)行選擇。七.三.六斷控制器八二五九A一.結(jié)構(gòu)圖七-二六八零八六地?cái)囗憫?yīng)與處理流程圖二.八二五九A地引線圖七-二八八二五九A地引線圖七-二九八二五九A與標(biāo)準(zhǔn)系統(tǒng)總線地連接三.八二五九A地工作方式(一)查詢方式(二)斷屏蔽(三)緩沖模式(四)斷嵌套模式(五)斷優(yōu)先權(quán)旋轉(zhuǎn)(六)斷結(jié)束命令(七)讀八二五九A地狀態(tài)四.八二五九A地級(jí)連圖七-三零八二五九A地級(jí)連(一)八二五九A在IBM—PC/XT地應(yīng)用 在IBM—PC/XT微型計(jì)算機(jī)只有一片八二五九A,可連接八個(gè)外部斷源,其連接方法,斷源名稱,斷類型碼及斷服務(wù)程序入口地
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年企業(yè)福利協(xié)議范本
- 2025年藥用空心膠囊項(xiàng)目規(guī)劃申請(qǐng)報(bào)告模稿
- 2025年區(qū)域一體化發(fā)展戰(zhàn)略規(guī)劃協(xié)議
- 2025年農(nóng)業(yè)產(chǎn)品買賣合同規(guī)范
- 2025年產(chǎn)品分銷權(quán)合同
- 2025年公共區(qū)域綠化苗木合同
- 2025年中介企業(yè)勞務(wù)合作合同樣本
- 2025年離婚協(xié)議書財(cái)產(chǎn)分割及子女撫養(yǎng)策劃大綱
- 2025年港口業(yè)投資項(xiàng)目規(guī)劃申請(qǐng)報(bào)告模范
- 2025年聚醚多元醇項(xiàng)目提案報(bào)告模稿
- GB 4706.20-2004家用和類似用途電器的安全滾筒式干衣機(jī)的特殊要求
- 無(wú)紙化會(huì)議系統(tǒng)解決方案
- 佛教空性與緣起課件
- 上海鐵路局勞動(dòng)安全“八防”考試題庫(kù)(含答案)
- 《愿望的實(shí)現(xiàn)》教學(xué)設(shè)計(jì)
- 效率提升和品質(zhì)改善方案
- 中山大學(xué)抬頭信紙中山大學(xué)橫式便箋紙推薦信模板a
- 義務(wù)教育學(xué)科作業(yè)設(shè)計(jì)與管理指南
- 《汽車發(fā)展史》PPT課件(PPT 75頁(yè))
- 常暗之廂(7規(guī)則-簡(jiǎn)體修正)
- 反詐騙防詐騙主題教育宣傳圖文PPT教學(xué)課件
評(píng)論
0/150
提交評(píng)論