第2章 IO端口地址譯碼技術(shù)_第1頁(yè)
第2章 IO端口地址譯碼技術(shù)_第2頁(yè)
第2章 IO端口地址譯碼技術(shù)_第3頁(yè)
第2章 IO端口地址譯碼技術(shù)_第4頁(yè)
第2章 IO端口地址譯碼技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩23頁(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)介

第2章IO端口地址譯碼技術(shù)

§2.1I/O端口概述一。IO端口及其編碼方式內(nèi)存內(nèi)存接口CPU系統(tǒng)總線:地址總線XA19-0,數(shù)據(jù)總線XD7-0,控制總線/XIOR……智能儀器接口通信接口過(guò)程控制接口輸入接口輸出接口外存接口數(shù)字化存儲(chǔ)示

波器,數(shù)字化

萬(wàn)用表終端

調(diào)制解調(diào)器

TTY電傳機(jī)A/D轉(zhuǎn)換器

開關(guān)量輸入

D/A轉(zhuǎn)換器

開關(guān)量輸出鍵盤數(shù)字化儀

光筆圖形輸入

聲音輸入

掃描儀點(diǎn)陣打印CRT顯示

激光打印液晶顯示

噴墨打印繪圖儀

X-Y記錄儀硬盤軟盤

光盤磁帶系統(tǒng)總線接口1.IO端口端口是接口電路中能被CPU直接訪問(wèn)的寄存器的地址。計(jì)算機(jī)給接口電路中的每個(gè)寄存器分配一個(gè)地址。IO操作指CPU對(duì)設(shè)備相關(guān)的IO端口的訪問(wèn)操作,而不是對(duì)IO設(shè)備的操作二。IO端口地址編碼方式1、統(tǒng)一編址方式端口地址與存儲(chǔ)器地址統(tǒng)一編址譯

器CPUAB去存儲(chǔ)器芯片去I/O接口芯片Y0---iYi+1---j優(yōu)點(diǎn):指令豐富,電路簡(jiǎn)單。缺點(diǎn):外設(shè)占用存儲(chǔ)器空間,內(nèi)存容量減小。譯

器8088CPU(最大模式)系統(tǒng)總線AB去存儲(chǔ)器去I/O接口/Y0-i/Y0-j譯

器/XMENR/XMEMW/XIOR/XIOW注:最大模式下系統(tǒng)的控制總線來(lái)源于總線控制器8288和DMA總線仲裁邏輯2、獨(dú)立編址方式

優(yōu)點(diǎn):存儲(chǔ)器和外設(shè)都有自己的地址譯碼器,地址空間獨(dú)立,互不影響。用專用的I/O指令訪問(wèn)I/O端口。三。獨(dú)立編址方式的端口訪問(wèn)輸入指令:INAL,n;n為8位IO端口地址INAL,DX;16位地址用DX間址輸出指令:OUTn,ALOUTDX,AL1.IO地址寬度

IO地址在0000H-00FFH,稱為8位地址寬度;

IO地址在0100H-FFFFH,稱為16位地址寬度說(shuō)明:不論IO地址寬度是8位,還是16位,都可以用DX間接尋址;只有IO地址是8位寬度才能直接尋址。2.IO數(shù)據(jù)寬度當(dāng)一次傳輸1個(gè)端口數(shù)據(jù),即8位數(shù)據(jù)時(shí),用AL累加器當(dāng)一次傳輸連續(xù)2個(gè)端口數(shù)據(jù),即16位時(shí),用AX累加器2.2IO端口地址分配一。IO接口硬件分類系統(tǒng)板(主板)上的IO芯片(如定時(shí)器,并口等等)

IO擴(kuò)展槽上的接口控制卡(聲卡、網(wǎng)卡、軟驅(qū)卡、顯卡)二。IO端口地址分配參看表2.1表2.2

三。IO端口地址選用的原則被系統(tǒng)配置已經(jīng)占用的不可用計(jì)算機(jī)廠家聲明保留的地址不要使用一般IBM實(shí)驗(yàn)卡用300H-31FH。2.3I/O端口地址譯碼一。IO地址譯碼電路工作原理及作用輸入信號(hào):地址信號(hào),控制信號(hào)輸出信號(hào):“選中”信號(hào)。原理:譯碼器根據(jù)地址和控制信號(hào),產(chǎn)生選中信號(hào)。不同的地址控制組合,最多只可能使一根“選中”信號(hào)有效,該有效的選中信號(hào)用于打開它所連接的IO接口芯片的數(shù)據(jù)線與系統(tǒng)線的通路總開關(guān)。地址譯碼器地址信號(hào)控制信號(hào)“選中”信號(hào)“地址”信號(hào)線“控制”信號(hào)線“選中”信號(hào)線在這一段時(shí)間,3個(gè)控制信號(hào)沒(méi)有同時(shí)有效,譯碼器“選中”信號(hào)線輸出全部無(wú)效000000000000111111111111控制信號(hào)有效時(shí),地址000時(shí),僅/IOY0有效。其余選中線全無(wú)效

二。I/O端口地址譯碼方法:1.簡(jiǎn)單接口芯片,只含有一個(gè)端口,內(nèi)部不帶帶譯碼器,譯碼器設(shè)計(jì)原則:由“IO地址”信號(hào)和“IO讀/寫”控制信號(hào)的不同組合實(shí)現(xiàn)。控制芯片內(nèi)寄存器的入口或出口開關(guān)。T1T2T3、TWT40026H號(hào)IO端口地址來(lái)自CPU內(nèi)AL中的數(shù)據(jù)向IO端口寫數(shù)據(jù)時(shí)(OUT0026H,AL)系統(tǒng)總線時(shí)序(假設(shè)(AL)=22H)CLKXA15-0XREADYXD7-00026H22HT1T2T3、TWT40025H號(hào)IO端口地址來(lái)自0025H號(hào)IO端口的數(shù)據(jù)從IO端口讀出數(shù)據(jù)(INAL,0025H)時(shí)系統(tǒng)總線時(shí)序((25H端口)=11H)CLKXA15-0XREADYXD7-011H0025H外部譯

器1個(gè)存儲(chǔ)單元(8bit)8個(gè)&&/XIOW/XIORD0-7XA0-15單個(gè)端口IO芯片(如373)內(nèi)部讀寫控制原理圖8個(gè)同時(shí)控制8個(gè)3態(tài)門GOEXD0-7I寫I讀/Y控制線始終保持有效或不帶控制線

二。I/O端口地址譯碼方法:2.多端口芯片(內(nèi)部帶譯碼器)由地址信號(hào)和控制信號(hào)的不同組合實(shí)現(xiàn)。其原則是:(2).低位地址線直接連接到I/O接口芯片,由內(nèi)部譯碼器實(shí)現(xiàn)選中存儲(chǔ)單元或IO端口。例如:8255內(nèi)部有四個(gè)端口寄存器,則至少要留出2低位地址線用于8255內(nèi)部尋找寄存器(1).高位地址與CPU的控制信號(hào)組合,經(jīng)外部譯碼電路產(chǎn)生I/O接口芯片的片選信號(hào)(/CS),實(shí)現(xiàn)選中芯片(就是打開芯片內(nèi)部譯碼器)。譯

器1個(gè)存儲(chǔ)單元(8bit)8個(gè)&&/WR/RDD0-7A0~i存儲(chǔ)器或IO接口芯片內(nèi)部讀寫控制原理圖/CS接自外部譯碼器“選中”線8個(gè)同時(shí)控制8個(gè)3態(tài)門內(nèi)部選中線,用于選中1個(gè)IO端口/Y0I寫I讀外部譯

器XAi+1~9/YnXA0-i譯

器1個(gè)存儲(chǔ)單元(8bit)8個(gè)&&WRRDD0-7A0-i/CS8個(gè)同時(shí)控制8個(gè)3態(tài)門內(nèi)部選中線,用于選中1個(gè)IO端口外譯

器/XIOW/XIORXA0-iXAi+1--9多端口芯片與系統(tǒng)總線連接圖XD0-7I寫I讀/Y0/Yn三。IO端口地址譯碼電路設(shè)計(jì)1.固定式端口地址譯碼指一旦譯碼電路設(shè)計(jì)好,接口用到的IO地址不能更改例1某接口的IO端口地址為2F8H,在非DMA期間只讀,為該接口設(shè)計(jì)譯碼器。分析:輸入信號(hào):XA0-XA9,XIOR,XAEN輸出信號(hào):一根選中信號(hào)/Y(因?yàn)樵撟g碼器僅為這一個(gè)接口電路服務(wù))輸入輸出邏輯關(guān)系:XA9XA8XA7XA6XA5XA4XA3XA2XA1XA0XAEN/XIOR+/Y當(dāng)XA9-0=2F8H,/XIOR=0,XAEN=0時(shí),/Y=0;否則/Y=1寫出邏輯表達(dá)式:例2。使用74LS138設(shè)計(jì)一個(gè)系統(tǒng)板上IO端口地址譯碼電路,并且讓每個(gè)接口芯片內(nèi)部可以有32個(gè)端口,非DMA期間可以訪問(wèn)接口芯片。分析:輸入XA9-5,XAEN。因?yàn)榈?位地址用來(lái)選中芯片內(nèi)部端口,不作為外部譯碼器的輸入。一片138只能譯碼3位地址,這里用138對(duì)XA7-XA5譯碼。輸出8個(gè)芯片選中信號(hào)/Y0-/Y7。邏輯關(guān)系:XAEN=0,XA9XA8=00時(shí),使譯碼器工作。

XA7-XA5=000時(shí),輸出/Y0=0,其余全無(wú)效為1。

XA7-XA5=001時(shí),輸出/Y1=0,其余全無(wú)效為1XA7-XA5=010時(shí),輸出/Y2=0,其余全無(wú)效為1……參看課本表2.574LS138的邏輯真值表,給出設(shè)計(jì)如下2.可選式端口地址譯碼例3。根據(jù)下圖的可選式地址譯碼電路,分析開關(guān)不同狀態(tài)時(shí),輸出選中信號(hào)對(duì)應(yīng)的IO地址總結(jié):為單個(gè)端口設(shè)計(jì)譯碼,一般對(duì)所有地址線譯碼;為芯片設(shè)計(jì)外部譯碼器,一般對(duì)高位地址譯碼,低位地址讓芯片自己內(nèi)部譯碼,選內(nèi)部端口

S0

S1

S2

S3

A74LS138/Y0

B/Y1

C/Y2

/Y3

/Y4

/G2B/Y5

/G2A/Y6

G1/Y7

XA2

XA3

XA4

XA5

/XAEN

A074LS85

A1

A2

A3

B0

B1

B2

B3

Oa=b

Ia=b

Ia<b

Ia>b

Vcc

XA6

XA7

XA8

XA9

分析:假如S0S1合上,S3S2斷開。B3-0=1100,只有當(dāng)XA9-6=1100時(shí),74LS85Oa=b端才輸出1。必須要使74LS138工作,則必須/XAEN=0,XA5=0。所以:要/Y0=0,必須XA9-2為11000000

要/Y1=0,必須XA9-2為11000001……選中/Y0的地址是XA9-0為11000000XX,即300H-303H選中/Y1的地址是XA9-0為11000001XX,即304H-307H選中/Y7的地址是XA9-0為11000111XX,即31CH-31FH思考,如果開關(guān)S1S3合上,S2S0斷開,選中/Y0-/Y7的地址分別是什么?思考:在PC機(jī)上設(shè)計(jì)接口,你設(shè)計(jì)的接口IO地址必須不能與其他設(shè)備接口IO地址沖突,你能想到用什么辦法解決這個(gè)問(wèn)題?方案一:先查PC機(jī)硬件說(shuō)明書,看那些IO地址已經(jīng)被占用。缺點(diǎn)是麻煩,且非PC機(jī)器廠家生產(chǎn)的設(shè)備(如擴(kuò)展接口卡)地址,必須通過(guò)查該卡說(shuō)明書才能了解它占用的IO地址。不可能??!你怎么知道你的卡被客戶裝在哪臺(tái)機(jī)器上?客戶計(jì)算機(jī)上裝了哪些其它廠家的卡,你怎么能預(yù)先知道呢?客戶買了你的卡回家能不能用只有靠運(yùn)氣了!天吶,那怎么辦???!哇!方案二:先查PC機(jī)硬件說(shuō)明書,看哪些IO地址已經(jīng)被PC機(jī)廠家的標(biāo)準(zhǔn)設(shè)備占用。再設(shè)計(jì)一個(gè)可選式譯碼器,萬(wàn)一和其它廠家的設(shè)備接口沖突,用跳線開關(guān)改變你的IO地址用以避免沖突缺點(diǎn):麻煩,普通客戶買了你的設(shè)備,你要求他回家跳線,對(duì)他來(lái)說(shuō)難度太大。在486以前的計(jì)算機(jī)開發(fā)接口就是這么辦的??!也要靠運(yùn)氣哦,萬(wàn)一怎么調(diào)整也無(wú)法避免沖突怎么辦?別想啦,還能怎么辦?退貨,買其他廠家的卡試試運(yùn)氣唄,客戶郁

溫馨提示

  • 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)論