微機(jī)系統(tǒng)與接口教學(xué)第6章io接口技術(shù)基礎(chǔ)(概述)課件_第1頁
微機(jī)系統(tǒng)與接口教學(xué)第6章io接口技術(shù)基礎(chǔ)(概述)課件_第2頁
微機(jī)系統(tǒng)與接口教學(xué)第6章io接口技術(shù)基礎(chǔ)(概述)課件_第3頁
微機(jī)系統(tǒng)與接口教學(xué)第6章io接口技術(shù)基礎(chǔ)(概述)課件_第4頁
微機(jī)系統(tǒng)與接口教學(xué)第6章io接口技術(shù)基礎(chǔ)(概述)課件_第5頁
已閱讀5頁,還剩54頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1第六章 I/O接口技術(shù)基礎(chǔ)陸堯勝 楊仁桓 主講暨南大學(xué)信息科學(xué)技術(shù)學(xué)院電子工程系微機(jī)系統(tǒng)與接口1第六章 I/O接口技術(shù)基礎(chǔ)陸堯勝 楊仁桓 主講微機(jī)系統(tǒng)與2第6章 I/O接口技術(shù)基礎(chǔ)接口技術(shù)概述可編程并行接口可編程定時(shí)器/計(jì)數(shù)器串行通訊接口A/D、D/A接口2第6章 I/O接口技術(shù)基礎(chǔ)接口技術(shù)概述3智能系統(tǒng)結(jié)構(gòu)框圖輸入放大通道PC輸入、輸出控制及信號(hào)處理D/A轉(zhuǎn)換部分A/D采樣部分輸入電極輸出電極輸出刺激器輸入控制輸出控制3智能系統(tǒng)結(jié)構(gòu)框圖輸入放PCD/AA/D輸入輸出輸出輸入控制4生物反饋治療系統(tǒng)4生物反饋治療系統(tǒng)5 輸入/輸出接口(I/O接口)什么是I/O接口?把外設(shè)連接到總線上的一組邏輯

2、電路的總稱。實(shí)現(xiàn)外設(shè)與主機(jī)之間的信息交換。 I/O接口要解決的問題速度匹配 信號(hào)電平和驅(qū)動(dòng)能力(電平轉(zhuǎn)換器、驅(qū)動(dòng)器) 信號(hào)形式匹配(A/D、D/A) 信息格式(字節(jié)流、塊、數(shù)據(jù)包、幀) 時(shí)序匹配(定時(shí)關(guān)系)總線隔離(三態(tài)門)5 輸入/輸出接口(I/O接口)什么是I/O接口?6 CPU與IO設(shè)備之間的接口信息1數(shù)據(jù)(Data) (1)數(shù)字量 由鍵盤、CDROM光盤等輸入的信息和向打印機(jī)、CRT顯示器輸出的信息,以及軟、硬盤寫入場(chǎng)出的信息是以二進(jìn)制形式表示的數(shù)或以ASCDCG GEFIR PB TWF 。(2)模擬量 當(dāng)計(jì)算機(jī)用于控制時(shí),大量的現(xiàn)場(chǎng)信息經(jīng)過傳感器把非電量的自然信息轉(zhuǎn)換成模擬量的電信

3、息,再由AD變換器轉(zhuǎn)換后輸入計(jì)算機(jī);計(jì)算機(jī)的控制輸出也必須先經(jīng)過DA轉(zhuǎn)換才能去控制執(zhí)行機(jī)構(gòu)。(3)開關(guān)量 這是一些兩個(gè)狀態(tài)的量,如電機(jī)的運(yùn)轉(zhuǎn)與停止、開關(guān)的合與斷、閥門的打開和關(guān)閉等等。這些量只要用一位二進(jìn)制數(shù)即可表示,故字長(zhǎng)為8位的機(jī)器一次輸入或輸出可控制8個(gè)這樣的開關(guān)量。6 CPU與IO設(shè)備之間的接口信息1數(shù)據(jù)(Data)7CPU與IO設(shè)備之間的接口信息2狀態(tài)信息(Status)在輸入時(shí),有輸入裝置的信息是否準(zhǔn)備好(Ready);在輸出時(shí),輸出裝置是否有空(Empty),若輸出裝置正在輸出信息,則以忙(Busy)指示等。3控制信息(Control) 控制輸入輸出裝置或接口的啟動(dòng)、停止等。狀態(tài)

4、信息和控制信息與數(shù)據(jù)是不同性質(zhì)的信息,必須要分別傳送。但在大部分微型機(jī)中只有通用的IN和OUT指令,因此,外設(shè)的狀態(tài)也必須作為一種數(shù)據(jù)輸入;而CPU的控制命令,也必須作為一種數(shù)據(jù)輸出。為了使它們相互之間區(qū)分開,它們必須有自己的不同端口地址。 所以,一個(gè)外設(shè)或接口電路往往有幾個(gè)端口地址,CPU尋址的是端口,而不是籠統(tǒng)的外設(shè)。7CPU與IO設(shè)備之間的接口信息2狀態(tài)信息(Status81)片內(nèi)總線2)片總線(又稱為元件級(jí)總線或局部總線):它是一臺(tái)單板計(jì)算機(jī)或一塊CPU插件板使用的板上總線,用于芯片一級(jí)的連接。它是微型機(jī)系統(tǒng)的重要總線,在將接口芯片與CPU連接時(shí)就要與這種總線打交道。它一般是CPU芯片

5、引腳的延伸,與CPU的關(guān)系密切。 3)內(nèi)總線(又稱為微機(jī)總線或板級(jí)總線,一般稱為系統(tǒng)總線):它用于微機(jī)系統(tǒng)各插件板之間的連接,是微機(jī)系統(tǒng)最重要的一種總線。一般談到微型機(jī)總線,指的就是這一種總線。 4)外總線(又稱為通信總線):它用于系統(tǒng)之間的連接,如微機(jī)系統(tǒng)之間、微型計(jì)算機(jī)系統(tǒng)與儀器或其他設(shè)備之間的連接。比較常用的外總線有:IEEE488總線 、RS232C總線。81)片內(nèi)總線9從接口的角度: (1)地址總線 (2)數(shù)據(jù)總線 (3)控制總線 (4)電源和地線 (5)備用線:留作功能擴(kuò)充和用戶的特殊要求使用。系統(tǒng)總線一般都做成多個(gè)插槽的形式,各插槽相同的引腳都連到一起,總線就連到這些引腳上??偩€

6、接口引腳的定義、傳輸速率的設(shè)定、驅(qū)動(dòng)能力的限制、信號(hào)電平的規(guī)定、時(shí)序的安排以及信息格式的約定等等,都有統(tǒng)一的標(biāo)準(zhǔn)。外總線則使用標(biāo)準(zhǔn)的接口插頭,其結(jié)構(gòu)和通信規(guī)定也是標(biāo)準(zhǔn)的。9從接口的角度: (1)地址總線 10I/O接口擴(kuò)展1.1、I/O接口的功能總線技術(shù)接口的作用分析與設(shè)計(jì)接口電路的基本方法1.2、I/O信息的傳送方式1.3、常用的I/O接口擴(kuò)展芯片10I/O接口擴(kuò)展1.1、I/O接口的功能11I/O接口的定義與作用所謂接口(Interface)就是微處理器或微機(jī)與外界的連接部件(電路),它是CPU與外界進(jìn)行信息交換的中轉(zhuǎn)站。 接口電路的作用,就是將計(jì)算機(jī)以外的信息轉(zhuǎn)換成與計(jì)算機(jī)匹配的信息,使

7、計(jì)算機(jī)能有效地傳送和處理它11I/O接口的定義與作用所謂接口(Interface)就是12I/O接口的功能1)數(shù)據(jù)緩沖功能: 實(shí)現(xiàn)和不同外設(shè)的速度匹配; 輸出數(shù)據(jù)鎖存;輸入數(shù)據(jù)三態(tài)緩沖。為了解決CPU高速與外設(shè)低速的矛盾,接口中一般都設(shè)置數(shù)據(jù)寄存器或鎖存器,避免因速度不一致而丟失數(shù)據(jù)信息或狀態(tài)信息。2)信號(hào)轉(zhuǎn)換功能和數(shù)據(jù)格式變換的功能: 包括CPU的信號(hào)與外設(shè)信號(hào)的邏輯關(guān)系、時(shí)序配合以及電平匹配上的轉(zhuǎn)換;數(shù)據(jù)“并 串”和“串并”變換和數(shù)據(jù)寬度變換等。3)設(shè)備選擇功能: 接口具有設(shè)備和端口選擇能力,以便CPU能根據(jù)需要啟動(dòng)其中部分設(shè)備或全部設(shè)備工作。而CPU在同一時(shí)間里只能選擇一個(gè)端口進(jìn)行數(shù)據(jù)傳

8、送。12I/O接口的功能1)數(shù)據(jù)緩沖功能: 13I/O接口的功能4)接收和執(zhí)行CPU命令的功能: 接口電路應(yīng)具有接收和執(zhí)行CPU命令的功能,以便CPU向IO設(shè)備發(fā)出的控制命令得以轉(zhuǎn)達(dá)并實(shí)施。5)中斷管理功能: 既做到微機(jī)系統(tǒng)對(duì)外界的實(shí)時(shí)響應(yīng),又使CPU與外設(shè)并行工作,提高了CPU的效率。6)可編程功能: 在不改動(dòng)硬件的情況下,只修改相應(yīng)的驅(qū)動(dòng)程序就可以改變接口的工作方式。 13I/O接口的功能4)接收和執(zhí)行CPU命令的功能: 接口電14 分析與設(shè)計(jì)接口電路的基本方法 1)分析接口兩側(cè)的情況: 找出兩側(cè)進(jìn)行連接時(shí)存在的差異;針對(duì)要消除兩側(cè)的這些差異,來確定接口應(yīng)完成的任務(wù);2)進(jìn)行信號(hào)轉(zhuǎn)換: 要

9、考慮作哪些信號(hào)變換 3)合理選用外圍接口芯片: 選擇什么樣的元器件來進(jìn)行這些變換4)接口驅(qū)動(dòng)程序分析。14 分析與設(shè)計(jì)接口電路的基本方法 1)分析接口兩側(cè)的情15 I/O接口的編址方式I/O端口: I/O信息的三種類型:數(shù)據(jù)、命令、狀態(tài)。傳送這三類信息的通道分別稱為:數(shù)據(jù)端口(I、O)、命令端口(O)、狀態(tài)端口(I)。不同外設(shè)具有的端口數(shù)各不相同,計(jì)算機(jī)中為每一個(gè)端口都賦予一個(gè)惟一編號(hào)稱為端口地址(或端口號(hào))。端口有兩種編址方式:統(tǒng)一編址和獨(dú)立編址。15 I/O接口的編址方式16 1. 統(tǒng)一編址把外設(shè)接口與內(nèi)存統(tǒng)一進(jìn)行編址。各占據(jù)統(tǒng)一地址空間的不同部分。優(yōu)點(diǎn)指令統(tǒng)一,靈活;訪問控制信號(hào)統(tǒng)一,使

10、用同一組的地址/控制信號(hào)。 缺點(diǎn)內(nèi)存可用地址空間減小0地址空間(共1MB)內(nèi)存地址(960KB)I/O地址(64KB)FFFFFHEFFFFHF0000H16 1. 統(tǒng)一編址0地址空間(共1MB)內(nèi)存地址I/O地17 2. 獨(dú)立編址外設(shè)地址空間和內(nèi)存地址空間相互獨(dú)立。優(yōu)點(diǎn):內(nèi)存地址空間不受I/O編址的影響缺點(diǎn):I/O指令功能較弱,使用不同的讀寫控制信號(hào)00000H內(nèi)存地址空間內(nèi)存空間(1MB)I/O空間(64KB)FFFFHFFFFFHI/O地址空間0000H17 2. 獨(dú)立編址00000H內(nèi)存地址空間內(nèi)存空間I/O空18 IO端口地址分配 IO設(shè)備在微機(jī)系統(tǒng)中占據(jù)一定的IO地址空間。系統(tǒng)中哪

11、些端口是計(jì)算機(jī)制造廠家為今后的開發(fā)而保留的,哪些地址已分配給了別的設(shè)備,哪些端口地址是留給用戶的,這些信息對(duì)配置IO設(shè)備和接口來說是十分必要的。8086/8088的I/O端口最多可達(dá)64K 個(gè),由A15 A 0參加尋址。PC系列微機(jī)系統(tǒng)的端口數(shù)目是1024個(gè),其端口地址空間是從0003FFH,由地址線A0A9進(jìn)行譯碼。 18 IO端口地址分配 IO設(shè)備在微機(jī)系統(tǒng)中占據(jù)一定的19PC中的IO接口電路分為兩類:1)主板上的IO接口芯片。 大多都是可編程的大規(guī)模集成電路,完成相應(yīng)的接口操作,如定時(shí)器計(jì)數(shù)器、中斷控制器、并行接口、DMA控制器以及鍵盤控制器等。在PCAT中,有8253、8259、823

12、7A、8255等芯片組成。但隨著PLD技術(shù)的發(fā)展,目前PC機(jī)系統(tǒng)主板上的所有IO接口的功能已集成在一片或幾片大規(guī)模集成電路芯片中。2)擴(kuò)展槽上的IO接口控制卡。這些接口控制卡是上若干個(gè)集成電路按一定的邏輯功能組成的接口部件,如多功能卡、圖形卡、串行通信卡、網(wǎng)絡(luò)接口卡等。PC系列微機(jī)中的IO端口地址空間分為兩部分,即1024個(gè)端口的前256個(gè)端口(0000FFH)專供IO接口芯片使用,后768個(gè)端口(1003FFH)為IO接口控制卡使用。19PC中的IO接口電路分為兩類:1)主板上的IO接口208088/8086系統(tǒng)存儲(chǔ)器操作與I/O操作的分別: 硬件/電路,指令,時(shí)序上的不同 8088總線A1

13、9-A0A9-A0MEMR、MEMWIOR、IOW 、DEN存儲(chǔ)器訪問I/O訪問208088/8086系統(tǒng)8A19-A0A9-A0MEMR、21 8088/8086 CPU的I/O編址方式采用I/O獨(dú)立編址方式(但地址線與存儲(chǔ)器共用)地址線上的地址信號(hào)用 來區(qū)分: 時(shí)為I/O地址I/O操作只使用20根地址線中的16根: A15 A0可尋址的I/O端口數(shù)為64K(65536)個(gè)I/O地址范圍為0FFFFHIBM PC只使用了1024個(gè)I/O地址(03FFH)21 8088/8086 CPU的I/O編址方式22 I/O端口地址的譯碼 、 、 A15 A0OUT指令將使總線的 信號(hào)有效IN指令將使總

14、線的 信號(hào)有效當(dāng)接口只有一個(gè)端口時(shí),16位地址線一般應(yīng)全部參與譯碼,譯碼輸出直接選擇該端口;當(dāng)接口具有多個(gè)端口時(shí),則16位地址線的高位參與譯碼(決定接口的基地址),而低位則用于確定要訪問哪一個(gè)端口。 例如: 某外設(shè)接口有4個(gè)端口,地址為2F0H2F3H,則其基地址為2F0H,由A9A2譯碼得到,而A1、A0用來確定4個(gè)端口中的某一個(gè)。22 I/O端口地址的譯碼23 I/O數(shù)據(jù)的傳送方式并行一個(gè)數(shù)據(jù)單位(通常為字節(jié))的各位同時(shí)傳送速度快、距離短、成本高例:PC機(jī)的并行接口(通常用于連接打印機(jī))串行數(shù)據(jù)按位進(jìn)行傳送速度慢、距離遠(yuǎn)、成本低例: PC機(jī)的串行接口(通常用于串行通信)23 I/O數(shù)據(jù)的傳

15、送方式24 接口電路的基本結(jié)構(gòu)數(shù)據(jù)線控制線狀態(tài)線DBCBAB數(shù)據(jù)輸入寄存器(or 三態(tài)門)數(shù)據(jù)輸出寄存器(鎖存器)狀態(tài)寄存器(or 三態(tài)門)命令寄存器譯碼電路控制邏輯接外設(shè)接主機(jī)24 接口電路的基本結(jié)構(gòu)數(shù)據(jù)線控制線狀態(tài)線DBCBAB數(shù)據(jù)輸25 數(shù)據(jù)輸入/輸出寄存器暫存輸入/輸出的數(shù)據(jù)命令寄存器存放控制命令,用來設(shè)定接口功能、工作參數(shù)和工作方式。狀態(tài)寄存器保存外設(shè)當(dāng)前狀態(tài),以供CPU讀取。25 數(shù)據(jù)輸入/輸出寄存器暫存輸入/輸出的數(shù)據(jù)26LED顯示器接口1)字形口CS1;2)字位口CS226LED顯示器接口27共陰極的LED顯示器接口27共陰極的LED顯示器接口28微機(jī)信息傳遞方式I/O控制方式

16、 主機(jī)與外設(shè)之間數(shù)據(jù)傳送的控制方式有以下四種:無條件傳送同步傳送(同步傳送方式 )查詢式傳送(異步傳送方式 )中斷方式傳送直接存儲(chǔ)器存取 (DMA, Direct Memory Access)28微機(jī)信息傳遞方式I/O控制方式 主機(jī)與外設(shè)之間數(shù)據(jù)傳送29無條件傳送方式適用于總是處于準(zhǔn)備好狀態(tài)的外設(shè)以下外設(shè)可采用無條件傳送方式:開關(guān)發(fā)光器件(如發(fā)光二極管、7段數(shù)碼管、燈泡等)繼電器步進(jìn)電機(jī)優(yōu)點(diǎn):軟件及接口硬件簡(jiǎn)單缺點(diǎn):只適用于簡(jiǎn)單外設(shè),適應(yīng)范圍較窄29無條件傳送方式適用于總是處于準(zhǔn)備好狀態(tài)的外設(shè)以下外設(shè)可30查詢方式傳送適用于外設(shè)并不總是準(zhǔn)備好,而且對(duì)傳送速率、傳送效率要求不高的場(chǎng)合。CPU在與

17、外設(shè)交換數(shù)據(jù)前必須詢問外設(shè)狀態(tài)“你準(zhǔn)備好沒有?”對(duì)外設(shè)的要求:應(yīng)提供設(shè)備狀態(tài)信息對(duì)接口的要求:需要提供狀態(tài)端口優(yōu)點(diǎn):軟件比較簡(jiǎn)單缺點(diǎn):CPU效率低,數(shù)據(jù)傳送的實(shí)時(shí)性差, 速度較慢30查詢方式傳送適用于外設(shè)并不總是準(zhǔn)備好,而且對(duì)傳送速率、傳31查詢式傳送方式又稱異步傳送方式, 在傳送前,查詢一下外設(shè)的狀態(tài),當(dāng)外設(shè)準(zhǔn)備好了以后才傳送;否則,等待。31查詢式傳送方式又稱異步傳送方式, 在傳送前,查詢一下外32查詢方式的流程:超時(shí)?READY?與外設(shè)進(jìn)行數(shù)據(jù)交換超時(shí)錯(cuò)讀入并測(cè)試外設(shè)狀態(tài)YNYN傳送完?防止死循環(huán)復(fù)位計(jì)時(shí)器NY32查詢方式的流程:超時(shí)?READY?與外設(shè)進(jìn)超時(shí)錯(cuò)讀入并測(cè)33D5D7-D0

18、A9|A3&1IOWD7-D03F8H外設(shè)D7D6D5D4D3D2D1D0BUSYCPQ7Q6Q5Q4Q3Q2Q1Q0狀態(tài)端口GG2AG2BCBAA2A1A074LS138Y01IORY3OE74LS374CPQQDSSTROBE3FBH33D5D7-D0A9&IOWD7-D03F8H外設(shè)D7BU34例:電路圖如上,用查詢方式進(jìn)行輸出外設(shè)狀態(tài)端口地址為3FBH,第5位(bit5)為狀態(tài)標(biāo)志(=1忙,=0準(zhǔn)備好)外設(shè)數(shù)據(jù)端口地址為3F8H,寫入數(shù)據(jù)會(huì)使?fàn)顟B(tài)標(biāo)志置1 ;外設(shè)把數(shù)據(jù)讀走后又把它置0。34例:電路圖如上,用查詢方式進(jìn)行輸出外設(shè)狀態(tài)端口地址為3F35中斷技術(shù) 什么是中斷?與生活場(chǎng)景的比較

19、正在看書電話鈴響接電話繼續(xù)看書執(zhí)行程序事件發(fā)生事件處理繼續(xù)執(zhí)行程序中斷處理中斷請(qǐng)求及響應(yīng)實(shí)際場(chǎng)景計(jì)算機(jī)中斷返回35中斷技術(shù) 什么是中斷?正在看書電話鈴響接電話繼續(xù)看書執(zhí)行36中斷的定義 CPU執(zhí)行程序時(shí),由于發(fā)生了某種隨機(jī)的事件(外部或內(nèi)部),引起CPU暫時(shí)中斷正在運(yùn)行的程序,轉(zhuǎn)去執(zhí)行一段特殊的服務(wù)程序(稱為中斷服務(wù)程序或中斷處理程序),以處理該事件,該事件處理完后又返回被中斷的程序繼續(xù)執(zhí)行,這一過程稱為中斷。36中斷的定義 CPU執(zhí)行程序時(shí),由于發(fā)生了某種隨機(jī)的事件(37中斷源引起CPU中斷的事件中斷源。例如:外設(shè)請(qǐng)求輸入輸出數(shù)據(jù),報(bào)告故障等事件掉電、硬件故障、軟件錯(cuò)誤、非法操作、定時(shí)時(shí)間到

20、等中斷源分為:外部中斷、內(nèi)部中斷內(nèi)部中斷:CPU內(nèi)部執(zhí)行程序時(shí)自身產(chǎn)生的中斷外部中斷:CPU以外的設(shè)備、部件產(chǎn)生的中斷 8086/8088的外部中斷信號(hào):INTR、NMIINTR可屏蔽中斷請(qǐng)求,高電平有效,受IF標(biāo)志的控制。IF=1時(shí),執(zhí)行完當(dāng)前指令后CPU對(duì)它作出響應(yīng)。 NMI非屏蔽中斷請(qǐng)求,上升沿有效,任何時(shí)候CPU都要響應(yīng)此中斷請(qǐng)求信號(hào)。37中斷源引起CPU中斷的事件中斷源。例如:38為何計(jì)算機(jī)中要引入中斷?提高數(shù)據(jù)傳輸率;避免了CPU不斷檢測(cè)外設(shè)狀態(tài)的過程,提高了CPU的利用率。實(shí)現(xiàn)對(duì)特殊事件的實(shí)時(shí)響應(yīng)。38為何計(jì)算機(jī)中要引入中斷?提高數(shù)據(jù)傳輸率;39中斷過程五個(gè)步驟:中斷請(qǐng)求中斷判優(yōu)

21、(有時(shí)還要進(jìn)行中斷源識(shí)別)中斷響應(yīng)中斷服務(wù)中斷返回以下以外部中斷為主介紹這五個(gè)步驟。39中斷過程五個(gè)步驟:401)中斷請(qǐng)求外設(shè)接口(中斷源)發(fā)出中斷請(qǐng)求信號(hào),送到CPU的INTR或NMI引腳;中斷請(qǐng)求信號(hào):邊沿請(qǐng)求,電平請(qǐng)求例如,NMI為邊沿請(qǐng)求,INTR為電平請(qǐng)求中斷請(qǐng)求信號(hào)應(yīng)保持到中斷被處理為止;CPU響應(yīng)中斷后,中斷請(qǐng)求信號(hào)應(yīng)及時(shí)撤銷。在8086/8088系統(tǒng)中,外設(shè)的中斷要經(jīng)過8259A可編程中斷控制器(PIC)的排隊(duì)判優(yōu)后向CPU發(fā)出: (I/O接口) PIC CPU401)中斷請(qǐng)求外設(shè)接口(中斷源)發(fā)出中斷請(qǐng)求信號(hào),送到CP41 2)中斷源識(shí)別計(jì)算機(jī)中的中斷源有很多,CPU必須識(shí)別

22、是哪一個(gè)設(shè)備產(chǎn)生中斷。識(shí)別中斷源有兩個(gè)方法:軟件查詢。將中斷信號(hào)從數(shù)據(jù)總線讀入,用程序進(jìn)行判別。中斷矢量法。由中斷源提供中斷類型號(hào),CPU根據(jù)類型確定中斷源。(8086/8088即采用此種方法)41 2)中斷源識(shí)別計(jì)算機(jī)中的中斷源有很多,CPU必須識(shí)別是428088的中斷系統(tǒng) 與中斷有關(guān)的控制線為:NMI、INTR、INTA#8088系統(tǒng)的中斷源內(nèi)部中斷除法溢出:類型號(hào)0,商大于目的操作數(shù)所能表達(dá)的范圍時(shí)產(chǎn)生。單步中斷:類型號(hào)1,TF=1時(shí)產(chǎn)生(當(dāng)前指令需執(zhí)行完)斷點(diǎn)中斷:類型號(hào)3,這是一個(gè)軟件中斷,即INT 3指令。溢出中斷:類型號(hào)4,這是一個(gè)軟件中斷,即INTO指令。軟件中斷:即INT n

23、指令,類型號(hào)n(0-255)。外部中斷非屏蔽中斷NMI:類型號(hào)2,不可用軟件屏蔽,CPU必須響應(yīng)它。可屏蔽中斷INTR:類型號(hào)由PIC提供。IF=1時(shí)CPU才能響應(yīng)。428088的中斷系統(tǒng) 與中斷有關(guān)的控制線為:NMI、INT43NMIINTR中斷邏輯軟件中斷指令溢出中斷除法錯(cuò)單步中斷非屏蔽中斷請(qǐng)求中斷控制器8259APIC8086/8088CPU內(nèi)部邏輯斷點(diǎn)中斷8086/8088中斷源類型可屏蔽中斷請(qǐng)求n4301243NMIINTR軟件中斷指令溢出中斷除法錯(cuò)單步中斷非屏蔽中44 3)中斷判優(yōu)多個(gè)中斷源產(chǎn)生中斷,CPU首先為誰服務(wù)?中斷優(yōu)先級(jí)排隊(duì)問題。中斷優(yōu)先級(jí)控制要處理兩種情況:對(duì)同時(shí)產(chǎn)生的

24、中斷:應(yīng)首先處理優(yōu)先級(jí)別較高的中斷;若優(yōu)先級(jí)別相同,則按先來先服務(wù)的原則處理;對(duì)非同時(shí)產(chǎn)生的中斷:低優(yōu)先級(jí)別的中斷處理程序允許被高優(yōu)先級(jí)別的中斷源所中斷即允許中斷嵌套。中斷優(yōu)先級(jí)的控制方法硬件判優(yōu)鏈?zhǔn)脚袃?yōu)、并行判優(yōu)(中斷向量法)軟件判優(yōu)順序查詢中斷請(qǐng)求,先查詢的先服務(wù)(即先查詢的優(yōu)先級(jí)別高)通常將中斷判優(yōu)與中斷源識(shí)別合并在一起進(jìn)行處理。x86系統(tǒng)中,這項(xiàng)任務(wù)由PIC和CPU共同完成。44 3)中斷判優(yōu)多個(gè)中斷源產(chǎn)生中斷,CPU首先為誰服務(wù)?454)中斷響應(yīng)在每條指令的最后一個(gè)時(shí)鐘周期,CPU檢測(cè)INTR或NMI信號(hào)。若以下條件成立,則CPU響應(yīng)中斷:當(dāng)前指令執(zhí)行完。對(duì)INTR,還應(yīng)滿足以下條件

25、當(dāng)前指令是STI和IRET,則下條指令也要執(zhí)行完。當(dāng)前指令帶有LOCK、REP等指令前綴時(shí),則把它們看成一個(gè)整體,要求完整地執(zhí)行完;對(duì)INTR,CPU應(yīng)處于開中斷狀態(tài),即IF=1;當(dāng)前沒有復(fù)位(RESET)和保持(HOLD)信號(hào)。若NMI和 INTR 同時(shí)發(fā)生,則首先響應(yīng)NMI。454)中斷響應(yīng)在每條指令的最后一個(gè)時(shí)鐘周期,CPU檢測(cè)IN464)中斷響應(yīng)(續(xù))CPU中斷響應(yīng)時(shí),要做下述三項(xiàng)工作:向中斷源發(fā)出INTA中斷響應(yīng)信號(hào);斷點(diǎn)保護(hù),包括CS、IP和PSW(FLAGS)。這主要是保證中斷結(jié)束后能返回被中斷的程序。獲得中斷服務(wù)程序首地址(入口)。如何得到中斷處理程序的首地址?固定入口法中斷向

26、量法常用464)中斷響應(yīng)(續(xù))CPU中斷響應(yīng)時(shí),要做下述三項(xiàng)工作:474)中斷處理(中斷服務(wù))中斷服務(wù)子程序特點(diǎn)為”遠(yuǎn)”過程(類型為FAR)要用IRET指令返回中斷服務(wù)子程序要做的工作保護(hù)現(xiàn)場(chǎng)(PUSH regs) 開中斷(STI) 進(jìn)行中斷處理 恢復(fù)現(xiàn)場(chǎng)(POP regs) 中斷返回(IRET) 474)中斷處理(中斷服務(wù))中斷服務(wù)子程序特點(diǎn)485)中斷返回執(zhí)行中斷返回指令I(lǐng)RET IRET指令將使CPU把堆棧內(nèi)保存的斷點(diǎn)信息彈出到IP、CS和FLAG中,保證被中斷的程序從斷點(diǎn)處能夠繼續(xù)往下執(zhí)行。IPLIPHCSLCSHFLAGLFLAGHSPIPLIPHCSLCSHFLAGLFLAGHSP

27、IPCSFLAG進(jìn)入中斷服務(wù)程序時(shí)中斷返回后485)中斷返回執(zhí)行中斷返回指令I(lǐng)RET IRET指令將49DMA方式 前面三種I/O方式都需要CPU作為中介: 外設(shè) CPU 內(nèi)存 兩個(gè)含義:1)軟件:外設(shè)與內(nèi)存之間的數(shù)據(jù)傳送是通過CPU執(zhí)行程序來完成的;2)硬件:I/O接口和存儲(chǔ)器的讀寫控制信號(hào)、地址信號(hào)都是由CPU發(fā)出的(總線由CPU控制)。 缺點(diǎn):程序的執(zhí)行速度限定了傳送的最大速度(約為幾十KB/秒)解決:DMA傳輸49DMA方式 前面三種I/O方式都需要CPU作為中介:50 DMA傳輸: 外設(shè) 內(nèi)存外設(shè)直接與存儲(chǔ)器進(jìn)行數(shù)據(jù)交換 ,CPU不再擔(dān)當(dāng)數(shù)據(jù)傳輸?shù)闹薪檎撸豢偩€由DMA控制器(DMAC)進(jìn)行控制(CPU要放棄總線控制權(quán)),內(nèi)存/外

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論