pci總線仲裁器的設(shè)計與實現(xiàn)

pci總線仲裁器的設(shè)計與實現(xiàn)

ID:25570511

大?。?0.00 KB

頁數(shù):7頁

時間:2018-11-21

pci總線仲裁器的設(shè)計與實現(xiàn)  _第1頁
pci總線仲裁器的設(shè)計與實現(xiàn)  _第2頁
pci總線仲裁器的設(shè)計與實現(xiàn)  _第3頁
pci總線仲裁器的設(shè)計與實現(xiàn)  _第4頁
pci總線仲裁器的設(shè)計與實現(xiàn)  _第5頁
資源描述:

《pci總線仲裁器的設(shè)計與實現(xiàn) 》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、pci總線仲裁器的設(shè)計與實現(xiàn)摘要:基于Altera的CPLD器件的PCI總線仲裁器設(shè)計,實現(xiàn)仲裁器的AHDL編程,并結(jié)合仿真結(jié)果對PCI總線的仲裁進(jìn)行了論述。關(guān)鍵詞:PCI仲裁器,CPLD,仿真PCI總線仲裁器通常是集成在PCI芯片組中。隨著計算機應(yīng)用的深入,尤其是嵌入式系統(tǒng)的不斷發(fā)展,集成的仲裁器難以滿足某些場合的應(yīng)用。而采用CPLD技術(shù)實現(xiàn)的獨立的PCI總線仲裁器,則較好的適應(yīng)了這方面的需求。一、PCI總線仲裁機制PCI的仲裁是基于設(shè)備訪問,而不是基于時間分配的。在任一時刻,總線上的一個主設(shè)備要想獲得對總線的控制權(quán),就必須發(fā)出它的請求信號(PCIreqN),如果此刻該設(shè)備有權(quán)控

2、制總線,總線仲裁器就使該設(shè)備的總線占用允許信號(PCIgntN)有效,進(jìn)而獲得總線的使用權(quán)。當(dāng)有多個主設(shè)備同時發(fā)出總線控制請求時,就必須由仲裁器根據(jù)一定的算法判定,當(dāng)前應(yīng)該由哪個主設(shè)備獲得控制權(quán)。二、仲裁算法常用的仲裁算法有:公平算法、循環(huán)算法等。本仲裁器設(shè)計采用的是循環(huán)算法,設(shè)備的優(yōu)先級預(yù)先設(shè)定。目前的設(shè)計實現(xiàn)對四個PCI設(shè)備請求的仲裁,各設(shè)備優(yōu)先級由高到低安排為:設(shè)備0>設(shè)備1>設(shè)備2>設(shè)備3。系統(tǒng)啟動伊始,沒有設(shè)備使用PCI總線,也沒有設(shè)備請求使用PCI總線,仲裁器總是設(shè)定設(shè)備0擁有總線控制權(quán),即將總線??坑谠O(shè)備0。此時設(shè)備0的PCIgntN是有效的。而在此之后,仲裁器總是指

3、定PCI總線的最后一個使用者為總線的停靠設(shè)備。當(dāng)有一個或多個設(shè)備提出擁有總線使用權(quán)的請求時,仲裁器將按照事先安排的設(shè)備優(yōu)先級順序逐一查詢。對于只有一個設(shè)備請求的情況,該設(shè)備的請求將會馬上得到響應(yīng);如果多個設(shè)備同時發(fā)出請求時,仲裁器裁定首先響應(yīng)優(yōu)先等級高的設(shè)備的請求,當(dāng)此設(shè)備完成數(shù)據(jù)傳輸交出總線使用權(quán)后,再由優(yōu)先等級低的設(shè)備使用總線。示意框圖見圖2。如果一個設(shè)備已獲得總線使用權(quán)并且正在進(jìn)行地址、數(shù)據(jù)傳輸時,比它優(yōu)先級別高的設(shè)備也發(fā)出了占用請求,仲裁器將會撤銷優(yōu)先級別低的設(shè)備的總線占用信號,并把總線使用權(quán)交給優(yōu)先級別高的設(shè)備,同時還要確保在任一時刻不會出現(xiàn)多個設(shè)備同時占用總線的情況。具

4、體見仿真分析。三、編程設(shè)計與實現(xiàn)本設(shè)計使用AHDL語言,在MaxplusII10.0上編譯通過,并進(jìn)行了仿真。1.仲裁器信號定義SUBDESIGNPCI_arb(--輸入PCIclk:INPUT--PCI時鐘Arbiter_rstN:INPUT--復(fù)位信號PCIreqN[3..0]:INPUT--總線占用請求信號frameN:INPUT--數(shù)據(jù)交易的啟動或開始,主設(shè)備發(fā)出irdyN:INPUT--交易數(shù)據(jù)準(zhǔn)備好,主設(shè)備發(fā)出--輸出PCIgntN[3..0]:OUTPUT--總線占用允許信號)frameN和irdyN決定了總線的狀態(tài),只要兩個信號中的一個有效,就表明總線上有數(shù)據(jù)通過,

5、總線處于忙狀態(tài);當(dāng)兩個信號都無效時,則總線處于空閑狀態(tài)。2.仲裁器狀態(tài)機定義parb_sm:MACHINEOFBITS(PARB2,PARB1,PARB0)ISeN#!irdyN#frameN&irdyN&PARBtout4)THENIF(!PCIreqN1)THENPCIgntN1=GNDparb_sm=PARB_SLT1DELSIF(!PCIreqN2)THENPCIgntN2=GNDparb_sm=PARB_SLT2DELSIF(!PCIreqN3)THENPCIgntN3=GNDparb_sm=PARB_SLT3DELSEPCIgntN0=GNDparb_sm=PARB_S

6、LT0DELSEPCIgntN0=GNDparb_sm=PARB_SLT0DENDIFeN&irdyN)THENparb_sm=PARB_SLT0論文PCI總線仲裁器的設(shè)計與實現(xiàn)ELSEParb_sm=PARB_SLT0DENDIF為了避免AD線上和PAR線上出現(xiàn)時序競爭,一個設(shè)備的PCIgntN信號有效和另一個設(shè)備的PCIgntN的撤銷,如果不是在總線空閑狀態(tài),則兩者之間至少要有一個時鐘的延遲。設(shè)計中,將每個設(shè)備占用總線的狀態(tài)分為兩部分,PARB_SLTx(總線空閑)和PARB_SLTxD(總線忙);狀態(tài)機不能從一個設(shè)備的PARB_SLTxD狀態(tài)直接轉(zhuǎn)到另一個設(shè)備的PARB_SL

7、TyD狀態(tài),中間必須經(jīng)過至少一個時鐘的PARB_SLTx狀態(tài)的銜接,這樣就避免了總線上競爭的出現(xiàn)。代碼中,PARBtout為一5位計數(shù)器,對PCI時鐘個數(shù)進(jìn)行計數(shù),用來判別設(shè)備發(fā)出請求信號后是否在規(guī)定時間內(nèi)(16個時鐘,即PARBtout[4..0]=10000)占據(jù)了總線,啟動了數(shù)據(jù)的傳輸;如果超時,則撤銷該設(shè)備的請求信號,并按預(yù)設(shè)的優(yōu)先級順序,對其余設(shè)備總線使用權(quán)進(jìn)行新一輪的裁定。計數(shù)器的編程實現(xiàn):IF(PARBtout4#PCIreqN0&PCIreqN1&PC

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。