基本輸入輸出接口_第1頁
基本輸入輸出接口_第2頁
基本輸入輸出接口_第3頁
基本輸入輸出接口_第4頁
基本輸入輸出接口_第5頁
已閱讀5頁,還剩60頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

篇"人?篇"出發(fā)

教學(xué)重點(diǎn)

-I/O接口電路的典型結(jié)構(gòu)

-無條件傳送方式

■查詢傳送方式

-中斷工作過程

6.1I/O接口概述

為什么需要I/O接口(電路)?多種外設(shè)

-微機(jī)的外部設(shè)備多種多樣

-工作原理、驅(qū)動(dòng)方式、信息格式、以及

工作速度方面彼此差別很大

-它們不能與CPU直接相連

■必須經(jīng)過中間電路再與系統(tǒng)相連

-這部分電路被稱為I/O接口電路

6.1I/O接口概述(續(xù)1)

什么是I/O接口(電路)?

■I/O接口是位于系統(tǒng)與外設(shè)間、用來協(xié)助

完成數(shù)據(jù)傳送和控制任務(wù)的邏輯電路

■PC機(jī)系統(tǒng)板的可編程接口芯片、I/O總

線槽的電路板(適配器)都是接口電路

6.1I/O接口概述(續(xù)2)

什么是微機(jī)接口技術(shù)?

-處理微機(jī)系統(tǒng)與外設(shè)間聯(lián)系的技術(shù)

-注意其軟硬結(jié)合的特點(diǎn)

■根據(jù)應(yīng)用系統(tǒng)的需要,使用和構(gòu)造相應(yīng)

的接口電路,編制配套的接口程序,支

持和連接有關(guān)的設(shè)備

6.1,1I/O接口的主要功能

⑴對(duì)輸入輸出數(shù)據(jù)進(jìn)行緩沖和鎖存

輸出接口有鎖存環(huán)節(jié),輸入接口有緩沖環(huán)節(jié)

實(shí)際的電路常用:

輸出鎖存緩沖環(huán)節(jié),輸入鎖存緩沖環(huán)節(jié)

⑵對(duì)信號(hào)的形式和數(shù)據(jù)的格式進(jìn)行變換

微機(jī)直接處理:數(shù)字量、開關(guān)量、脈沖量

⑶對(duì)I/O端口進(jìn)行尋址

(4)與CPU和I/O設(shè)備進(jìn)行聯(lián)絡(luò)

6.1.2I/O接口的典型結(jié)構(gòu)

1.接口電路的內(nèi)部結(jié)構(gòu)

2.接口電路的外部特性

3.接口電路芯片的分類

4.接口電路的可編程性

1.接口電路的內(nèi)部結(jié)構(gòu)

■CPU與外設(shè)主要有數(shù)據(jù)、狀態(tài)和控制信息

需要相互交換,于是從應(yīng)用角度看內(nèi)部:

(1)數(shù)據(jù)寄存器

■保存外設(shè)給CPU和CPU發(fā)往外設(shè)的數(shù)據(jù)

⑵狀態(tài)寄存器

■保存外設(shè)或接口電路的狀態(tài)

⑶控制寄存器

■保存CPU給外設(shè)或接口電路的命令

2.接口電路的外部特性

■主要體現(xiàn)在引腳上,分成兩側(cè)信號(hào)

面向CPU一側(cè)的信號(hào):

■用于與CPU連接

■主要是數(shù)據(jù)、地址和控制信號(hào)

面向外設(shè)一側(cè)的信號(hào):

■用于與外設(shè)連接

■提供的信號(hào)五花八門

■功能定義、時(shí)序及有效電平等差異較大

.*3.接口電路芯片的分類

-接口電路核心部分往往是一塊或數(shù)塊大

規(guī)模集成電路芯片(接口芯片):

-通用接口芯片

-支持通用的數(shù)據(jù)輸入輸出和控制的接口芯片

-面向外設(shè)的專用接口芯片

?針對(duì)某種外設(shè)設(shè)計(jì)、與該種外設(shè)接口

-面向微機(jī)系統(tǒng)的專用接口芯片

■與CPU和系統(tǒng)配套使用,以增強(qiáng)其總體功能

4.接口電路的可編程性

■許多接口電路具有多種功能和工作方式,

可以通過編程的方法選定其中一種

■接口需要進(jìn)行物理連接,還需要編寫接

口軟件

-接口軟件有兩類:

-初始化程序段—設(shè)定芯片工作方式等

■數(shù)據(jù)交換程序段——管理、控制、驅(qū)動(dòng)外設(shè),

負(fù)責(zé)外設(shè)和系統(tǒng)間信息交換

6.1,3I/O端口的編址

接口電路占用的1/o端口有兩類編排形式

■1/0端口單獨(dú)編址

■I/O地址空間獨(dú)立于存儲(chǔ)地址空間

■如8086/8088

■1/0端口與存儲(chǔ)器統(tǒng)一編址

■它們共享一個(gè)地址空間

■如M6800

FFFFF

I/O端口單獨(dú)編址

內(nèi)存

空間

■優(yōu)點(diǎn):FFFF

I/O

■I/O端口的地址空間獨(dú)立空間

.控制和地址譯碼電路相對(duì)簡(jiǎn)單0

■專門的I/O指令使程序清晰易讀

■缺點(diǎn):

■I/O指令沒有存儲(chǔ)器指令豐富

80x86采用"0端口獨(dú)立編址/

I/O端口與存儲(chǔ)器統(tǒng)一編址

■優(yōu)點(diǎn):FFFFFf

■不需要專門的i/o指令

■I/O數(shù)據(jù)存取與存儲(chǔ)器數(shù)內(nèi)存

據(jù)存取一樣靈活部分

存儲(chǔ)器空間

■缺點(diǎn):

■I/O端口要占去部分存儲(chǔ)

器地址空間I/O

部分

■程序不易閱讀(不易分

00000、

清訪存和訪問外設(shè))

6.1.48088/8086的輸入輸出指令

,輸入指令演示

INALJ8;字節(jié)輸入,直接尋址

INAL,DX;字節(jié)輸入,間接尋址

INAX,i8;字輸入,直接尋址

INAX.DX;字輸入,間接尋址

■輸出指令

OUTi8,AL;字節(jié)輸出,直接尋址

OUTDX,AL;字節(jié)輸出,間接尋址

OUTi&AL;字輸出,直接尋址

OUTDX,AL;字輸出,間接尋址

48088/8086的I/O端□

-8088只能通過輸入輸出指令與外設(shè)進(jìn)行數(shù)

據(jù)交換;呈現(xiàn)給程序員的外設(shè)是端口

(Port),即:I/O地址

■8086用于尋址外設(shè)端口的地址線為16條,

端口最多為216=65536(64K)個(gè),端口

號(hào)為0000H~FFFFH

-每個(gè)端口用于傳送一個(gè)字節(jié)的外設(shè)數(shù)據(jù)

@1/0尋址方式

■8088/8086的端口有64K個(gè),無需分段,

設(shè)計(jì)有兩種尋址方式

?:?直接尋址:只用于尋址OOH~FFH前256

個(gè)端口,操作數(shù)i8表示端口號(hào)

。間接尋址:可用于尋址全部64K個(gè)端口,

DX寄存器的值就是端口號(hào)

■對(duì)大于FFH的端口只能采用間接尋址方式

數(shù)據(jù)交換方式

-如果輸入輸出一個(gè)字節(jié),利用AL寄存器

-如果輸入輸出一個(gè)字,利用AX寄存器

■輸入一個(gè)字,實(shí)際上是從連續(xù)兩個(gè)端口輸入

兩個(gè)字節(jié),分別送AL(對(duì)應(yīng)低地址端口)

和AH(對(duì)應(yīng)高地址端口)

■輸出一個(gè)字,實(shí)際上是將AL(對(duì)應(yīng)低地址

端口)和AH(對(duì)應(yīng)高地址端口)兩個(gè)字節(jié)

的內(nèi)容輸出給連續(xù)兩個(gè)端口

《IN指令(從20H端口輸入一個(gè)字)

;方法L字量輸入;方法3:字節(jié)輸入,直接尋址

inax,20hinal,21h

movah,al

inal,20h

;方法2:字量輸入;方法4:字節(jié)輸入,間接尋址

movdx,20hmovdx,21h

inax,dxinal,dx

movah,al

decdx

inal,dx

OUT指令(向300H端口輸出一個(gè)字節(jié))

;唯一的方法:間接尋址,字節(jié)量輸出

moval,bvar;bvar是字節(jié)變量

movdx,300h

outdx,al

6.1.5I/O地址的譯碼

■I/O地址的譯碼方法與存儲(chǔ)器地址的譯碼

方法一樣,但有它的特點(diǎn):

■常采用部分譯碼方式??梢允侵虚g地址線不

連接、也有最低地址線不連接的情況

■為了給系統(tǒng)一定的選擇余地,有些接口電路

利用比較器、開關(guān)或跨接器等進(jìn)行多組I/O

地址的譯碼

■除采用譯碼器、門電路進(jìn)行譯碼外,I/O地

址譯碼還經(jīng)常采用可編程邏輯器件PLD

IBMPC/AT主機(jī)板的I/O譯碼電路

ALS138譯碼器

A_Y0DMA控制器1

B-Y!中斷控制器1

CY2定時(shí)計(jì)數(shù)器

—Y3并行接口電路

&Y4DMA頁面寄存器

E2Y5中斷控制器2

HLDA―E3Y6DMA控制器2

MASTER-

"Y7協(xié)處理器

A。接口芯片內(nèi)部譯碼

IBMPC/XT主機(jī)板的I/O譯碼電路

74LS138

A"DMACS(8237)

B

"INTRCS(8259)

C

"T/CCS(8253)

aPPICS(8255)

AgG2BaWRTDMAPG

A9G2A5)(寫DMA頁面寄存器)

AENG1A

aWRTNMIREG

(寫NMI屏蔽寄存器)

IOW

邏輯門電路進(jìn)行I/O地址譯碼

AEN

Ai

6.1-7數(shù)據(jù)傳送方式

■程序控制下的數(shù)據(jù)傳送——通過CPU執(zhí)行程序

中的I/O指令來完成傳送,又分為:無條件傳送、

查詢傳送、中斷傳送

■直接存儲(chǔ)器存取(DMA)——傳送請(qǐng)求由外設(shè)

向DMA控制器(DMAC)提出,后者向CPU

申請(qǐng)總線,最后DMAC利用系統(tǒng)總線來完成外

設(shè)和存儲(chǔ)器間的數(shù)據(jù)傳送

■I/O處理機(jī)——CPU委托專門的I/O處理機(jī)來管

理外設(shè),完成傳送和相應(yīng)的數(shù)據(jù)處理

6.2無條件傳送方式及其接口

11------------------------------------------4

■在CPU與慢速變化的設(shè)備交換數(shù)據(jù)時(shí),

可以認(rèn)為它們總是處于“就緒”狀態(tài),

隨時(shí)可以進(jìn)行數(shù)據(jù)傳送,這就是無條件

傳送,或稱立即傳送、同步傳送

■適合于簡(jiǎn)單設(shè)備,如LED數(shù)碼管、按鍵

或按紐等

-無條件傳送的接口和操作均十分簡(jiǎn)單

■這種傳送有前提:外設(shè)必須隨時(shí)就緒

無條件傳送:輸入實(shí)例

O

O+5V

數(shù)O

據(jù)O

總O

O

線O

O

MOVDX,160H

INAL,DX

無條件傳送:輸出實(shí)例

o

數(shù)o

o

據(jù)o

總o

線o

o

o

CScx^J

NRMOVDX,160H

MOVAL,[BX]

OUTDX,AL

無條件傳送:輸入輸出接口

——J漢E

next:movdx,8000hDX指向數(shù)據(jù)端口

inal,dx從輸入端口讀開關(guān)狀態(tài)

notal反相

I

outdx,al送輸出端口顯示

calldelay調(diào)子程序延時(shí)

jmpnext重復(fù)

LS273

反相

8D

驅(qū)動(dòng)器

鎖存器

.06.3查詢-----傳------送-------方------式-------及-------其--接口

■CPU需要先了解(查詢)外設(shè)的工作狀

態(tài),然后在外設(shè)可以交換信息的情況下

(就緒)實(shí)現(xiàn)數(shù)據(jù)輸入或輸出

■對(duì)多個(gè)外設(shè)的情況,貝IJCPU按一定順序

依次查詢(輪詢)。先查詢的外設(shè)將優(yōu)

先進(jìn)行數(shù)據(jù)交換

■查詢傳送的特點(diǎn)是:工作可靠,適用面

寬,但傳送效率低

查詢傳送的兩個(gè)環(huán)節(jié)

(1)查詢環(huán)節(jié)

■尋址狀態(tài)口

■讀取狀態(tài)寄存器的標(biāo)志位

■若不就緒就繼續(xù)查詢,直至就緒

⑵傳送環(huán)節(jié)

-尋址數(shù)據(jù)口

-是輸入,通過輸入指令從數(shù)據(jù)端口

讀入數(shù)據(jù)

-是輸出,通過輸出指令向數(shù)據(jù)端口

輸出數(shù)據(jù)

6.3.1查詢輸入接口

movdx,8000h;DX指向狀態(tài)端口

status:inal,dx讀狀態(tài)端口

testal,O1h測(cè)試標(biāo)志位DO

jzstatusD0=0,未就緒,繼續(xù)查詢

incdxD0=1,就緒,DX指向數(shù)據(jù)端口

inal,dx從數(shù)據(jù)端口輸入數(shù)據(jù)

6.3.2查詢輸出接口

movdx,8000h;DX指向狀態(tài)端口

status:inal,dx;讀取狀態(tài)端口的狀態(tài)數(shù)據(jù)

testal,80h;測(cè)試標(biāo)志位D7

jnzstatus;D7=1,未就緒,繼續(xù)查詢

incdx;D7=0,就緒,DX指向數(shù)據(jù)端口

moval,buf;變量buf送AL

outdx,al;將數(shù)據(jù)輸出給數(shù)據(jù)端口

63.3查詢方式的EEPROM編程

next:moval,55h;寫入內(nèi)容=55H

mov[bx],al;寫入存儲(chǔ)單元

nop;空操作指令,起延時(shí)作用

nop

nextl:inal,dx;查詢狀態(tài)口

testal,01h;測(cè)試DO

jznextl;D0=0,芯片還在寫入

incbx;D0=1,寫畢,指針移動(dòng)

loopnext;循環(huán)至全部字節(jié)寫完

6.4中斷傳送方式

主程序

山怏*「青求

執(zhí)

行程

,

CP件

被PU

內(nèi)

執(zhí)

轉(zhuǎn)

預(yù)

務(wù)

結(jié)

束續(xù)執(zhí)行

務(wù).

,

,

點(diǎn)

續(xù)

執(zhí)

,

程流程

6A1中斷傳送與接口

■中斷傳送是一種效率更高的程序傳送方式

■進(jìn)行傳送的中斷服務(wù)程序是預(yù)先設(shè)計(jì)好的

■中斷請(qǐng)求是外設(shè)隨機(jī)向CPU提出的

■CPU對(duì)請(qǐng)求的檢測(cè)是有規(guī)律的:一般是在每

條指令的最后一個(gè)時(shí)鐘周期采樣中斷請(qǐng)求輸

入引腳

■本書主要論述中斷在輸入和輸出方面的應(yīng)用

■中斷還有著非常廣泛的應(yīng)用

中斷輸入接口

D

D0~7

D7

中斷請(qǐng)求觸發(fā)器

6.4.2中斷工作過程

■中斷請(qǐng)求■中斷響應(yīng)

■關(guān)中斷■斷占保護(hù)

/----------------------------------7

,中斷服務(wù)是進(jìn)行數(shù)據(jù)交換的實(shí)質(zhì)性環(huán)節(jié)

一―■幣即月拓一—.恢復(fù)規(guī)場(chǎng)

■開中斷■中斷返回

643中斷優(yōu)先權(quán)

,問題1:系統(tǒng)有多個(gè)中斷請(qǐng)求,

7CPU如何識(shí)別中斷源?

AU1r./

中斷源的識(shí)別

解答1:向量中斷(0640)

解答2:中斷查詢06-12)

中斷查詢接口(06-12)

INTR?

斷A

斷B

斷C

8001H

AO~A15

譯碼

6.4.3中斷優(yōu)先權(quán)(續(xù)1)

、一問題2:有多個(gè)中斷同時(shí)請(qǐng)求,

,'CPU如何應(yīng)對(duì)?

中斷優(yōu)先權(quán)排隊(duì)

解答1:鏈?zhǔn)絻?yōu)先權(quán)排隊(duì)電路06-13)

解答2:優(yōu)先權(quán)編碼電路(圖6?14)

」鏈?zhǔn)街袛鄡?yōu)先權(quán)排隊(duì)電路(S6-13)

「中斷彳量A中斷中中斷矢量口

1ro[ggg]

中斷優(yōu)先權(quán)編碼電路(圖6?14)

--L-中斷請(qǐng)求o

一中斷請(qǐng)求1

—中斷請(qǐng)求2

Do~D?

比較器失效信號(hào)

6A3中斷優(yōu)先權(quán)(續(xù)2)

)問題3:中斷處理過程中,

??又有中斷提出請(qǐng)求,怎么辦?

中斷嵌套

除了硬件上能夠識(shí)別更高級(jí)中斷請(qǐng)求

外,軟件上在中斷服務(wù)程序中需要開放中

斷,才能實(shí)現(xiàn)中斷嵌套

6.5DMA傳送方式

■希望克服程序控制傳送的不足:

外設(shè)一CPU1存儲(chǔ)器

外設(shè)一CPU—存儲(chǔ)器

■直接存儲(chǔ)器存取DMA:

外設(shè)一存儲(chǔ)器

外設(shè)一存儲(chǔ)器

■CPU釋放總線,由DMA控制器管理

DMA傳送的工作過程

⑴CPU對(duì)DMA控制器進(jìn)行初始化設(shè)置

⑵外設(shè)、DMAC和CPU三者通過應(yīng)答信號(hào)

建立聯(lián)系:CPU將總線交給DMAC控制

(3)DMA傳送

■DMA讀存儲(chǔ)器:存儲(chǔ)器一外設(shè)

■DMA寫存儲(chǔ)器:存儲(chǔ)器一外設(shè)

(4)自動(dòng)增減地址和計(jì)數(shù),判斷傳送完成否

DMA傳送流程

傳送方式的比較

■無條件傳送:慢速外設(shè)需與CPU保持同步

■查詢傳送:簡(jiǎn)單實(shí)用,效率較低

■中斷傳送:外設(shè)主動(dòng),可與CPU并行工作,

但每次傳送需要大量額外時(shí)間開銷

■DMA傳送:DMAC控制,外設(shè)直接和存儲(chǔ)

器進(jìn)行數(shù)據(jù)傳送,適合大量、快速數(shù)據(jù)傳

1.了解I/O接口電路的主要功能、

內(nèi)部和外部特點(diǎn)、端口編址方法、

I/O地址譯碼特點(diǎn)

2,掌握輸入輸出指令

3,掌握無條件、查詢傳送方式

第6章■至要*T(續(xù))

4.理解中斷、中斷源、中斷工作

過程、中斷源識(shí)別、優(yōu)先權(quán)排隊(duì)

和中斷嵌套

5.理解DMA傳送的工作過程

習(xí)題6(第171頁)—

6.26.46.56.96.10

W-典

多種多樣的外設(shè)

■工作原理不同

機(jī)械、電子、機(jī)電、電磁…

■傳送信息類型多樣

數(shù)字量、模擬量、開關(guān)量1%A[s甘,正段[那曲~L[:[;?述皿

同二色代1工位市加1:F[門信

際鼠;I[;W施梅前

■傳送速度差別極大

■傳送方式不盡相同

串行、并行

■編碼方式不同

二進(jìn)制、BCD碼、ASCII碼

返回

輸出接口的鎖存環(huán)節(jié)

內(nèi)

數(shù)

數(shù)

據(jù)

據(jù)

鎖存控制

返回

輸出接口的鎖存、緩沖環(huán)節(jié)

內(nèi)

數(shù)

據(jù)

鎖存控制

返回

輸入接口的緩沖環(huán)節(jié)

數(shù)

據(jù)

選通

返回

輸入接口的鎖存、緩沖環(huán)節(jié)

數(shù)

據(jù)

Qc

選通鎖存控制

返回

I(PORT)

■端口泛指I/O地址,通常對(duì)應(yīng)寄存器

■一個(gè)接口電路可以具有多個(gè)I/O端口,

每個(gè)端口用來保存和交換不同的信息

■數(shù)據(jù)寄存器、狀態(tài)寄存器和控制寄存器

占有的I/O地址常依次被稱為數(shù)據(jù)端口、

狀態(tài)端口和控制端口,用于保存數(shù)據(jù)、

狀態(tài)和控制信息

■輸入、輸出端口可以是同一個(gè)I/O地址

10110

10112INAL,21H

存儲(chǔ)器

CPU系統(tǒng)

*

CB

DB

A9A8A7A6A5

AB

TT*f

」A

譯AOA1A0

B碼f氐—?-cs

C器1011端口11一

二B

G2A20M端口小)Illi端口2

一G2421i端l」3I"

G121h|fOi]

[計(jì)i端口4卜;

8259,8253

INAL.21H返回

101IEMOVAL,9019^

10120OUT4311,AL卜___________

CPU系統(tǒng)

CB

DB

AB

r*r

A譯

溫馨提示

  • 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. 人人文庫網(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)論