武漢大學(xué)測控儀器通信第四章共享存儲區(qū)通信技術(shù)_第1頁
武漢大學(xué)測控儀器通信第四章共享存儲區(qū)通信技術(shù)_第2頁
武漢大學(xué)測控儀器通信第四章共享存儲區(qū)通信技術(shù)_第3頁
武漢大學(xué)測控儀器通信第四章共享存儲區(qū)通信技術(shù)_第4頁
武漢大學(xué)測控儀器通信第四章共享存儲區(qū)通信技術(shù)_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

測控總線與儀器通信技術(shù)主講:武漢大學(xué)電子信息學(xué)院王先培第四章共享存儲區(qū)通信技術(shù)4.1共享存儲區(qū)的物理結(jié)構(gòu)

共享存儲區(qū)從物理結(jié)構(gòu)上可以分為四種:公用總線方式,矩陣開關(guān)方式,多端口共用方式和總線窗口方式。4.1.1公用總線方式在公用總線共享存儲區(qū)結(jié)構(gòu)中,各微處理機(jī)都通過公用總線連接到共享存儲區(qū)上。連接方法有兩種:單公用總線方式和多重公用總線方式。圖4-1表示了單公用總線共享存儲區(qū)系統(tǒng),其中M1,M2,M3為共享存儲器;,為共享I/O端口或者外設(shè);P1,P2,P3為三臺微處理機(jī),它們有自己專用內(nèi)存、專用總線、專用軟件、專用外設(shè)等;BC(BusController)為總線控制器,也稱總線仲裁器。在系統(tǒng)的公用資源中單公用總線是最重要的公用資源,由總線控制器BC來仲裁某一時刻由哪一臺微處理機(jī)使用。實(shí)際上,通過對公用總線使用權(quán)的仲裁,也等于對共享存儲器及共享I/O完成了管理與分配,從而實(shí)現(xiàn)利用共享存儲器作為中介實(shí)現(xiàn)通信。

單公用總線只有一條總線,容易因競爭影響通信速率,從而出現(xiàn)瓶頸現(xiàn)象。為了克服瓶頸,提高通信速率和系統(tǒng)可靠性,可采用圖4-2所示的多重公用總線方式。在多重公用總線系統(tǒng)中,可供總線控制器分配的公用總線增多,從而可以減少排隊現(xiàn)象,提高通信速率;當(dāng)某一條公用總線發(fā)生故障,通信依然可以進(jìn)行,因而比單公用總線系統(tǒng)可靠性高。

4.1.2矩陣開關(guān)方式

矩陣開關(guān)(也稱縱橫開關(guān))式共享存儲器結(jié)構(gòu)中,每一個共享存儲器Mi,每一個I/Oi端口與每臺微處理機(jī)Pi都能建立起一條獨(dú)立通道,如圖4-3所示。圖中黑點(diǎn)表示矩陣開關(guān)上的一組開關(guān)。4.1.3多端口共用方式圖4-4是多端口共用存儲器結(jié)構(gòu)。該結(jié)構(gòu)由三部分組成:Mi為多端口共用存儲器;Pi表示多臺微處理機(jī);I/Oi表示多端口共用I/O設(shè)備。P1PiPnM1MiMnI/O1I/OiI/On……………………………………圖4-4多端口共用存儲器

多端口共用存儲器系統(tǒng)有兩種實(shí)現(xiàn)方法:本質(zhì)型多端口存儲器實(shí)現(xiàn)方法,非本質(zhì)型多端口存儲器實(shí)現(xiàn)方法。圖4-5為用這兩種實(shí)現(xiàn)方法組成的多端口共用存儲器系統(tǒng)的結(jié)構(gòu)。本質(zhì)型多端口存儲器是一片內(nèi)部集成了存儲器、端口以及端口控制器的芯片,并具有幾條獨(dú)立訪問內(nèi)存的通道,使得存儲器的訪問并行化,用它作為多臺微處理機(jī)的共用存儲器非常方便。非本質(zhì)型多端口存儲器由普通的單口存儲器芯片、多端口(三態(tài)門芯片)及端口控制器三個部分組成,僅有一條訪問存儲單元的通道,只能由端口控制器控制多端口輪流接通,分別訪問。非本質(zhì)型多端口存儲器造價便宜,結(jié)構(gòu)簡單,用戶可自行進(jìn)行電路設(shè)計及連接,在智能儀表與實(shí)時控制系統(tǒng)中得到較廣泛的應(yīng)用。多端口RAM端口2端口3端口1端口2端口3端口1多端口及端口控制器單口RAM圖4-5(a)本質(zhì)型多端(b)非本質(zhì)型多端口存儲器口存儲器

4.1.4總線窗口方式總線窗口共享存儲區(qū)系統(tǒng)由三部分組成。如圖4-6所示:A機(jī)系統(tǒng)(包括A機(jī)CPU、A機(jī)總線、A機(jī)專用內(nèi)存、A機(jī)共用內(nèi)存、A機(jī)外設(shè));B機(jī)系統(tǒng)(包括B機(jī)CPU、B機(jī)總線、B機(jī)專用內(nèi)存、B機(jī)共用內(nèi)存、B機(jī)外設(shè));總線窗口。系統(tǒng)的共享存儲器是在A、B機(jī)系統(tǒng)中各劃定的一塊特定的內(nèi)存區(qū)域,并將其映射到對方的存儲空間中,雙方均可訪問到。總線窗口實(shí)現(xiàn)兩機(jī)虛擬地址到實(shí)際地址的變換。當(dāng)系統(tǒng)較簡單時,可用邏輯電路來實(shí)現(xiàn);當(dāng)系統(tǒng)較龐大時,應(yīng)構(gòu)成內(nèi)含有微處理機(jī)的智能總線窗口。4.2共享存儲區(qū)的邏輯結(jié)構(gòu)4.2.1虛擬結(jié)構(gòu)在多微處理機(jī)系統(tǒng)中,虛擬存儲區(qū)技術(shù)是常用的邏輯結(jié)構(gòu)形式。每臺微處理機(jī)都帶著存儲器,它既為各處理機(jī)自己所有,又為多機(jī)共享。每臺微處理機(jī)能訪問所有處理機(jī)的存儲器,形成了遠(yuǎn)大于單個處理機(jī)存儲器容量的虛擬存儲空間,使用虛擬存儲地址尋址。從虛擬邏輯結(jié)構(gòu)上看,共享存儲器把專用與共享融合在一起,可以方便地實(shí)現(xiàn)多機(jī)通信,而且使每臺微處理機(jī)的存儲空間都得以擴(kuò)大。虛擬邏輯結(jié)構(gòu)首先要解決虛/實(shí)地址間的地址映射問題。實(shí)現(xiàn)地址映射的方法有兩種:一種是由硬件電路組成的總線窗口實(shí)現(xiàn)地址映射;另一種是由含有微處理器的智能總線窗口實(shí)現(xiàn)地址映射。當(dāng)一臺微處理機(jī)要使用另一臺微處理機(jī)的存儲器時,由總線窗口中的開關(guān)控制接通總線,本虛擬地址必須經(jīng)過總線窗口中的地址變換器進(jìn)行動態(tài)重定位,把虛擬地址變成實(shí)際地址之后才可用來激活本機(jī)地址線,找到正確的存儲單元。虛擬結(jié)構(gòu)必須解決兩臺或兩臺以上微處理機(jī)訪問同一存儲單元引起的沖突。4.2.2信箱結(jié)構(gòu)

信箱式共享存儲區(qū)把各微處理機(jī)專用與共享存儲區(qū)劃分開來,僅建立一塊較小的共享區(qū)供通信使用,而且對共享區(qū)作了細(xì)分,建立類似郵政信箱格式的分格式邏輯結(jié)構(gòu)。通信池結(jié)構(gòu)很像配水系統(tǒng)的中間水池。四周有許多閥門接著水源及用戶。若某水源要向某用戶供水,首先打開該水源閥們,把應(yīng)配水量放在中間水池中,然后關(guān)掉水源,再打開該用戶閥門,則把應(yīng)配水量供給該用戶。這僅僅是個比喻而已,但由此可見,采用通信池結(jié)構(gòu),由于共享存儲區(qū)中每個存儲單元作用一樣、功能單一,因此共享存儲區(qū)本身比較簡單。但是對共享存儲區(qū)使用權(quán)的分配及管理卻比較復(fù)雜,通信速度也比信箱結(jié)構(gòu)慢,不過它對共享存儲區(qū)容量的要求要比信箱結(jié)構(gòu)的小。●共享存儲區(qū)設(shè)計比較簡單;●共享存儲區(qū)使用權(quán)的分配及管理卻比較復(fù)雜;●通信速度也比信箱結(jié)構(gòu)慢,共享存儲區(qū)容量的要求要比信箱結(jié)構(gòu)的小。4.2.3通信池結(jié)構(gòu)

4.3共享存儲區(qū)的分配與管理共享存儲區(qū)的分配與管理解決兩臺或兩臺以上的微處理機(jī)同一時刻訪問共享存儲區(qū)中同一單元而引起的沖突。4.3.1判決器法

判決器是獨(dú)立于各微機(jī)之上的一個專用單元,它的功能是對要求使用共享存儲器或公用總線的微機(jī)提出的請求進(jìn)行裁決判決器主要由判決邏輯與開關(guān)群電路組成,根據(jù)判決邏輯的不同,可分為:①無偏判決器:在一個長時間段內(nèi),使各處理器輪流獲取優(yōu)先權(quán);②改進(jìn)型無偏判決器:在無偏判決的基礎(chǔ)上優(yōu)先響應(yīng)等待時間最長的微處理機(jī)的請求;③固定優(yōu)先級判決器:它預(yù)先規(guī)定每臺微處理機(jī)的優(yōu)先級高低;④FIFO法,按先來后到次序進(jìn)行優(yōu)先權(quán)的判決。4.3.2端口控制器法2114存儲器芯片為共享存儲器,74LS244就相當(dāng)于微機(jī)掛上總線的開關(guān),74LS244與2114之間的連線為單公用總線,端口控制器負(fù)責(zé)共享存儲器的分配及管理。端口控制器相當(dāng)于單公用總線系統(tǒng)中總線控制器BC的作用,由它來按照預(yù)先設(shè)計好的判決規(guī)則,對微處理機(jī)的申請進(jìn)行判決。

4.3.3本質(zhì)型多端口存儲器的裁決邏輯通過內(nèi)部設(shè)有的邏輯檢測電路裁決:當(dāng)發(fā)生對一個單元同時讀寫時,邏輯檢測電路將控制先“寫”后“讀”;若檢測到兩端口同時對同一單元進(jìn)行“寫”操作時,邏輯檢測電路將使它們排隊,以免沖突。4.3.4總線窗口法

總線窗口有雙重功能:●進(jìn)行虛/實(shí)地址變換,●控制總線窗口內(nèi)總線開關(guān),以便實(shí)現(xiàn)對共享存儲器的分配與管理。4.4雙端口存儲器及其應(yīng)用雙端口存儲器分為雙向傳輸?shù)碾p端口存儲器和單向傳輸?shù)碾p端口存儲器

4.4.1雙向傳輸?shù)碾p端口存儲器每一個端口都可以對存儲器進(jìn)行讀寫,從而實(shí)現(xiàn)兩臺微處理器間的半雙工數(shù)據(jù)雙向傳輸MP1和MP2是由兩片74LS244芯片提供的三態(tài)門、譯碼器及“或”門構(gòu)成的端口;存儲器(2114)A0-9CS

WE

Di

P1A0-9RD

WR

Di

A10-15P1.0譯碼器11P2A0-9RD

WR

Di

A10-15P1.0譯碼器11EP1EP2EP1和EP2是端口控制器的輸出信號決定P1或P2對2114有效由P0口提供低8位、P2.0-P2.1共10位地址線對2114進(jìn)行片內(nèi)尋址由P2.2-P2.7口提供高6位地址線與P1.0控制信號經(jīng)譯碼器譯碼

對2114進(jìn)行片選MP1MP2(1)端口構(gòu)造由微處理器的讀寫信號合成2114的讀寫信號,并控制數(shù)據(jù)線的導(dǎo)通方向;(2)端口控制器構(gòu)造●邏輯結(jié)構(gòu):采用通信池結(jié)構(gòu),在共享區(qū)只設(shè)置一個數(shù)據(jù)緩沖區(qū),發(fā)送與接收必須分別進(jìn)行?!駭?shù)據(jù)的讀寫:數(shù)據(jù)的寫入和讀取一次完成,發(fā)信方把數(shù)據(jù)連續(xù)寫入共享存儲器后,接收方立即從共享存儲器中把數(shù)據(jù)讀出;●存儲區(qū)分配和管理:端口控制器只對發(fā)送請求進(jìn)行裁決,判決算法采用固定優(yōu)先算法。MS1和MS2為發(fā)送請求信號由MS1和MS2產(chǎn)生MS信號,送1號、2號與非門,當(dāng)P1和P2同時要求發(fā)送數(shù)據(jù)時,可防止EP1和EP2被同時置“1”,引起訪問沖突MA1和MA2為接收請求信號EN1和EN2為傳輸結(jié)束信號3號R-S觸發(fā)器的Q和Q非輸出端分別送到1號、2號與非門,以保證P1提出發(fā)送請求時,2號與非門關(guān)閉,即P1比P2具有更高的優(yōu)先級Pi(i=1,2)向Pj(j=2,1)發(fā)送數(shù)據(jù)的過程:4.4.2單向傳輸?shù)碾p端口存儲器

雙機(jī)全雙工數(shù)據(jù)傳輸:用兩個單向傳輸雙端口存儲器做為共享區(qū)同時工作,來構(gòu)造雙單片機(jī)間全雙工數(shù)據(jù)傳輸;單向傳輸雙端口共享存儲器中采用了信箱式邏輯結(jié)構(gòu)傳輸控制:

1)P1向第一個單向傳輸雙端口存儲器寫入數(shù)據(jù),P2向第二個單向傳輸雙端口存儲器寫入數(shù)據(jù);

2)同步;3)P1從第二個單向傳輸口存儲器讀取數(shù)據(jù),P2從第一個單向傳輸雙端口存儲器讀取數(shù)據(jù)。類全雙工通信:任何一臺微處理器,讀、寫存儲器并不是同時進(jìn)行,而是串聯(lián)進(jìn)行單向傳輸雙端口存儲器的端口構(gòu)造EP1和EP2決定哪臺處理器對存儲器有效數(shù)據(jù)傳輸過程:

1)若存儲器空,P1將數(shù)據(jù)寫入存儲器;

2)軟件設(shè)置EAP1信號,中斷P2;

3)P2響應(yīng)中斷,從存儲器讀數(shù)據(jù);

4)軟件設(shè)置EAP2信號,中斷P1;

5)傳輸完成;4.5交叉內(nèi)存雙通信池及其應(yīng)用4.5.1雙通信池的結(jié)構(gòu)框圖控制電路控制電路ABW/RCE1DBBABW/RCS1DBABW/RCS1RAMABW/RCE1DBDB池A控制電路控制電路ABW/RCE1DBABW/RCS1DBABW/RCS1RAMABW/RCE1DBDB池B單片機(jī)A及接口單片機(jī)B及接口PCPDQQP’P’利用雙通信池可以互易物理位置的原理來實(shí)現(xiàn)雙單片機(jī)通信雙通信池結(jié)構(gòu)中兩個通信池交替作為兩臺微處理器的內(nèi)存使用,又稱為交叉內(nèi)存結(jié)構(gòu)4.5.2雙通信池工作原理兩片共享存儲器

數(shù)據(jù)橋(雙向橋)

地址橋(單向橋)

輔助電路

(控制數(shù)據(jù)橋和地址橋的導(dǎo)通狀態(tài))

通信過程如下:任意時刻,A機(jī)與B機(jī)控制數(shù)據(jù)橋與地址橋使各自與一個通信池A連通,A機(jī)把自己存放在發(fā)送緩沖區(qū)中的數(shù)據(jù)寫入通信池,B機(jī)把自己存放在發(fā)送緩沖區(qū)中的數(shù)據(jù)寫入另外一個通信池B中。由主機(jī)(設(shè)為A機(jī))發(fā)P信號,經(jīng)D觸發(fā)器變?yōu)樾盘枺盘枌⒖刂频刂窐蚣皵?shù)據(jù)橋開關(guān)群的切換,實(shí)現(xiàn)兩個通信池互易物理位置?;ヒ孜锢砦恢煤螅扔芍鳈C(jī)(A機(jī))通信池B中讀取數(shù)據(jù),存入自己的接收數(shù)據(jù)緩沖區(qū)中。接收完畢后A機(jī)向B機(jī)發(fā)一中斷請求信號,B機(jī)響應(yīng)中斷,在其中斷服務(wù)程序中安排從通信池A中讀出數(shù)據(jù)并存入自己的接收數(shù)據(jù)緩沖區(qū)中。在通信過程中,以A機(jī)為主機(jī),由它來掌握切換實(shí)際時機(jī)與中斷時機(jī),B機(jī)為從機(jī)。4.5.3數(shù)據(jù)橋及數(shù)據(jù)橋控制電路

(1)數(shù)據(jù)雙向橋:三態(tài)門構(gòu)成(2)數(shù)據(jù)橋控制電路:控制數(shù)據(jù)雙向橋的導(dǎo)通方向讀寫控制信號片選信號主控機(jī)A產(chǎn)生的信號經(jīng)D觸發(fā)器變換之后的通信池切換信號4.5.4地址橋及輔助電路(1)地址橋地址線為單向總線,數(shù)據(jù)線為雙向總線,所以地址橋?yàn)閱蜗驑?,而?shù)據(jù)橋?yàn)殡p向橋。與數(shù)據(jù)橋相同的切換信號(2)輔助電路:切換信號與中斷信號產(chǎn)生電路(A機(jī)為主機(jī))地址線A2~A7經(jīng)3-8譯碼器產(chǎn)生,判斷訪問地址的物理位置A機(jī)產(chǎn)生的切換信號控制信號4.5.5交叉內(nèi)存雙通信池應(yīng)用舉例雙單片機(jī)數(shù)據(jù)采集系統(tǒng)A機(jī)負(fù)責(zé)數(shù)據(jù)采集,B機(jī)負(fù)責(zé)數(shù)據(jù)處理;A機(jī)采集好后送入通信池中。當(dāng)數(shù)據(jù)裝滿后,機(jī)A發(fā)出切換指令,內(nèi)存交叉互易,B機(jī)讀出數(shù)據(jù),完成雙機(jī)通信。B機(jī)正常運(yùn)行時負(fù)責(zé)對所采集的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理,在雙機(jī)通信時,機(jī)B負(fù)責(zé)從通信池讀取數(shù)據(jù)并存入磁盤以供數(shù)據(jù)處理。虛線框部分為交叉內(nèi)存雙通信池4.6簡易總線窗口的設(shè)計總線窗口共享存儲區(qū)雙微處理器系統(tǒng)中總線窗口的作用:(1)控制雙微機(jī)的總線通斷,即起總線開關(guān)作用;(2)實(shí)現(xiàn)虛擬地址與實(shí)際地址的變換,即起地址變換作用。若:

A機(jī)和B機(jī)對共享存儲區(qū)M1的訪問地址取相同范圍,而且A機(jī)和B機(jī)對共享存儲區(qū)M2的訪問地址也取相同的范圍,不需要進(jìn)行虛實(shí)地址變換,總線窗口中也可以省去地址變換電路。沒有地址變換作用的總線窗口稱為簡易總線窗口。

4.6.1系統(tǒng)結(jié)構(gòu)

主機(jī):部分專用,部分共享的存儲區(qū)從機(jī):部分專用,部分共享的存儲區(qū)簡易總線窗口(虛線框部分)

通信過程:主機(jī)要求從機(jī)發(fā)送數(shù)據(jù)2)主機(jī)確認(rèn)RDY2,通過PIO1向總線控制邏輯發(fā)請求通信信號CMRQ13)確認(rèn)CMRQ1,產(chǎn)生總線請求信號BUSRQ2送從機(jī)4)從機(jī)響應(yīng)BUSRQ2,發(fā)出BUSAK2給總線控制邏輯,并放棄總線使用權(quán)5)總線控制邏輯控制總線開關(guān),接通主機(jī)總線,并將BUSAK2通過PIO1傳送給主機(jī)

6)主機(jī)確認(rèn)從機(jī)放棄總線,且總線接通,將M2共享區(qū)數(shù)據(jù)轉(zhuǎn)移到M1專用存儲區(qū)4.6.2總線開關(guān)(1)地址總線開關(guān)地址總線單向總線,按理地址總線開關(guān)應(yīng)采用單向開關(guān)。但考慮到總線窗口的特殊情況,即要對內(nèi)存單元尋址,反過來也要對內(nèi)存單元尋址,在與之間地址線必須能雙向傳輸,因此地址總線開關(guān)應(yīng)設(shè)計成雙向開關(guān)。74LS245是一種雙向總線驅(qū)動器,其中引腳1與引腳19為控制端,用來控制導(dǎo)通方向,1片245芯片可控制8條總線的通斷。

(2)控制總線開關(guān)80C51的控制總線中,為三態(tài)總線,與地址總線采用雙向總線理由一樣,控制總線開關(guān)應(yīng)當(dāng)采用雙向開關(guān),即選用74LS245。(3)數(shù)據(jù)總線開關(guān)數(shù)據(jù)總線從本質(zhì)上看就是雙向總線,因此數(shù)據(jù)總線開關(guān)采用雙向開關(guān),即選用LS245。特點(diǎn):(1)均為雙向總線;(2)數(shù)據(jù)總線:一個通信周期中的雙向;(3)地址、控制總線:通信周期間的雙向4.6.3總線開關(guān)的控制邏輯

兩個關(guān)鍵問題:(1)控制其中一臺微處理器放棄總線;(2)控制總線開關(guān)接通另一臺微處理器;1,80C51-PIO1與80C51-PIO2標(biāo)志信號在這里,80C51-PIO1與80C51-PIO2口(可以是8031/51系列單片機(jī)P0~P3口任何8位I/O端口,可自行定義)各信號含義如下。RDY1:CPU1已把發(fā)送數(shù)據(jù)準(zhǔn)備好RDY2:CPU2已把發(fā)送數(shù)據(jù)準(zhǔn)備好CMRQ1:CPU1請求對方發(fā)送數(shù)據(jù)CMRQ2:CPU2請求對方發(fā)送數(shù)據(jù)BUSAK1:CPU1總線認(rèn)可,放棄總線BUSAK2:CPU2總線認(rèn)可,放棄總線若CPU1把要發(fā)送的數(shù)據(jù)已準(zhǔn)備好,則使PIO1的位置1,該信號連到PIO2的PA3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論