<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 一種64位高速PCI總線接口的設(shè)計(jì)與實(shí)現(xiàn)

          一種64位高速PCI總線接口的設(shè)計(jì)與實(shí)現(xiàn)

          作者: 時(shí)間:2011-03-22 來(lái)源:網(wǎng)絡(luò) 收藏

          OnDmaReady例程中獲取傳輸?shù)奈锢韮?nèi)存的地址和字節(jié)數(shù),然后設(shè)置相應(yīng)的DMA寄存器值開(kāi)始DMA傳輸。DMA傳輸結(jié)束后,應(yīng)使m_CmxentTm-nsfer無(wú)效并刪除。具體流程如圖2所示。

          本文引用地址:http://www.ex-cimer.com/article/156552.htm

          c.jpg



          4 局部
          中,局部端采用了C模式。C模式下可配置3種數(shù)據(jù)傳輸方式:?jiǎn)沃芷诜绞?Single Cycle Mode)、4字方式(Brust-4 Mode)和連續(xù)突發(fā)傳輸方式(Continuous Mode),在本中采用了連續(xù)突發(fā)方式,可以有效地提高輸出效率。
          9656在局部為為主設(shè)備,始終占用局部總線,局部總線端的FPGA始終響應(yīng)9656的操作。方案中使用9656的DMA傳輸模式,在本地端不需要進(jìn)行地址譯碼,因此可以對(duì)PCI9656的控制信號(hào)進(jìn)行簡(jiǎn)化處理,PCI9656的局部端主要控制信號(hào)如下
          ADS#:一次總線訪問(wèn)開(kāi)始;
          Blast#:總線訪問(wèn)結(jié)束;
          LW/R#:讀寫(xiě)控制信號(hào);
          Ready#:從設(shè)備準(zhǔn)備好信號(hào),有效時(shí)表示總線訪問(wèn)進(jìn)行中;
          LHOLD:PCI9656占用本地總線申請(qǐng)信號(hào);
          LHOLDA:占用本地總線應(yīng)答信號(hào);
          Wait#:主設(shè)備傳輸暫停信號(hào);
          EOT#:數(shù)據(jù)傳輸異常中止信號(hào),用于FIFO溢出或空時(shí)中斷數(shù)據(jù)傳輸;
          Lint#:用于引起CompaetPCI總線端的中斷信號(hào);
          LRST#:本地總線復(fù)位信號(hào);
          CCS#:配置寄存器選擇信號(hào)。
          在DMA傳輸過(guò)程中主要關(guān)心的信號(hào)可簡(jiǎn)化為:ADS#、Blast#、LW/R#、Ready#、LHOLD、LHOLDA,如圖3所示。

          d.jpg


          圖3中,lclk為本地總線時(shí)鐘,當(dāng)PCI9656要發(fā)起一次DMA操作時(shí),先發(fā)送lhold信號(hào)申請(qǐng)本地總線,若本地總線空閑則FPGA發(fā)出lholda信號(hào)響應(yīng)PCI9656,然后PCI有效ads_n信號(hào)以示總線傳輸開(kāi)始,F(xiàn)PGA使ready_n有效以示總線傳輸正在進(jìn)行中,此時(shí)本地?cái)?shù)據(jù)通過(guò)局部數(shù)據(jù)線傳送到PCI總線,或著數(shù)據(jù)由PCI總線傳送到局部邏輯。一次傳輸結(jié)束時(shí)PCI使blast_n信號(hào)有效并使lhold信號(hào)無(wú)效,然后FPGA使lholda信號(hào)和ready_n信號(hào)無(wú)效,一次DMA傳輸完成。傳輸中若是DMA讀操作則lwr信號(hào)拉低,若為寫(xiě)操作則拉高。
          本地總線位寬為32位,因此本地總線理論速度為264MB·s-1,由于應(yīng)用程序的效率問(wèn)題和傳輸中一些無(wú)效狀態(tài)的存在,目前PCI總線平均速率達(dá)到212 MB·s-1,可以滿(mǎn)足目前數(shù)據(jù)采集、傳輸對(duì)總線傳輸速度的要求。
          PCI9656本地總線時(shí)序設(shè)計(jì)中需要注意blast_n信號(hào)有效說(shuō)明為突發(fā)傳輸最后一個(gè)時(shí)鐘周期,此時(shí)ready_n信號(hào)仍然為有效,否則會(huì)造成總線等待;在正常讀寫(xiě)訪問(wèn)中CCS#信號(hào)應(yīng)置高,否則總線訪問(wèn)將指向配置空間而非內(nèi)存或I/O空間。

          5 結(jié)束語(yǔ)
          利用PCI9656和FPGAPCI總線,較全面地論述了總線驅(qū)動(dòng)開(kāi)發(fā)和局部時(shí)序設(shè)計(jì)的過(guò)程。這種設(shè)計(jì)提高了總線傳輸速度,為數(shù)據(jù)采集系統(tǒng)的創(chuàng)造了條件。


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();