• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于PCI9054的通信卡設(shè)計

      2012-06-25 07:02:16張會新陳嫣然鄭燕露
      電視技術(shù) 2012年5期
      關(guān)鍵詞:寄存器總線芯片

      張會新,陳嫣然,鄭燕露

      (中北大學電子測試技術(shù)國家重點實驗室,山西 太原 030051)

      現(xiàn)代數(shù)據(jù)存儲測試系統(tǒng)應用中對于遠程的數(shù)據(jù)通信的要求越來越高,針對以往計算機與底層硬件之間通信采用USB、以太網(wǎng)、RS-232等通信方式,都有速度、距離和易掉線等缺陷。本文采用了PCI(Peripheral Component Interconnect)總線作為信息通信接口,使下層的測試系統(tǒng)能夠和計算機之間有一個相當大的數(shù)據(jù)傳輸帶寬。

      PCI又稱外圍部件互連總線,是一種具有多路地址線和數(shù)據(jù)線的高性能的32/64位總線。目前32位數(shù)據(jù)總線時,最大傳輸速率可達到132 Mbit/s,當擴展到64位數(shù)據(jù)總線時,數(shù)據(jù)傳輸率可以達到264 Mbit/s。

      1 硬件設(shè)計

      基于PCI9054的通信卡以FPGA作為中心控制電路,考慮到占用較多的內(nèi)部邏輯資源,選用Xilinx公司的FPGA芯片XC3S400,能夠滿足該系統(tǒng)的設(shè)計要求,用于對數(shù)據(jù)包的編碼解碼處理。PCI9054作為PCI接口芯片,實現(xiàn)PCI總線與FPGA的無縫連接。PLX Tech公司提供的PCI9054器件是一種支持32 bit/33 MHz PCI總線橋芯片,符合PCI 2.2規(guī)范,支持PCI總線的主/從方式傳輸,在突發(fā)狀態(tài)下可實現(xiàn)PCI的全速數(shù)據(jù)傳輸,能廣泛地應用到各種適配卡和嵌入式系統(tǒng)中。

      1.1 總體電路設(shè)計

      該系統(tǒng)主要由FPGA、PCI接口芯片PCI9054,光纖通信模塊,LVDS接口電路組成。系統(tǒng)硬件總體結(jié)構(gòu)框如圖1所示。

      圖1 硬件總體框圖

      PCI通信卡的工作流程為:上位機發(fā)送32位數(shù)據(jù)通過PCI接口給PCI9054,F(xiàn)PGA控制PCI9054本地總線來獲得這32位數(shù)據(jù)并打包成40位的命令字,并以異步串行的方式通過光纖模塊發(fā)給測試系統(tǒng)。當測試系統(tǒng)回傳數(shù)據(jù)時,F(xiàn)PGA也以同樣的方式接收40位的數(shù)據(jù)包并解碼獲得32位數(shù)據(jù)存到內(nèi)部FIFO緩存,再通過控制PCI9054本地總線來讀取內(nèi)部FIFO將數(shù)據(jù)上傳至上位機。

      1.2 E2PROM配置

      E2PROM配置是硬件設(shè)計的關(guān)鍵,因為PCI9054的需要根據(jù)E2PROM配置信息初始化內(nèi)部寄存器,配置信息如有不對,會造成無法進入系統(tǒng)。根據(jù)PLX公司給出的E2PROM芯片推薦表,選用Microchip公司的HT93LC56。經(jīng)過實踐,本文設(shè)計了一種方法可先以空白的E2PROM進入系統(tǒng)并使用PLX公司SDK中的PLXMon工具燒寫其配置信息,實現(xiàn)正常使用PCI通信卡。E2RPOM硬件設(shè)計如圖2所示。

      圖2 93LC56電路圖

      使用空白的93LC56首次進入系統(tǒng)時DI/DO引腳用3.9 kΩ電阻下拉,并且PCI9054芯片的Test引腳要用10 kΩ電阻上拉使PCI9054芯片處于高阻態(tài)即可以順利進入系統(tǒng)。進入系統(tǒng)后將Test下拉使PCI9054進入正常工作模式,掃描PCI設(shè)備,安裝PLX公司官方驅(qū)動即可使用PLXMon燒寫固件信息,提示燒寫成功后將DI/DO引腳上拉。重啟計算機,則PCI通信卡可以正常使用。硬件設(shè)計時建議把這兩個引腳設(shè)計成上下拉的方式。

      PCI9054有5種寄存器,在該設(shè)計中主要是對PCI配置寄存器和Run Time寄存器進行配置,PCI配置寄存器里主要是本地總線對內(nèi)存的映射,Space0映射到Memory,Space1映射到I/O空間,總線寬度為32位,突發(fā)模式使能。Run Time寄存器主要是開啟PCI中斷和本地中斷。主要的E2PROM配置信息如圖3所示。

      圖3 E2PROM配置信息(截圖)

      2 軟件設(shè)計

      PCI9054的本地總線有3種工作模式:M,C,J模式,該設(shè)計中采用局部總線32位,數(shù)據(jù)與地址不復用,所以選擇C模式。C模式下有3種數(shù)據(jù)傳輸方式:直接主模式、直接從模式、DMA方式。該設(shè)計采用直接從模式。

      2.1 時序設(shè)計

      PCI9054的Memory支持單周期和突發(fā)模式的讀寫操作,I/O只支持單周期讀寫。該通信卡是建立在上位機與底層硬件之間的橋梁,上位機通過PCI下發(fā)命令,并且還要獲得數(shù)據(jù)的回傳。所以對于命令下發(fā)采用I/O讀寫方式,回傳數(shù)據(jù)則采用Memory的突發(fā)模式,時序狀態(tài)機如圖4所示。上電復位后,當本地總線請求信號lhold來后,回應本地總線響應信號lholda。此時State0判斷ads信號,ads為0則跳轉(zhuǎn)到State1,表示有地址下發(fā),否則在State0等待。State1狀態(tài)時判斷blast信號,當blast為0則跳轉(zhuǎn)到State2狀態(tài),表示為單周期讀寫。在State2狀態(tài)判斷l(xiāng)wr信號,lwr信號為1表示是寫,下發(fā)上位機的命令,lwr信號為0表示是讀,回讀數(shù)據(jù)給上位機。需要注意的是在此狀態(tài)下需要將ready信號置0,表示數(shù)據(jù)有效。狀態(tài)直接跳轉(zhuǎn)到State3,繼續(xù)判斷ads是否又地址下發(fā)。當blast為1時則跳轉(zhuǎn)到State4狀態(tài),表示為突發(fā)讀寫。State4狀態(tài)時也是根據(jù)lwr信號來進行讀或?qū)?,并將ready置0,跳轉(zhuǎn)到State5狀態(tài)。State5狀態(tài)時再次判斷blast,如果為1表示突發(fā)模式還未結(jié)束,還要進行讀寫數(shù)據(jù),則狀態(tài)機回到State4狀態(tài)繼續(xù)進行讀寫操作,如果為0表示已經(jīng)是突發(fā)讀寫的最后一個周期,跳轉(zhuǎn)到State6狀態(tài)里再次判斷ads。PCI9054時序操作需要注意的是ready信號置低返回給PCI9054的時間以及對ads判斷的時間,如果ready信號置0不及時的話容易造成死機或者錯數(shù)。而ads判斷不及時可能會造成32位數(shù)高8位或低8位出現(xiàn)誤碼,這都是因為數(shù)據(jù)未建立穩(wěn)定就開始讀寫所導致的。

      圖4 PCI9054狀態(tài)機圖

      2.2 驅(qū)動設(shè)計

      該設(shè)計驅(qū)動程序主要是完成本地總線對PCI總線的內(nèi)存映射和I/O地址數(shù)據(jù)存取,能正確識別設(shè)備及處理來自通信卡的硬件中斷信號。上位機控制相應的函數(shù)來實現(xiàn)讀寫操作,中斷的判斷和清除。主要步驟是:

      1)檢測是否存在設(shè)備,打開設(shè)備。

      2)判斷是寫還是讀,選擇I/O或Memory,下發(fā)偏移地址,進行讀寫操作。

      3)開始回讀數(shù)據(jù)時,判斷中斷信號,如有中斷信號則開始下發(fā)偏移地址并清中斷。如果沒有則延時等待后提示沒有數(shù)據(jù)。

      中斷處理部分驅(qū)動程序如下:

      3 結(jié)束語

      PCI9054強大的功能使得對PCI總線接口的設(shè)計變得簡單,只需通過本地總線的控制電路就可實現(xiàn)與PCI總線的數(shù)據(jù)傳輸。該系統(tǒng)實現(xiàn)了利用PCI總線對數(shù)據(jù)的傳輸和實時處理,可廣泛應用于數(shù)據(jù)采集系統(tǒng)。

      [1]饒運濤,鄒繼軍,鄭勇蕓.現(xiàn)場總線CAN原理和應用系統(tǒng)設(shè)計[M].北京:北京航空航天大學出版社,2003.

      [2]張文棟.存儲測試系統(tǒng)的設(shè)計理論及其應用[M].北京:高等教育出版社,2002.

      [3]張培仁,孫力.基于C8051F系列微控制器原理與應用[M].北京:清華大學出版社,2007.

      [4]王強,文豐,任勇峰.基于FPGA的高速實時數(shù)據(jù)采集存儲系統(tǒng)[J].儀表技術(shù)與傳感器,2009(1):50-52.

      [5]周治良,劉俊,張斌珍.基于FPGA及FLASH的數(shù)據(jù)采集存儲系統(tǒng)設(shè)計[J]. 數(shù)采與監(jiān)測,2003(1):91-92.

      猜你喜歡
      寄存器總線芯片
      Lite寄存器模型的設(shè)計與實現(xiàn)
      計算機應用(2020年5期)2020-06-07 07:06:44
      基于PCI Express總線的xHC與FPGA的直接通信
      機載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計
      分簇結(jié)構(gòu)向量寄存器分配策略研究*
      芯片測試
      多通道采樣芯片ADS8556在光伏并網(wǎng)中的應用
      多通道ARINC429總線檢查儀
      基于EtherCAT總線的ROV控制系統(tǒng)設(shè)計
      河南科技(2014年16期)2014-02-27 14:13:22
      74HC164芯片的應用
      河南科技(2014年10期)2014-02-27 14:09:18
      高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應用
      温宿县| 屯昌县| 星子县| 和田市| 哈密市| 文登市| 璧山县| 池州市| 扎兰屯市| 闻喜县| 三亚市| 友谊县| 揭东县| 科技| 鹤岗市| 乐昌市| 永嘉县| 宿松县| 青川县| 徐闻县| 郴州市| 海原县| 杭锦后旗| 老河口市| 郎溪县| 拜城县| 涟源市| 土默特左旗| 定兴县| 天等县| 乌拉特后旗| 普宁市| 保康县| 峨边| 通辽市| 星座| 信丰县| 榆社县| 馆陶县| 扬州市| 遂昌县|