微機(jī)原理與接口 C0703_第1頁(yè)
微機(jī)原理與接口 C0703_第2頁(yè)
微機(jī)原理與接口 C0703_第3頁(yè)
微機(jī)原理與接口 C0703_第4頁(yè)
微機(jī)原理與接口 C0703_第5頁(yè)
已閱讀5頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、微機(jī)原理與接口技術(shù)n某 以 8 0 8 8 為 C P U 的 微 型 計(jì) 算 機(jī) 內(nèi) 存 R A M 區(qū) 為00000H3FFFFH,若分別采用6264(4K8)、62256(32K8)、2164(64K1)或21256(32K4)RAM芯片配置,各需要多少片芯片?n解:尋址范圍:0000 0000 0000 0000 0000 0011 1111 1111 1111 1111存儲(chǔ)單元數(shù):3FFFFH-00000H+1=256K得RAM共218個(gè)存儲(chǔ)單元(每單元8bit)182152228.828N MCnm1861121128.228N MCnm基本輸入/輸出方法n無(wú)條件傳送n查詢(xún)式傳送n

2、中斷式傳送n直接存儲(chǔ)器存取(DMA)無(wú)條件傳送n任意時(shí)刻無(wú)條件輸入/輸出n要求外部設(shè)備總是處于準(zhǔn)備好狀態(tài)n優(yōu)點(diǎn):n軟件及接口硬件簡(jiǎn)單n缺點(diǎn):n只適用于簡(jiǎn)單外設(shè),適用范圍窄查詢(xún)工作方式nCPU通過(guò)程序不斷讀取并測(cè)試接口狀態(tài)n工作條件:n外設(shè)提供狀態(tài)信息n接口具備狀態(tài)端口多外設(shè)查詢(xún)流程中斷控制方式n外設(shè)主動(dòng)向CPU發(fā)出中斷請(qǐng)求nCPU執(zhí)行每條指令的末尾處,通過(guò)內(nèi)部硬件自動(dòng)檢查是否有外設(shè)發(fā)出中斷請(qǐng)求信號(hào)。簡(jiǎn)單I/O控制系統(tǒng)設(shè)計(jì)n例例1:外設(shè)狀態(tài)端口地址為03FBH,第5位為狀態(tài)標(biāo)志,該位為1示忙,為0示閑;外設(shè)數(shù)據(jù)端口地址為03F8H,寫(xiě)入數(shù)據(jù)會(huì)使?fàn)顟B(tài)標(biāo)志位置1,外設(shè)將數(shù)據(jù)讀走后又將該位置0。要求:

3、n畫(huà)出該控制系統(tǒng)電路圖n利用查詢(xún)工作方式,將DATA中100B數(shù)據(jù)輸出n例例2:假設(shè)I/O接口中的一個(gè)狀態(tài)端口地址為A910H,狀態(tài)端口D1=1表示外設(shè)空閑。該接口數(shù)據(jù)端口地址為A911H,利用查詢(xún)方式完成輸出一數(shù)據(jù)至外設(shè)的程序段的程序段,待輸出數(shù)據(jù)在內(nèi)存的STORE單元中。n分析:n當(dāng)狀態(tài)端口D1=1時(shí),由內(nèi)存經(jīng)CPU,使用OUT指令輸出至外設(shè)數(shù)據(jù)端口。n端口地址不在00HFFH范圍內(nèi),所以需要用寄存器尋址的輸出指令。簡(jiǎn)單I/O控制系統(tǒng)設(shè)計(jì)n例例2:假設(shè)I/O接口中的一個(gè)狀態(tài)端口地址為A910H,狀態(tài)端口D1=1表示外設(shè)空閑。該接口數(shù)據(jù)端口地址為A911H,利用查詢(xún)方式完成輸出一數(shù)據(jù)至外設(shè)的

4、程序段的程序段,待輸出數(shù)據(jù)在內(nèi)存的STORE單元中。START: MOV DX, 0A910HWAITT: IN AL, DX TEST AL, 02H JZ WAITT MOV AL, STORE MOV DX, 0A911H OUT DX, AL HLT基本輸入/輸出方法n無(wú)條件傳送、查詢(xún)式傳送、中斷式傳送n直接存儲(chǔ)器存取(DMA)MOVOUTINMOVCPU掌握總線(xiàn)控制權(quán)CPU放棄總線(xiàn)控制權(quán):直接存儲(chǔ)器存取(DMA)DMA控制器nDMA(Direct Memory Access), 直接存儲(chǔ)器存取。常用于高速傳送大批量數(shù)據(jù)塊。nDMA傳送是由硬件代替軟件實(shí)現(xiàn)數(shù)據(jù)直接傳送的。實(shí)現(xiàn)這種傳送的

5、專(zhuān)門(mén)硬件電路稱(chēng)為DMA控制器(DMAC)。nDMAC和CPU都掛在系統(tǒng)總線(xiàn)上。總線(xiàn)上可控制其他部件的部件稱(chēng)為總線(xiàn)主控(Bus Master),被控部件稱(chēng)為從控(Slave)。進(jìn)入DMA方式時(shí),DMAC成為主控。nDMA操作前,應(yīng)先對(duì)DMAC編程,將要傳送的數(shù)據(jù)塊長(zhǎng)度、數(shù)據(jù)塊在存儲(chǔ)器中的起始地址、數(shù)據(jù)傳送方向等信息發(fā)送給DMAC。DMA控制方式DREQHRQDMA請(qǐng)求階段HOLD高高外設(shè)請(qǐng)求以外設(shè)請(qǐng)求以DMA方式服務(wù)方式服務(wù)DMA響應(yīng)和數(shù)據(jù)傳送階段HOLD每個(gè)總線(xiàn)周期結(jié)束每個(gè)總線(xiàn)周期結(jié)束傳送結(jié)束階段HOLD低低撤銷(xiāo)撤銷(xiāo)HLDADMA控制器Intel 8237AIntel 8237A 內(nèi)部結(jié)構(gòu)DM

6、A控制器Intel 8237AIntel 8237A 內(nèi)部結(jié)構(gòu)DMACDMAC向向CPUCPU發(fā)送的總線(xiàn)控制請(qǐng)求信發(fā)送的總線(xiàn)控制請(qǐng)求信號(hào)和號(hào)和CPUCPU發(fā)送給發(fā)送給DMACDMAC的應(yīng)答信號(hào)的應(yīng)答信號(hào)外部設(shè)備向四個(gè)通道的外部設(shè)備向四個(gè)通道的DMADMA方式方式數(shù)據(jù)傳輸?shù)恼?qǐng)求和應(yīng)答信號(hào)線(xiàn)數(shù)據(jù)傳輸?shù)恼?qǐng)求和應(yīng)答信號(hào)線(xiàn)DMA控制器Intel 8237AIntel 8237A 內(nèi)部結(jié)構(gòu)(1 1)CPUCPU控制,控制,CPUCPU尋址尋址82378237內(nèi)部寄存器內(nèi)部寄存器(2 2)DMADMA控制,低控制,低4 4位和高位和高4 4位地址線(xiàn)位地址線(xiàn)(1 1)CPUCPU向向82378237內(nèi)寄存器寫(xiě)

7、數(shù)據(jù)內(nèi)寄存器寫(xiě)數(shù)據(jù)(2 2)DMADMA傳輸時(shí),用于傳輸高傳輸時(shí),用于傳輸高8 8位地址,由位地址,由ADSTBADSTB信號(hào)將其鎖存信號(hào)將其鎖存入地址鎖存器入地址鎖存器DMA控制器Intel 8237AIntel 8237A 內(nèi)部結(jié)構(gòu)CPU讀取讀取8237A的內(nèi)部狀態(tài)寄存器信息;的內(nèi)部狀態(tài)寄存器信息;CPU向向8237A寫(xiě)命令及初始化參數(shù)。寫(xiě)命令及初始化參數(shù)。在在DMA方式數(shù)據(jù)傳輸中,方式數(shù)據(jù)傳輸中,控制從外設(shè)讀取數(shù)據(jù);控制從外設(shè)讀取數(shù)據(jù);控制將數(shù)據(jù)寫(xiě)入外設(shè)控制將數(shù)據(jù)寫(xiě)入外設(shè)DMA控制器Intel 8237AIntel 8237A 內(nèi)部結(jié)構(gòu)在在DMA方式數(shù)據(jù)傳輸中方式數(shù)據(jù)傳輸中控制從存儲(chǔ)器單

8、元讀數(shù)據(jù);控制從存儲(chǔ)器單元讀數(shù)據(jù);控制將數(shù)據(jù)寫(xiě)入存儲(chǔ)器單元??刂茖?shù)據(jù)寫(xiě)入存儲(chǔ)器單元。DMA控制器Intel 8237AIntel 8237A 內(nèi)部結(jié)構(gòu)片選信號(hào)。低有效時(shí),片選信號(hào)。低有效時(shí),CPU可對(duì)可對(duì)8237進(jìn)行進(jìn)行編程。編程。DMA控制器Intel 8237AIntel 8237A 內(nèi)部結(jié)構(gòu)過(guò)程結(jié)束信號(hào),雙向。過(guò)程結(jié)束信號(hào),雙向。DMA服務(wù)結(jié)束,服務(wù)結(jié)束,8237從從EOP端輸出一個(gè)低端輸出一個(gè)低電平,通知外設(shè)。電平,通知外設(shè)。若若8237收到有效收到有效EOP信號(hào),則終止正在執(zhí)信號(hào),則終止正在執(zhí)行的行的DMA傳送。傳送。8237A數(shù)據(jù)傳送方式1.單字節(jié)傳送單字節(jié)傳送n每傳送完一個(gè)字節(jié)

9、數(shù)據(jù),DMA控制器放棄總線(xiàn)控制權(quán)。傳送下一個(gè)字節(jié)時(shí),再重新申請(qǐng)使用總線(xiàn)。n傳送一個(gè)字節(jié)后,HRQ無(wú)效,總線(xiàn)控制權(quán)交還CPU至少一個(gè)總線(xiàn)周期,再檢查DREQ。8237A數(shù)據(jù)傳送方式1.單字節(jié)傳送單字節(jié)傳送n特點(diǎn)特點(diǎn):DMA控制器不會(huì)長(zhǎng)時(shí)間占用總線(xiàn)不會(huì)長(zhǎng)時(shí)間占用總線(xiàn)。CPU可在每個(gè)DMA周期結(jié)束后立即控制總線(xiàn)。CPU與DMA控制器輪流輪流控制系統(tǒng)總線(xiàn),因此不會(huì)對(duì)系統(tǒng)運(yùn)行產(chǎn)生較大影響。n缺點(diǎn)缺點(diǎn):DMA傳輸效率低。8237A數(shù)據(jù)傳送方式2.數(shù)據(jù)塊傳送數(shù)據(jù)塊傳送nDMA控制器獲得總線(xiàn)控制權(quán)后,可連續(xù)傳輸多個(gè)字節(jié)。只有當(dāng)字節(jié)全部傳送完畢,產(chǎn)生#EOP信號(hào)為止。n傳送期間不再檢測(cè)DREQ請(qǐng)求信號(hào)。8237

10、A數(shù)據(jù)傳送方式2.數(shù)據(jù)塊傳送數(shù)據(jù)塊傳送n優(yōu)點(diǎn)優(yōu)點(diǎn):傳輸效率高n缺點(diǎn)缺點(diǎn):DMA傳輸期間CPU長(zhǎng)時(shí)間不能控制總線(xiàn),若一次傳輸?shù)臄?shù)據(jù)較多,會(huì)對(duì)系統(tǒng)產(chǎn)生影響。8237A數(shù)據(jù)傳送方式3.請(qǐng)求傳送請(qǐng)求傳送n類(lèi)似數(shù)據(jù)塊傳送方式。不同之處在于:每傳輸一個(gè)字節(jié)后,DMA控制器對(duì)外設(shè)的DMA請(qǐng)求信號(hào)DREQ進(jìn)行測(cè)試;若DREQ無(wú)效,則暫停傳送數(shù)據(jù);一旦重新發(fā)現(xiàn)DREQ有效,則繼續(xù)傳送。8237A數(shù)據(jù)傳送方式3.請(qǐng)求傳送請(qǐng)求傳送n優(yōu)點(diǎn)優(yōu)點(diǎn):實(shí)現(xiàn)靈活,DMA操作可由外設(shè)利用DREQ信號(hào)控制發(fā)送過(guò)程。DMA操作類(lèi)型nDMA讀n存儲(chǔ)器外設(shè)nDMA寫(xiě)n外設(shè)存儲(chǔ)器n存儲(chǔ)器到存儲(chǔ)器n如主存Cachen校驗(yàn)操作n不進(jìn)行數(shù)據(jù)傳送

11、,而是對(duì)數(shù)據(jù)塊內(nèi)部的每個(gè)字節(jié)字節(jié)進(jìn)行校驗(yàn)。#MEMR, #IOW#IOR, #MEMW8237A 內(nèi)部寄存器n通道專(zhuān)用寄存器(5個(gè))n基地址寄存器n當(dāng)前地址寄存器n基字節(jié)數(shù)寄存器n當(dāng)前字節(jié)數(shù)寄存器n方式寄存器通道專(zhuān)用寄存器n基地址寄存器(只寫(xiě))n存放內(nèi)存起始地址nDMA+0, +2, +4, +6n初始化時(shí)由程序?qū)懭?,先低字?jié),再高字節(jié)n數(shù)據(jù)傳輸過(guò)程中,其值不變例:將AX中的地址寫(xiě)入8237的通道0的基地址寄存器中 OUT DMA+0, AL MOV AL, AH OUT DMA+0, AL通道專(zhuān)用寄存器n基地址寄存器(只寫(xiě))n存放內(nèi)存起始地址nDMA+0, +2, +4, +6n初始化時(shí)由程

12、序?qū)懭?,先低字?jié),再高字節(jié)n數(shù)據(jù)傳輸過(guò)程中,其值不變n當(dāng)前地址寄存器(可讀寫(xiě))n存放當(dāng)前內(nèi)存地址nDMA+0, +2, +4, +6n初始值與基地址寄存器相同,由CPU一并寫(xiě)入n每次DMA傳送后,值自動(dòng)+1或-1通道專(zhuān)用寄存器n基字節(jié)數(shù)寄存器(只寫(xiě))n存放DMA傳送的總字節(jié)數(shù)nDMA+1, +3, +5, +7n初始化時(shí)由程序?qū)懭?,先低字?jié),再高字節(jié)n數(shù)據(jù)傳輸過(guò)程中,其值不變例:將CX計(jì)數(shù)值寫(xiě)入8237的通道0的基字節(jié)計(jì)數(shù)器中 MOV AL,CL OUT DMA+1, AL MOV AL,CH OUT DMA+1, AL通道專(zhuān)用寄存器n基字節(jié)數(shù)寄存器(只寫(xiě))n存放DMA傳送的總字節(jié)數(shù)nDMA+

13、1, +3, +5, +7n初始化時(shí)由程序?qū)懭?,先低字?jié),再高字節(jié)n數(shù)據(jù)傳輸過(guò)程中,其值不變n當(dāng)前字節(jié)數(shù)寄存器(可讀寫(xiě))n存放未傳完的字節(jié)數(shù)nDMA+1, +3, +5, +7n初始值與基字節(jié)數(shù)寄存器相同,由CPU一并寫(xiě)入n每次DMA傳送后,值自動(dòng)-1。減為-1時(shí),EOP信號(hào)有效。通道專(zhuān)用寄存器n方式寄存器(只寫(xiě))n用于設(shè)置DMA的操作類(lèi)型、數(shù)據(jù)傳送方式、地址改變方式、自動(dòng)預(yù)置以及通道選擇。nDMA+0BH數(shù)據(jù)傳送方式數(shù)據(jù)傳送方式00:請(qǐng)求方式:請(qǐng)求方式01:?jiǎn)巫止?jié)方式:?jiǎn)巫止?jié)方式10:塊方式:塊方式11:級(jí)聯(lián)方式:級(jí)聯(lián)方式地址增量地址增量1:地址減:地址減10:地址加:地址加1自動(dòng)預(yù)置自動(dòng)預(yù)

14、置1:自動(dòng)預(yù)置:自動(dòng)預(yù)置0:非自動(dòng)預(yù)置:非自動(dòng)預(yù)置操作類(lèi)型操作類(lèi)型00:校驗(yàn):校驗(yàn)01:DMA寫(xiě)寫(xiě)10:DMA讀讀11:無(wú)效:無(wú)效 通道選擇通道選擇00:通道:通道001:通道:通道110:通道:通道211:通道:通道3D7D6D5D4D3D2D1D0例: PC系列存儲(chǔ)盤(pán)讀寫(xiě)操作選擇DMA通道2,單字節(jié)傳送,地址增1,不用自動(dòng)預(yù)置。試給出寫(xiě)操作、讀操作、校驗(yàn)操作的方式寄存器的二進(jìn)制值。解:寫(xiě)操作:0100 0110 = 46H。讀操作:0100 1010 = 4AH。校驗(yàn)操作:0100 0010 = 42H。8237A 內(nèi)部寄存器n通道專(zhuān)用寄存器(5個(gè))n通道公用寄存器(5個(gè))n命令寄存器n狀

15、態(tài)寄存器n暫存寄存器n請(qǐng)求寄存器n屏蔽寄存器通道公用寄存器n命令寄存器(只寫(xiě))n用于控制8237A的操作,只能寫(xiě),不能讀。0: DREQ 高有效高有效1: DREQ 低有效低有效0: DACK 低有效低有效1: DACK 高有效高有效D7D6D5D4D3D2D1D00: 滯后寫(xiě)滯后寫(xiě)1: 擴(kuò)展寫(xiě)擴(kuò)展寫(xiě)0: 固定優(yōu)先級(jí)固定優(yōu)先級(jí)1: 循環(huán)優(yōu)先級(jí)循環(huán)優(yōu)先級(jí)0: 普通時(shí)序普通時(shí)序1: 壓縮時(shí)序壓縮時(shí)序0: 啟動(dòng)啟動(dòng)8237A1: 停止停止8237A0: 通道通道0地地 址不保持址不保持1: 通道通道0地地 址保持址保持0: 禁止禁止MM1: 允許允許MMnD5:滯后寫(xiě)和擴(kuò)展寫(xiě)nD5 = 0 為滯后寫(xiě),表示寫(xiě)脈沖滯后寫(xiě)脈沖滯后讀脈沖一個(gè)時(shí)鐘。nD5 = 1 為擴(kuò)展寫(xiě),表示讀、寫(xiě)脈沖同時(shí)讀、寫(xiě)脈沖同時(shí)產(chǎn)生。n擴(kuò)展寫(xiě)增加了增加了寫(xiě)命令寬度。壓縮時(shí)序下 (D3=1) 該位無(wú)意義。nD4:優(yōu)先級(jí)nD4 = 0 為固定優(yōu)先級(jí), DREQ0 最高,DREQ3 最低。nD4 = 1 為循環(huán)優(yōu)先級(jí),剛服務(wù)過(guò)的通道優(yōu)先權(quán)變?yōu)樽畹?。nD3 :時(shí)序類(lèi)型nD3 = 0為普通時(shí)序,傳輸一個(gè)字節(jié)需3個(gè)時(shí)鐘周期。nD3 = 1為壓縮時(shí)序。對(duì)于高速外設(shè),可將時(shí)序壓縮到2個(gè)周期。D7D6D5D4D3D2D1D0nD2:?jiǎn)?dòng)與停止8237工作nD2 = 0 啟動(dòng); D2 = 1

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論