国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

嵌入式系統(tǒng)中PCI總線仲裁器的設(shè)計與實現(xiàn)

發(fā)布時間:2010-11-15 12:28    發(fā)布者:eetech
關(guān)鍵詞: PCI , 嵌入式系統(tǒng) , 仲裁器 , 總線
PCI(Peripheral Component Interconnect)總線是現(xiàn)今最為流行的工業(yè)控制總線之一。它廣泛地應(yīng)用在計算機中,并且由于眾多廠商對PCI的良好支持,使得目標嵌入式設(shè)備中的很多解決方案都包含了PCI總線。在多主設(shè)備的PCI系統(tǒng)應(yīng)用中,必須對各個主設(shè)備提供仲裁授權(quán)信號。很多廠家有針對性地發(fā)布了PCI仲裁邏輯的專用芯片或者集成了PCI重載邏輯的專用芯片,但使用不夠靈活,為了使PCI設(shè)備能夠更方便地應(yīng)用在嵌入式系統(tǒng)中,本文介紹了一種基于CPLD(復(fù)雜可編程邏輯器件)的PCI總線仲裁器的設(shè)計方法,此方法可以為系統(tǒng)量身定制適合于系統(tǒng)本身的PCI總線仲裁器。而不必局限于特定的芯片要求,在體積、功能、成本等諸多方面都有很好的應(yīng)用前景。

1 PCI總線仲裁簡介 1.1 PCI總線的仲裁原理

PCI總線是一種共享式的總線,可以連接多個主設(shè)備,但由于數(shù)據(jù)傳輸?shù)莫氄夹裕恳粫r刻只能由一個主設(shè)備占用總線。因此,為了有效地利用PCI總線寬帶,必須設(shè)置一個總線仲裁器,按照一定的算法協(xié)調(diào)系統(tǒng)中各個主設(shè)備的操作。

每個具備主設(shè)備功能的PCI設(shè)備必須提供兩個與仲裁有關(guān)的信號:REQ#和GNT#。其中REQ#為請求總線信號,由需要發(fā)起PCI傳輸事務(wù)的設(shè)備發(fā)出,GNT#為總線授權(quán)信號,由PCI總線仲裁器裁決后給出,接到GNT#信號的PCI設(shè)備將在下一次總線空閑后開始操作。

PCI總線仲裁的裁決過程可以在PCI傳輸期間完成,并不占用PCI總線的寬帶,這稱為隱式仲裁,即需要發(fā)起PCI操作的設(shè)備可以隨時發(fā)出請求REQ#,PCI仲裁器立即批準該請求被給出GNT#,但是真正的傳輸操作一定要等到當前傳輸完成,即總線空閑后才可以開始,圖1描述了PCI總線設(shè)備與仲裁器的關(guān)系。






1.2 PCI總線仲裁規(guī)則約定

(1)仲裁器的仲裁算法必須保證所有的設(shè)備都能得到授權(quán)的機會,否則將會出現(xiàn)某個優(yōu)先級低的設(shè)備永遠不能占有總線進行事務(wù)操作的情況。

(2)如果FRAME無效,GNT可以在任意時間撤銷,以便服務(wù)于另一個主設(shè)備或者作為對主設(shè)備車REQ的響應(yīng)。

(3)如果GNT信號被撤銷但FRAME有信號,當前的總線正在傳輸數(shù)據(jù),則操作合法。

(4)如果總線不處于空閑狀態(tài),則允許一個GNT的撤銷和另一個GNT的發(fā)生在同一個周期,如果處在空閑狀態(tài),則要求一個GNT撤銷到下一個GNT的發(fā)出之間必須有一個時鐘周期間隔,否則可能會在AD線和PAR線上出現(xiàn)沖突。

(5)GNT信號的每次發(fā)出,只限于相應(yīng)的總線主控器可以使用總線進行一次總線操作(一個FRAME發(fā)出到撤銷),如果該主控器需要多次總線訪問,它可以保持REQ信號一直有效。仲裁器會按照特定的仲裁算法來決定是否仍判給該主設(shè)備。

(6)一個主控器可以在任意時刻撤銷其REQ信號,REQ信號一旦撤銷,仲裁器將認為該設(shè)備不再請求使用總線,因而撤銷其GNT信號(參考上文(1))。如果一個主控器只希望做一次總線傳輸,則它應(yīng)當在發(fā)出FRAME的同一時鐘周期撤銷REQ。

(7)如果當前的主控器在它的GNT信號發(fā)出后,持續(xù)16個空閑周期還沒有開始總線操作,則仲裁器視其為超時,仲裁器可以在任意時刻撤銷GNT信號,以便服務(wù)于另一個設(shè)備。

1.3 PCI總線仲裁的算法

目前,應(yīng)用于PCI總線仲裁的算法主要有固定優(yōu)先級算法和動態(tài)優(yōu)先級算法兩種,在固定優(yōu)先級算法中,各個設(shè)備的優(yōu)先級是事先確定好的,仲裁器針對事先設(shè)定好的優(yōu)先級為每個設(shè)備分配使用權(quán)。這種算法的缺點是:一旦PCI總線事務(wù)非常繁忙,優(yōu)先級高的設(shè)備會占有總線不放,將導(dǎo)致優(yōu)先級低的設(shè)備無法申請到總線。可見這是一種并不公平的算法,只適用于總線利用率非常低的情況,動態(tài)優(yōu)先級算法是在每次仲裁授權(quán)后動態(tài)改變各個設(shè)備的優(yōu)先級。在保證每個設(shè)備都有機會獲得總線的情況下,優(yōu)先級改變的算法可以是各式各樣的。最常用的是循環(huán)優(yōu)先級算法,即每次仲裁授權(quán)后將排隊中的設(shè)備優(yōu)先級加1。因其算法簡單,且對大部分應(yīng)用都十分有效。本設(shè)計采用循環(huán)優(yōu)先級算法。

1.4 總線停靠

當PCI總線空閑時,一個設(shè)備從申請總線到被授權(quán)使用,最小也需要2個時鐘周期,這對于PCI總線是一種浪費。因此仲裁器通常選中一個最經(jīng)常占用總線的設(shè)備,PCI總線空閑時將GNT#賦予它,這叫做總線停靠。當總線空閑時,該設(shè)備需要占用總線時可馬上得到批準。

2 雙主設(shè)備PCI總線仲裁器的實現(xiàn)

下面描述了一個具有兩個設(shè)備的總線仲裁器的硬件實現(xiàn),其一為TriMedia嵌入式DSPCPU PNX1300,其二為Intel i82559網(wǎng)絡(luò)控制器,系統(tǒng)結(jié)構(gòu)如圖2所示。





該仲裁器的接口信號如表1所示。






為設(shè)計方便起見,在程序中設(shè)計三類狀態(tài)機:總線狀態(tài)狀態(tài)機、總線主設(shè)備查詢狀態(tài)機、仲裁狀態(tài)機。

2.1 總線狀態(tài)狀態(tài)機

總線狀態(tài)狀態(tài)機用于記錄總線事務(wù)的狀態(tài),定義如下:

type bus_state is(IDLE,BUSY,LAST_DATA,F(xiàn)INISH)
四種狀態(tài)分別表示總線空閑、忙、最后一個數(shù)據(jù)傳輸期以及傳輸完成。狀態(tài)圖如圖3。





下面是以VHDL代碼形式實現(xiàn)的該狀態(tài)機的狀態(tài)轉(zhuǎn)換關(guān)系。










2.2總線主設(shè)備查詢狀態(tài)機

總線主設(shè)備查詢狀態(tài)機用來決定當前是否需要重新指定一個主設(shè)備,重新指定一個主設(shè)備的條件是:(1)當前被授權(quán)的設(shè)備已開始傳輸;(2)當前被授權(quán)的設(shè)備沒有開始傳輸并且超時。將主設(shè)備查詢狀態(tài)分為IDLE、GNT1、GNT2、WAIT_NOBUSY和WAIT_BUSY2五個狀態(tài),并設(shè)置計數(shù)器count,當總線上某個設(shè)備被授權(quán),但16個周期仍然沒有開始操作,count超過16,被視為超時,仲裁器可以撤銷其仲裁授權(quán),并傳授其他設(shè)備,程序根據(jù)這個狀態(tài)機的輸出結(jié)果決定仲裁狀態(tài)機是否改變。

狀態(tài)轉(zhuǎn)換如圖4所示,狀態(tài)機描述的VHDL代碼略。







主設(shè)備查詢狀態(tài)機的輸出信號search_master:




該狀態(tài)機的驅(qū)動條件是由總線狀態(tài)狀態(tài)機的輸出結(jié)果(busbusy)、仲裁狀態(tài)機的狀態(tài)(idle,park)和計數(shù)器的產(chǎn)生的超時信號(timeout)組成,設(shè)置WAIT_BUSY2的目的是為了避免可能會在AD線和PAR線上出現(xiàn)的沖突。該狀態(tài)機的輸出search_master作為仲裁狀態(tài)機狀態(tài)轉(zhuǎn)換使能信號,只有該信號有效時,仲裁狀態(tài)機才進行當前狀態(tài)的改變。

2.3 仲裁狀態(tài)機

仲裁狀態(tài)機表示總線仲裁器的狀態(tài),定義如下:




狀態(tài)轉(zhuǎn)變過程如圖5所示,狀態(tài)機描述的VHDL代碼略。








仲裁器根據(jù)仲裁狀態(tài)機當前狀態(tài)控制仲裁授權(quán)信號(GNT)的給出。


注:PARKMASTER是事先設(shè)置的停靠狀態(tài)。

2.4仿真波形圖

由圖6可以看出,測試文件模擬了一個設(shè)備申請和兩個設(shè)備同時申請的情況,并給出了總線授權(quán)信號(GNT),驗證了仲裁器邏輯的正確性。




2.5 資源占用情況分析

可編程邏輯器件使用Lattice公司的ispLSI2064E135LT100,在ispLever中綜合本例程序,結(jié)果如表2。



綜合后的延遲分析顯示,該邏輯的時鐘周期最小為7.5ns,即該邏輯可以運行在133MHz以下的系統(tǒng)中,完全可以勝任33MHz PCI總線的仲裁工作。

本PCI總線仲裁器已成功地應(yīng)用在基于PNX1300的IP會議電視終端系統(tǒng)中,用于處理嵌入式CPU PNX1300和網(wǎng)絡(luò)控制器I82559的總線占用仲裁。該會議電視終端已于2005年1月在國家泰爾實驗室通過測試并取得入網(wǎng)許可證。
本文地址:http://www.qingdxww.cn/thread-39314-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 深度體驗Microchip自動輔助駕駛應(yīng)用方案——2025巡展開啟報名!
  • 利用模擬開發(fā)工具生態(tài)系統(tǒng)進行安全電路設(shè)計
  • 我們是Microchip
  • 想要避免發(fā)生災(zāi)難,就用MPLAB SiC電源仿真器!
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产999视频| 欧美成人免费高清网站 | 国产精品中文字幕在线观看 | 永久国产 | 九九性视频 | 日本免费精品视频 | 韩国在线a免费观看网站 | 久久综合婷婷 | 欧美黑人双插 | 欧美中文字幕视频 | 久久久噜噜噜久久网 | 日韩一级片在线免费观看 | 两个人免费观看日本的在线 | www青青草原 | 日韩成本大片35分钟免费播放 | 日韩在线观看一区 | 日本免费观看的视频在线 | 国产精品小黄鸭一区二区三区 | 欧美亚洲综合另类在线观看 | 亚洲欧美日韩中文综合v日本 | 日本不卡视频一区二区三区 | 麻豆传煤入口麻豆公司传媒 | 四虎永久在线日韩精品观看 | 欧美高清观看免费全部完 | 青青草原国产在线观看 | 日韩伦理在线看不卡 | 亚洲国产va | 日日日射射射 | 日本在线免费观看视频 | 日本最新免费不卡二区在线 | 在线观看不卡 | 国内久久精品视频 | 欧美日韩综合高清一区二区 | 特黄一级视频 | 欧美中文字幕在线播放 | 日本不卡一区视频 | 久久综合久久精品 | 一区二区三区视频在线播放 | 国产精品久久大陆 | 91系列在线观看免费 | 国内自拍成人网在线视频 |