第 5 章處理器總線時(shí)序和系統(tǒng)總線_第1頁
第 5 章處理器總線時(shí)序和系統(tǒng)總線_第2頁
第 5 章處理器總線時(shí)序和系統(tǒng)總線_第3頁
第 5 章處理器總線時(shí)序和系統(tǒng)總線_第4頁
第 5 章處理器總線時(shí)序和系統(tǒng)總線_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第 5 章 處理器總線時(shí)序和系統(tǒng)總線 本章講述:5.1 8086的引腳功能5.2 8086處理器時(shí)序5.3 系統(tǒng)總線5.1 8086的引腳功能 8086微處理器是一個(gè)雙列直插式、40個(gè)引腳的器件,它的引腳功能與系統(tǒng)的組態(tài)有關(guān)。1. 8086 CPU的兩種組態(tài) 當(dāng)8086 CPU與存儲(chǔ)器和外設(shè)構(gòu)成一個(gè)計(jì)算機(jī)的硬件系統(tǒng)時(shí),根據(jù)所連的存儲(chǔ)器和外設(shè)的規(guī)模,8086可以有兩種不同的組態(tài)。目前常用的是最大組態(tài)。要求有較強(qiáng)的驅(qū)動(dòng)能力。此時(shí)8086要通過一組總線控制器8288來形成各種總線周期,控制信號(hào)由8288供給,如圖5-1所示。當(dāng)8086處在最大狀態(tài)時(shí)的腳24腳31的含義為: S2#、S1#、S0#(輸

2、出,三態(tài))這些狀態(tài)線的功能如表5-1所示。這些信號(hào)由8288總線控制器用以產(chǎn)生有關(guān)存儲(chǔ)器訪問,或IO訪問的總線周期和所需要的控制信號(hào)。在時(shí)鐘周期T4狀態(tài)期間, S2#、Sl#、S0#的任何變化,指示一個(gè)總線周期的開始;而它們?cè)赥3或Tw期間返回到無源狀態(tài)(111),則表示一個(gè)總線周期的結(jié)束。當(dāng)CPU處在DMA響應(yīng)狀態(tài)時(shí),這些線浮空。RQ#/GT#0,RQ#GT#1(輸入輸出)這些請(qǐng)求允許(RequestGrant)腳,是由外部的總線主設(shè)備請(qǐng)求總線并促使CPU在當(dāng)前總線周期結(jié)束后讓出總線用的。每一個(gè)腳是雙向的,0比l有更高的優(yōu)先權(quán)。這些線的內(nèi)部有一個(gè)上拉電阻,所以允許這些引腳不連接。請(qǐng)求和允許的

3、順序如下: 由其它的總線主設(shè)備,輸送一個(gè)寬度為一個(gè)時(shí)鐘周期的脈沖給8086,表示總線請(qǐng)求,相當(dāng)于HOLD信號(hào)。 CPU在當(dāng)前總線周期的T4或下一個(gè)總線周期的T1狀態(tài),輸出一個(gè)寬度為一個(gè)時(shí)鐘周期的脈沖給請(qǐng)求總線的設(shè)備,作為總線響應(yīng)信號(hào)(相當(dāng)于HLDA信號(hào)),從下一個(gè)時(shí)鐘周期開始,CPU釋放總線。 當(dāng)外設(shè)的DMA傳送結(jié)束時(shí),總線請(qǐng)求主設(shè)備輸出一個(gè)寬度為一個(gè)時(shí)鐘周期的脈沖給CPU,表示總線請(qǐng)求的結(jié)束。于是CPU在下一個(gè)時(shí)鐘周期開始又控制總線。每一次總線主設(shè)備的改變,都需要這樣的三個(gè)脈沖,脈沖為低電平有效。在兩次總線請(qǐng)求之間,至少要有一個(gè)空時(shí)鐘周期。LOCK#(輸出,三態(tài))低電平有效,當(dāng)其有效時(shí),別的

4、總線主設(shè)備不能獲得對(duì)系統(tǒng)總線的控制。LOCK#信號(hào)由前綴指令“LOCK”使其有效,且在下一個(gè)指令完成以前保持有效。當(dāng)CPU處在DMA響應(yīng)狀態(tài)時(shí),此線浮空。QS1、QS0(輸出)QS1和QS0提供一種狀態(tài)(Queue Status)允許外部追蹤8086內(nèi)部的指令隊(duì)列,如表5-2所示。隊(duì)列狀態(tài)在CLK周期期間是有效的,在這以后,隊(duì)列的操作已完成。BHE#/ST(輸出)在總線周期的T1狀態(tài),在bhe#/S7引腳輸出信號(hào),表示高8位數(shù)據(jù)線AD15AD0上的數(shù)據(jù)有效;在T2、T3、T4、及Tw狀態(tài),BHE#/S7引腳輸出狀態(tài)信號(hào)S7。28086的引線A19S6、A18S5、A17S4、A16S3(輸出,

5、三態(tài)) 這些引線也是多路開關(guān)的輸出,在存儲(chǔ)器操作的總線周期的T1狀態(tài)時(shí),這些線上是最高四位地址(也需要外部鎖存)。在IO操作時(shí),這些地址不用,故在T1狀態(tài)時(shí)全為低電平。在存儲(chǔ)器和IO操作時(shí),這些線又可以用來作為狀態(tài)信息(在T2、T3、TW狀態(tài)時(shí))。但S6始終為低;S5是標(biāo)志寄存器中中斷允許標(biāo)志的狀態(tài)位,它在每一個(gè)時(shí)鐘周期開始時(shí)被修改;S4和S3用以指示是哪一個(gè)段寄存器正在被使用。 在DMA方式時(shí),這些線浮空。 RD#(輸出,三態(tài)) 讀選通信號(hào),低電平有效。當(dāng)其有效時(shí),表示正在進(jìn)行存儲(chǔ)器讀或IO讀。在DMA方式時(shí),此線浮空。READY(輸入) 準(zhǔn)備就緒信號(hào),這是從所尋址的存儲(chǔ)器或IO設(shè)備來的響應(yīng)

6、信號(hào),高電平有效。當(dāng)其有效時(shí),將完成數(shù)據(jù)傳送。CPU在T3周期的開始采樣READY線,若其為低,則在T3周期結(jié)束以后,插入TW周期,直至READY變?yōu)橛行В瑒t在此TW周期結(jié)束以后,進(jìn)入T4周期,完成數(shù)據(jù)傳送。INTR(輸入) 可屏蔽中斷請(qǐng)求信號(hào),這是一個(gè)電平觸發(fā)輸入信號(hào),高電平有效。CPU在每一個(gè)指令周期的最后一個(gè)T狀態(tài)采樣這條線,以決定是否進(jìn)入中斷響應(yīng)周期。這條線上的請(qǐng)求信號(hào),可以用軟件復(fù)位內(nèi)部的中斷允許位來加以屏蔽。TEST#(輸入) 這個(gè)檢測(cè)輸入信號(hào)是由“Wait”指令來檢查的。若此輸入腳有效(低電平有效),則執(zhí)行繼續(xù),否則處理器就等待進(jìn)入空轉(zhuǎn)狀態(tài)。這個(gè)信號(hào)在每一個(gè)時(shí)鐘周期的上升沿由內(nèi)部

7、同步。NMI(輸入) 非屏蔽中斷輸入信號(hào)(NonMaskable Interrut),這是一個(gè)邊沿觸發(fā)信號(hào)。這條線上的中斷請(qǐng)求信號(hào)不能用軟件來加以屏蔽,所以這條線上由低到高的變化,就在當(dāng)前指令結(jié)束以后引起中斷。RESET(輸入) 復(fù)位輸入信號(hào),有效的復(fù)位信號(hào)引起處理器立即結(jié)束當(dāng)前操作。這個(gè)信號(hào)必須保持有效(高電平)至少4個(gè)時(shí)鐘周期,以完成內(nèi)部的復(fù)位過程。當(dāng)其返回為低電平時(shí),它重新啟動(dòng)執(zhí)行。CLK(輸入) 時(shí)鐘輸入信號(hào),它提供了處理器和總線控制器的定時(shí)操作。8086的標(biāo)準(zhǔn)時(shí)鐘頻率為8MHz。VCC是5V10%的電源腳。GND接地線。5.2 8086處理器時(shí)序 時(shí)序的基本概念 計(jì)算機(jī)的工作是在時(shí)鐘

8、脈沖CLK的統(tǒng)一控制下,一個(gè)節(jié)拍一個(gè)節(jié)拍地實(shí)現(xiàn)的。在CPU 執(zhí)行某一個(gè)程序之前,先要把程序(已變?yōu)榭蓤?zhí)行的目標(biāo)程序)放到存儲(chǔ)器的某個(gè)區(qū)域。在啟動(dòng)執(zhí)行后,CPU就發(fā)出讀指令的命令;存儲(chǔ)器接到這個(gè)命令后,從指定的地址(在8086中由碼段寄存器CS和指令指針I(yè)P給定)讀出指令,把它送至CPU的指令寄存器中;CPU對(duì)讀出指令經(jīng)過譯碼器分析之后,發(fā)出一系列控制信號(hào),以執(zhí)行指令規(guī)定的全部操作,控制各種信息在機(jī)器(或系統(tǒng))各部件之間傳送。 8086微處理器每條指令的執(zhí)行有取指、譯碼、執(zhí)行這樣的階段,但由于微處理器內(nèi)有總線接口單元BIU和執(zhí)行單元EU,所以在執(zhí)行一條指令的同時(shí)(這在EU中操作),BIU就可以取

9、下一條指令,它們?cè)跁r(shí)鐘上是重疊的。所以,從總體上來說,似乎不存在取指階段,這種功能就稱為“流水線”功能。目前,在高檔微處理器中往往有多條流水線,使微處理器的許多內(nèi)部操作“并行”進(jìn)行,從而大大提高了微處理器的工作速度。 執(zhí)行一條指令的一系列動(dòng)作,都是在時(shí)鐘脈沖CLK的統(tǒng)一控制下一步一步進(jìn)行的,它們都需要一定的時(shí)間(當(dāng)然有些操作在時(shí)間上是重疊的)。如何確定執(zhí)行一條指令所需要的時(shí)間呢? 執(zhí)行一條指令所需要的時(shí)間稱為指令周期(Instruction Cycle)。但是,8086中不同指令的指令周期是不等長的。因?yàn)椋紫?086的指令是不等長的,最短的指令是一個(gè)字節(jié),大部分指令是兩個(gè)字節(jié),但由于各種不同

10、尋址方式又可能要附加幾個(gè)字節(jié),8086中最長的指令可能要6個(gè)字節(jié)。 指令的最短執(zhí)行時(shí)間是兩個(gè)時(shí)鐘周期,一般的加、減、比較、邏輯操作是幾十個(gè)時(shí)鐘周期,最長的為16位數(shù)乘除法操作約需要200個(gè)時(shí)鐘周期。 指令周期又分為一個(gè)個(gè)總線周期。每當(dāng)CPU要從存儲(chǔ)器或IO端口,讀寫一個(gè)字節(jié)(或字)就是一個(gè)總線周期(Bus Cycle)。所以,對(duì)于多字節(jié)指令,取指就需要若干個(gè)總線周期;在指令的執(zhí)行階段,不同的指令也會(huì)有不同的總線周期,有的只需要一個(gè)總線周期,而有的可能需要若干個(gè)總線周期。一個(gè)基本的總線周期的時(shí)序如圖5-3所示。 每個(gè)總線周期通常包含4個(gè)T狀態(tài)(T state),即圖5-6中的T1、T2、T3、T

11、4,每個(gè)T狀態(tài)是8086中處理動(dòng)作的最小單位,它就是時(shí)鐘周期(Clock Cycle)。早期的8086的時(shí)鐘頻率為8MHz,故時(shí)鐘周期或者一個(gè)T狀態(tài)為125ns。 雖然各條指令的指令周期有很大差別,但它們?nèi)匀皇怯梢韵乱恍┗镜目偩€周期組成的: (1)存儲(chǔ)器讀或?qū)懣偩€周期;(2)輸入輸出端口的讀或?qū)懣偩€周期;(3)中斷響應(yīng)周期。 8086 CPU的每條指令都有自己的固定的時(shí)序。例如從存儲(chǔ)器讀一個(gè)字節(jié)(或字)的操作總線周期是由4個(gè)T狀態(tài)組成,如圖5-7所示。 CPU在T1狀態(tài)把地址信息從地址線A19A16、AD15AD0上輸出,并且立即發(fā)出地址鎖存信號(hào)ALE,把在A19A16上出現(xiàn)的高4位地址和在

12、AD15AD0上出現(xiàn)的低16位地址,在外部地址鎖存器上鎖存。這樣,20位地址信息就送至存儲(chǔ)器。CPU也是在T1狀態(tài)發(fā)出區(qū)分是存儲(chǔ)器還是IO操作的IO/M#信號(hào)。 在T2狀態(tài),CPU發(fā)出讀命令信號(hào)(若使用接口芯片8286,還有相應(yīng)的控制信號(hào)DTR和DEN)。有了這些控制信號(hào),存儲(chǔ)器就可以實(shí)現(xiàn)讀出。在這些信號(hào)發(fā)出后,CPU等待一段時(shí)間,到它的T4狀態(tài)的前沿(下降沿)采樣數(shù)據(jù)總線AD15AD0以獲取數(shù)據(jù),從而結(jié)束此總線周期。 存儲(chǔ)器從接收到地址信號(hào),要經(jīng)過地址譯碼選擇,選中所需要的單元,IO端口也如此。從接收到IO/M#信號(hào)和RD#信號(hào)(這些信號(hào)一般用作選通信號(hào)),到信息從被選中的單元讀出送至數(shù)據(jù)總

13、線也都是需要一定時(shí)間的,它是否能在T4周期的前沿之前完成,這完全取決于存儲(chǔ)電路或IO端口本身。所以,在CPU的時(shí)序和存儲(chǔ)器或IO端口的時(shí)序之間存在配合問題。 CPU中設(shè)計(jì)了一條準(zhǔn)備就緒READY輸入線,這是由存儲(chǔ)器或IO端口輸送給CPU的狀態(tài)信號(hào)線;在存儲(chǔ)器或IO端口對(duì)數(shù)據(jù)的讀寫操作完成時(shí),使READY線有效(即為高電平)。CPU在T3狀態(tài)的前沿(下降沿)采樣READY線,若其有效,則為正常周期,在T3狀態(tài)結(jié)束后進(jìn)入T4狀態(tài),且CPU在T4狀態(tài)的前沿采樣數(shù)據(jù)總線,完成一個(gè)讀寫周期;若CPU在T3狀態(tài)的前沿采樣到READY為無效(低電平),則在T3周期結(jié)束后,進(jìn)入TW周期(等待周期),而且在TW

14、周期的前沿采樣READY線,只要其為無效,就繼續(xù)進(jìn)入下一個(gè)TW周期,直至在某一個(gè)TW周期的前沿采樣到READY為有效時(shí),則在此TW周期結(jié)束時(shí)進(jìn)入T4周期,在T4狀態(tài)的前沿采樣數(shù)據(jù)線,完成一個(gè)讀寫周期,其過程如圖5-5所示。 因此,在設(shè)計(jì)系統(tǒng)的硬件電路時(shí),要根據(jù)CPU與所選的存儲(chǔ)器的讀寫速度,分析能否在時(shí)序上很好地配合,若需要插入TW周期,就要設(shè)計(jì)一個(gè)硬件電路來產(chǎn)生適當(dāng)?shù)腞EADY信號(hào)。 有了READY信號(hào)線,就可以使CPU與任何速度的存儲(chǔ)器相連接(當(dāng)然存儲(chǔ)器的速度還是要由系統(tǒng)的要求來選定)。但是,這說明了當(dāng)CPU與存儲(chǔ)器或IO端口連接時(shí),要考慮相互之間的時(shí)序配合問題。2. 8086 CPU的典

15、型時(shí)序 在最大組態(tài)下,8086的基本總線周期由4個(gè)T狀態(tài)組成。在T1狀態(tài)時(shí),8086發(fā)出20位地址信號(hào),同時(shí)送出狀態(tài)信號(hào)S0#、S1#、S2#給8288總線控制器。8288對(duì)S0#S2#進(jìn)行譯碼, 產(chǎn)生相應(yīng)命令的輸出控制信號(hào)。首先,8288在T1期間送出地址鎖存允許信號(hào)ALE,將CPU輸出的地址信息鎖存至地址鎖存器中,再輸出到系統(tǒng)地址總線上。 在T2狀態(tài),8086開始執(zhí)行數(shù)據(jù)傳送操作。此時(shí),8086內(nèi)部的多路開關(guān)進(jìn)行切換,將地址數(shù)據(jù)線AD0AD15上的地址撤消,切換成數(shù)據(jù)總線,為讀寫數(shù)據(jù)作準(zhǔn)備。 8288發(fā)出數(shù)據(jù)總線允許信號(hào)和數(shù)據(jù)發(fā)送接收控制信號(hào)DTR#允許數(shù)據(jù)收發(fā)器工作,使數(shù)據(jù)總線與8086

16、的數(shù)據(jù)線接通,并控制數(shù)據(jù)傳送的方向。同樣,把地址狀態(tài)線A16S3A19/S6切換成與總線周期有關(guān)的狀態(tài)信息,指示若干與周期有關(guān)的情況。 在T3周期開始的時(shí)鐘下降沿上,8086采樣READY線。如果READY信號(hào)有效(高電平),則在T3狀態(tài)結(jié)束后進(jìn)入T4狀態(tài),在T4狀態(tài)開始的時(shí)鐘下降沿,把數(shù)據(jù)總線上的數(shù)據(jù)讀入CPU或?qū)戇M(jìn)地址選中的單元。在T4狀態(tài),結(jié)束總線周期。 如果訪問的是慢速存儲(chǔ)器或外設(shè)接口,則應(yīng)該在T1狀態(tài)輸出的地址經(jīng)過譯碼選中某個(gè)單元或設(shè)備后,立即驅(qū)動(dòng)READY信號(hào)到低電平。8086在T3狀態(tài)采樣到READY信號(hào)無效,就會(huì)插入等待周期TW,在TW狀態(tài)CPU繼續(xù)采樣READY信號(hào);直至其變

17、為有效后再進(jìn)入T4狀態(tài),完成數(shù)據(jù)傳送,結(jié)束總線周期。 在T4狀態(tài),8086完成數(shù)據(jù)傳送,狀態(tài)信號(hào)S0#S2#變?yōu)闊o操作的過渡狀態(tài)。在此期間,8086結(jié)束總線周期,恢復(fù)各信號(hào)線的初態(tài),準(zhǔn)備執(zhí)行下一個(gè)總線周期。 (1) 存儲(chǔ)器讀周期和存儲(chǔ)器寫周期存儲(chǔ)器讀寫周期由4個(gè)時(shí)鐘周期組成,即使用T1、T2、T3和T4四個(gè)狀態(tài)。(2) IO讀和IO寫周期 8086微處理器的基本IO讀寫總線周期時(shí)序與存儲(chǔ)器讀寫周期時(shí)序是類似的。但通常IO接口電路的工作速度較慢,往往要插入等待狀態(tài)。即基本的IO操作是由T1、T2、T3、TW、T4 組成,占用5個(gè)時(shí)鐘周期。(3) 空轉(zhuǎn)周期若CPU不執(zhí)行機(jī)器周期,即不進(jìn)行存儲(chǔ)器或I

18、O操作,則總線接口執(zhí)行空轉(zhuǎn)周期(一系列的T1狀態(tài))。在這些空轉(zhuǎn)周期,CPU在高位地址線上仍然驅(qū)動(dòng)上一個(gè)機(jī)器周期的狀態(tài)信息。若上一個(gè)機(jī)器周期是寫周期,則在空轉(zhuǎn)狀態(tài),CPU在AD15AD0上仍輸出上一個(gè)機(jī)器周期要寫的數(shù)據(jù),直至下一個(gè)機(jī)器周期的開始。在這些空轉(zhuǎn)周期,CPU進(jìn)行內(nèi)部操作。 (4) 中斷響應(yīng)周期當(dāng)外部中斷源通過INTR或NMI引線向CPU發(fā)出中斷請(qǐng)求信號(hào)時(shí),若是INTR引線上的信號(hào),則只有在標(biāo)志位I1(即CPU處在開中斷)的條件下,CPU才會(huì)響應(yīng)。CPU在當(dāng)前指令執(zhí)行完以后,響應(yīng)中斷。在響應(yīng)中斷時(shí),CPU執(zhí)行兩個(gè)連續(xù)的中斷響應(yīng)周期,如圖5-12所示。在每一個(gè)中斷響應(yīng)的機(jī)器周期,CPU都輸

19、出中斷響應(yīng)信號(hào)INTA#。在第一個(gè)機(jī)器周期,CPU使AD15AD0浮空。在第二個(gè)機(jī)器周期,被響應(yīng)的外設(shè)(或接口芯片)應(yīng)向數(shù)據(jù)總線輸送一個(gè)字節(jié)的中斷向量號(hào),CPU讀入中斷向量號(hào)后,就可以在中斷向量表上找到該設(shè)備服務(wù)程序的入口地址,轉(zhuǎn)入中斷服務(wù)。 (5) 系統(tǒng)復(fù)位8086的RESET引線,可以用來啟動(dòng)或再啟動(dòng)系統(tǒng)。當(dāng)8086在RESET引線上檢測(cè)到一個(gè)脈沖的正沿,便終結(jié)所有的操作,直至RESET信號(hào)變低。這時(shí),寄存器被初始化到復(fù)位狀態(tài)。在復(fù)位的時(shí)候,碼段寄存器和指令指針分別被初始化為0FFFFH和0。因此,8086在復(fù)位后執(zhí)行的第一條指令,在內(nèi)存的絕對(duì)地址0FFFF0H處。在正常情況下,從0FFF

20、F0H單元開始,存放一條段交叉直接JMP指令,以轉(zhuǎn)移到系統(tǒng)程序的實(shí)際開始處。在復(fù)位時(shí),由于把標(biāo)志位全清除了,所以系統(tǒng)對(duì)INTR引線上的請(qǐng)求是屏蔽的。因此,系統(tǒng)軟件在系統(tǒng)初始化時(shí),就應(yīng)立即用指令來開放中斷(即用STI指令)。 (6) CPU進(jìn)入和退出保持狀態(tài)的時(shí)序當(dāng)系統(tǒng)中有別的總線主設(shè)備請(qǐng)求總線時(shí),總線主設(shè)備向CPU輸送請(qǐng)求信號(hào)HOLD,HOLD信號(hào)與時(shí)鐘異步,則在下一個(gè)時(shí)鐘的上升沿同步HOLD信號(hào)。CPU接收同步的HOLD信號(hào)后,在當(dāng)前總線周期的T4,或下一個(gè)總線周期的T1的后沿輸出保持響應(yīng)信號(hào)HLDA,緊接著從下一個(gè)時(shí)鐘開始CPU就讓出總線。當(dāng)外設(shè)的DMA傳送結(jié)束,使HOLD信號(hào)變低,HOL

21、D信號(hào)也是與時(shí)鐘異步,則在下一個(gè)時(shí)鐘的上升沿同步,在緊接著的下降沿使HLDA信號(hào)變?yōu)闊o效,其時(shí)序如圖5-14所示。5.3 系 統(tǒng) 總 線微型計(jì)算機(jī)系統(tǒng)大都采用總線結(jié)構(gòu)。這種結(jié)構(gòu)的特點(diǎn)是采用一組公共的信號(hào)線作為微型計(jì)算機(jī)各部件之間的通信線,這種公共信號(hào)線就稱為總線。小系統(tǒng)單板計(jì)算機(jī)各芯片之間,組成微型計(jì)算機(jī)的插件板之間,微型計(jì)算機(jī)系統(tǒng)之間,都有各自的總線。這些總線把各部件組織起來,組成一個(gè)能彼此傳遞信息和對(duì)信息進(jìn)行加工處理的整體。因此總線是各部件聯(lián)系的紐帶,在接口技術(shù)中扮演著重要的角色。隨著微型計(jì)算機(jī)硬件的發(fā)展,總線也不斷地發(fā)展與更換。 5.4.1 概述 1. 總線的分類根據(jù)所處的位置不同,總線

22、可以分為: (1) 片內(nèi)總線片內(nèi)總線位于微處理器芯片的內(nèi)部,用于算術(shù)邏輯單元ALU與各種寄存器或者其他功能單元之間的相互連接。(2) 片總線片總線又稱元件級(jí)總線或局部總線,是一臺(tái)單板計(jì)算機(jī)或一個(gè)插件板的板內(nèi)總線,用于各芯片之間的連接。它是微型機(jī)系統(tǒng)內(nèi)的重要總線,在連接接口芯片與CPU時(shí)就涉及這樣的總線。片總線一般是CPU芯片引腳的延伸,往往需要增加鎖存、驅(qū)動(dòng)等電路,以提高CPU引腳的驅(qū)動(dòng)能力。 (3) 內(nèi)總線內(nèi)總線又稱為微型計(jì)算機(jī)總線或板級(jí)總線,一般稱為系統(tǒng)總線,用于微型計(jì)算機(jī)系統(tǒng)各插件板之間的連接,是微型計(jì)算機(jī)系統(tǒng)的最重要的一種總線。一般談到微型計(jì)算機(jī)總線,指的就是這種總線。目前,通用的微型

23、計(jì)算機(jī)系統(tǒng)有一塊標(biāo)準(zhǔn)化的主板,板上安裝了CPU、內(nèi)存(數(shù)十兆字節(jié)至數(shù)百兆字節(jié))和IO設(shè)備的接口,通過主板上的插口槽上所插的插件板與各種IO設(shè)備相連。例如,通過插件板與各種顯示器相連;提供一部分串行、并行的IO口;通過網(wǎng)絡(luò)適配器卡連接各種網(wǎng)絡(luò);。 當(dāng)然也有一種趨勢(shì),把上述這些最基本的外設(shè)的接口或適配器集成到主板上。但是,一個(gè)系統(tǒng)總是有可能要擴(kuò)展的,一種微機(jī)系統(tǒng)有可能應(yīng)用在各種領(lǐng)域,每種領(lǐng)域都會(huì)有自己的特殊需求。所以,目前的微機(jī)系統(tǒng)的主板上,總是留有插槽,用于插件板與微機(jī)系統(tǒng)相連。插件板與主板的連接,就是內(nèi)總線或稱為系統(tǒng)總線。(4) 外總線外總線又稱通信總線,用于系統(tǒng)之間的連接,如微機(jī)系統(tǒng)之間,微

24、機(jī)系統(tǒng)與儀器、儀表或其他設(shè)備之間的連接。常用的外總線有RS232C、IEEE488、VXI等總線。上述各級(jí)總線的示意圖,如圖5-12所示。 總線必須在以下幾方面做出規(guī)定: (1) 物理特性: 物理特性指的是總線物理連接的方式。包括總線的根數(shù)、總線的插頭、插座是什么形狀的、引腳是如何排列的等。例如,IBMPCXT的總線共62根線,分兩列編號(hào)。(2) 功能特性: 功能特性描寫的是這一組總線中,每一根線的功能是什么。從功能上劃分,總線分為三組(即三總線): 地址總線、數(shù)據(jù)總線和控制總線。(3) 電氣特性: 電氣特性定義每一根線上信號(hào)的傳送方向、有效電平范圍。一般規(guī)定送入CPU的信號(hào)稱作輸入信號(hào)(IN

25、),從CPU送出的信號(hào)稱作輸出信號(hào)(OUT)。(4) 時(shí)間特性: 時(shí)間特性定義了每根線在什么時(shí)間有效,也就是每根線的時(shí)序??偩€大體可以分成以下幾種主要類型: (1) 地址總線地址總線是微型計(jì)算機(jī)用來傳送地址的信號(hào)線。地址線的數(shù)目決定了直接尋址的范圍。8088(8086)CPU有20根地址線,可尋址1MB。80286有24根地址線,可尋址16MB。80386 CPU以上的芯片有32根地址線可尋址4GB。P6以上處理器有36根地址線,可尋址64GB。目前,正在開發(fā)64位CPU,其尋址范圍就更大了。地址總線均為單向、三態(tài)總線,即信號(hào)只有一個(gè)傳送方向,三態(tài)是指除了可輸出高電平或低電平外,還可處于斷開(

26、高阻)狀態(tài)。(2) 數(shù)據(jù)總線數(shù)據(jù)總線是傳送數(shù)據(jù)和代碼的總線,一般為雙向信號(hào)線,既可輸入也可輸出。數(shù)據(jù)總線也采用三態(tài)邏輯。數(shù)據(jù)總線已由8條、16條、32條,擴(kuò)展為64條。(3) 控制總線控制總線是傳送控制信號(hào)的總線。用來實(shí)現(xiàn)命令、狀態(tài)的傳送,中斷、直接存儲(chǔ)器傳送的請(qǐng)求與控制信號(hào)的傳送,以及提供系統(tǒng)使用的時(shí)鐘和復(fù)位信號(hào)等。根據(jù)不同的使用條件,控制總線有的為單向、有的為雙向,有的為三態(tài),有的為非三態(tài)。控制總線是一組很重要的信號(hào)線,它決定了總線功能的強(qiáng)弱和適應(yīng)性的好壞。好的控制總線功能強(qiáng)、時(shí)序簡(jiǎn)單且使用方便。(4) 電源線和地線電源線和地線決定了總線使用的電源種類以及地線的分布和用法。(5) 備用線備

27、用線留作功能擴(kuò)充和用戶的特殊要求使用。系統(tǒng)總線一般都做成多個(gè)插槽的形式,各插槽相同的引腳都連在一起,總線就連到這些引腳上。為了工業(yè)化生產(chǎn)和能實(shí)現(xiàn)兼容,總線實(shí)行了標(biāo)準(zhǔn)化??偩€接口引腳的定義、傳輸速率的設(shè)定、驅(qū)動(dòng)能力的限制、信號(hào)電平的規(guī)定、時(shí)序的安排以及信息格式的約定等,都有統(tǒng)一的標(biāo)準(zhǔn)。外總線則使用標(biāo)準(zhǔn)的接口插頭,其結(jié)構(gòu)和通信約定也都是標(biāo)準(zhǔn)的。2. 總線的操作過程系統(tǒng)總線上的數(shù)據(jù)傳輸是在主控模塊的控制下進(jìn)行的,主控模塊是有控制總線能力的模塊,例如CPU、DMA控制器??偩€從屬模塊則沒有控制總線的能力,它可以對(duì)總線上傳來的信號(hào)進(jìn)行地址譯碼,并且接受和執(zhí)行總線主控模塊的命令信號(hào)??偩€完成一次數(shù)據(jù)傳輸周

28、期,一般分為以下四個(gè)階段: (1) 申請(qǐng)階段當(dāng)系統(tǒng)總線上有多個(gè)主控模塊時(shí),需要使用總線的主控模塊提出申請(qǐng),由總線仲裁部件確定把下一傳輸周期的總線使用權(quán)授給哪個(gè)模塊。若系統(tǒng)總線上只有一個(gè)主控模塊,就無需這一階段。(2) 尋址階段取得總線使用權(quán)的主控模塊通過總線發(fā)出本次打算訪問的從屬模塊的地址及有關(guān)命令,以啟動(dòng)參與本次傳輸?shù)膹膶倌K。(3) 傳數(shù)階段主控模塊和從屬模塊之間進(jìn)行數(shù)據(jù)傳輸,數(shù)據(jù)由源模塊發(fā)出經(jīng)數(shù)據(jù)總線流入目的模塊。(4) 結(jié)束階段主控模塊的有關(guān)信息均從系統(tǒng)總線上撤除,讓出總線。3. 總線的數(shù)據(jù)傳輸方式主控模塊和從屬模塊之間的數(shù)據(jù)傳送有以下幾種傳輸方式: (1) 同步式傳輸此方式用“系統(tǒng)時(shí)

29、鐘”作為控制數(shù)據(jù)傳送的時(shí)間標(biāo)準(zhǔn)。主設(shè)備與從設(shè)備進(jìn)行一次傳送所需要的時(shí)間(稱為傳輸周期或總線周期)是固定的,其中每一個(gè)步驟的起止時(shí)刻,也都有嚴(yán)格的規(guī)定,都以系統(tǒng)時(shí)鐘來統(tǒng)一步伐。同步傳輸要求主模塊嚴(yán)格地按系統(tǒng)時(shí)鐘規(guī)定的時(shí)刻發(fā)出地址、命令,也要求從模塊嚴(yán)格地按系統(tǒng)時(shí)鐘的規(guī)定讀出數(shù)據(jù)或完成寫入操作。主模塊和從模塊之間的時(shí)間配合是強(qiáng)制同步的。同步傳輸動(dòng)作簡(jiǎn)單,但要解決各種速率的模塊的時(shí)間匹配。當(dāng)把一個(gè)慢速設(shè)備連接至同步系統(tǒng)上,就要求降低時(shí)鐘速率來遷就此慢速設(shè)備。 (2) 異步式傳輸異步式傳輸采用“應(yīng)答式”傳輸技術(shù)。用“請(qǐng)求REQ(Request)”和“應(yīng)答ACK(Acknowledge)”兩條信號(hào)線來協(xié)

30、調(diào)傳輸過程,而不依賴于公共時(shí)鐘信號(hào)。它可以根據(jù)模塊的速率自動(dòng)調(diào)整響應(yīng)的時(shí)間,接口任何類型的外圍設(shè)備都不需要考慮該設(shè)備的速度,從而避免同步式傳輸?shù)纳鲜鋈秉c(diǎn)。異步式讀、寫操作的時(shí)序如圖5-14所示。異步式傳輸,利用REQ和ACK的呼應(yīng)關(guān)系來控制傳輸過程,其主要特點(diǎn)是: 應(yīng)答關(guān)系完全互鎖,即REQ和ACK之間有確定的制約關(guān)系,主設(shè)備的請(qǐng)求REQ有效,由從設(shè)備的ACK來響應(yīng);ACK有效,允許主設(shè)備撤消REQ;只有REQ已撤消,才最后撤消ACK;只有ACK已撤消,才允許下一個(gè)傳輸周期的開始。這就保證了數(shù)據(jù)傳輸?shù)目煽窟M(jìn)行。 數(shù)據(jù)傳送的速度不是固定不變的,它取決于從模塊的存取速度。因而同一個(gè)系統(tǒng)中可以容納不

31、同存取速度的模塊,每個(gè)模塊都能以其最佳可能的速度來配合數(shù)據(jù)的傳輸。異步傳輸?shù)娜秉c(diǎn)是不管從模塊存取時(shí)間的快、慢,每次都要經(jīng)過4個(gè)步驟: 請(qǐng)求、響應(yīng)、撤消請(qǐng)求、撤消響應(yīng)。因此影響效率。(3) 半同步式傳輸此種方式是前兩種方式的折衷。從總體上看,它是一個(gè)同步系統(tǒng),仍用系統(tǒng)時(shí)鐘來定時(shí),利用某一時(shí)鐘脈沖的前沿或后沿判斷某一信號(hào)的狀態(tài),或控制某一信號(hào)的產(chǎn)生或消失,使傳輸操作與時(shí)鐘同步。但是,它又不像同步傳輸那樣傳輸周期固定。對(duì)于慢速的從模塊,其傳輸周期可延長時(shí)鐘脈沖周期的整數(shù)倍。其方法是增加一條信號(hào)線(WAIT或READY)。 READY信號(hào)線無效時(shí),表示選中的從設(shè)備尚未準(zhǔn)備好數(shù)據(jù)傳輸(寫時(shí),未作好接收數(shù)

32、據(jù)的準(zhǔn)備;讀時(shí),數(shù)據(jù)未放至數(shù)據(jù)總線上)。系統(tǒng)用一適當(dāng)?shù)臓顟B(tài)時(shí)鐘檢測(cè)此線,若READY為無效,系統(tǒng)就自動(dòng)地將傳輸周期延長一個(gè)時(shí)鐘周期(通過插入等待周期來實(shí)現(xiàn)),強(qiáng)制主模塊等待。在延長的時(shí)鐘周期中繼續(xù)進(jìn)行檢測(cè),重復(fù)上述過程,直至檢測(cè)到READY信號(hào)有效,才不再延長傳輸周期。這個(gè)檢測(cè)過程又像異步傳輸那樣視從設(shè)備的速度而異,允許不同速度的模塊協(xié)調(diào)地一起工作。但READY信號(hào)不是互鎖的,只是單方面的狀態(tài)傳輸。半同步傳輸方式,對(duì)能按預(yù)定時(shí)刻一步步完成地址、命令和數(shù)據(jù)傳輸?shù)膹哪K,完全按同步方式傳輸;而對(duì)不能按預(yù)定時(shí)刻傳輸?shù)刂?、命令、速度的慢速設(shè)備,則利用READY 信號(hào),強(qiáng)制主模塊延遲等待若干時(shí)鐘周期,協(xié)

33、調(diào)主模塊與從模塊之間的數(shù)據(jù)傳輸。這是微機(jī)系統(tǒng)中常用的方法。通常,主模塊(CPU)工作速度快,而從模塊(存儲(chǔ)器或IO設(shè)備)工作速度慢,而且不同的存儲(chǔ)器和IO設(shè)備的工作速度也是不同的,于是就采用READY信號(hào),在正常的CPU總線周期中插入等待周期的方法,來協(xié)調(diào)CPU與存儲(chǔ)器或CPU與IO設(shè)備之間的傳輸。5.3.2 PC總線 IBM-PC及XT使用的總線稱為PC總線。PC總線不是CPU引腳的延伸,而是通過了8282鎖存器、8286發(fā)送接收器、8288總線控制器、8259中斷控制器、8237 DMA控制器以及其他邏輯的重新驅(qū)動(dòng)和組合控制而成。它共有62條引線,全部引到系統(tǒng)板8個(gè)雙列擴(kuò)充槽插座上,每個(gè)插

34、座相對(duì)應(yīng)的引腳連在一起,再連到總線的相應(yīng)信號(hào)線上,引腳排列如圖5-15所示。插件板分A、B兩面,A面為元件側(cè)。用戶自行設(shè)計(jì)的或購買的與總線匹配的插件板就可插在這些插座上。其中第8個(gè)插槽的B8是該插槽的插件板選中(CARD SLCTD )信號(hào),由該插件板建立,它通知系統(tǒng)板該插件板已被選中。該信號(hào)并不是總線信號(hào),圖5-28中記為RESERVE。62條線分為五類: 地址線、數(shù)據(jù)線、控制線、輔助線與電源線。5.3.3 ISA總線 ISA(Industy Standard Architecture)即工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)總線,又稱AT總線。是IBM AT機(jī)推出時(shí)使用的總線,逐步演變?yōu)橐粋€(gè)事實(shí)上的工業(yè)標(biāo)準(zhǔn),得到廣泛的使用。AT機(jī)是以80286為CPU,它具有16位數(shù)據(jù)寬度,24條地址線,可尋址16MB地址單元,它是在PC總線的基礎(chǔ)上擴(kuò)展一個(gè)36條引線插槽形成的。同一槽線的插槽分成62線和36線兩段,共計(jì)98條引線。其62條引線插槽的引腳排列與定義,PC總線和ISA總線是兼容的,擴(kuò)展的部分在于36線插槽,其引腳

溫馨提示

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