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

          新聞中心

          EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > CPCI數(shù)據(jù)總線接口的設(shè)計(jì)與實(shí)現(xiàn)

          CPCI數(shù)據(jù)總線接口的設(shè)計(jì)與實(shí)現(xiàn)

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

          3 PCI9054局部
          整個(gè)思路為:FPGA通過(guò)橋接芯片PCI9054與連接,其內(nèi)部使用異步雙口RAM來(lái)進(jìn)行高速的緩沖,通過(guò)使用VerilogHDL語(yǔ)言編程來(lái)控制FPGA中的異步雙口RAM,以系統(tǒng)在嵌入式CUP板卡內(nèi)存與板卡之間的高速傳輸。
          PCI9054提供了3種物理:CPCI總線接口、LOCAL總線接口和串行EPROM接口。其中CPCI總線接口協(xié)議在嵌入式操作系統(tǒng)中的驅(qū)動(dòng)包已經(jīng)帶有,而串行EEPROM的初始化是由PLX公司的PLXMON軟件在嵌入式操作系統(tǒng)中進(jìn)行在線燒寫(xiě)的,所以本系統(tǒng)的重點(diǎn)就是關(guān)于LOCAL總線接口的控制和傳輸,其接口電路示意圖如圖2所示。

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

          c.JPG


          PCI9054與本地總線之間的接口稱(chēng)之為L(zhǎng)OCAL BUS,是CPCI總線系統(tǒng)設(shè)計(jì)中十分重要的一環(huán)。PCI9054 LOCAL BUS在系統(tǒng)設(shè)計(jì)中,其總線直接與Alter公司的EP2S90F78014芯片的總線相連,同時(shí)通過(guò)運(yùn)用Verilog HDL語(yǔ)言編程來(lái)對(duì)雙口RAM控制器的功能。
          PCI9054 LOCAL BUS有3種工作模式,分別為M、J和C模式。M模式是專(zhuān)為Motorola公司開(kāi)發(fā)和設(shè)計(jì)的,而另外兩種工作模式就應(yīng)用的比較廣泛。其中J模式因?yàn)闆](méi)有LocaL Master,所以它的地址總線和數(shù)據(jù)線沒(méi)有分開(kāi),從而增加了開(kāi)發(fā)難度。而在C模式下,PCI9054芯片通過(guò)片內(nèi)的邏輯控制可以將CPCI的局部地址和數(shù)據(jù)總線分開(kāi),從而有效地降低了開(kāi)發(fā)難度,并且能靈活地為本地工作時(shí)序提供各種工作方式,所以本系統(tǒng)設(shè)計(jì)方案選擇了LOCAL總線的C工作模式,工作頻率為40 MHz。

          4 局部總線的
          PCI9054支持主模式、從模式和DMA傳輸方式,根據(jù)本系統(tǒng)設(shè)計(jì)的需求,采用從模式傳輸方式,即允許CPCI總線上的主設(shè)備訪問(wèn)局部總線上的配置寄存器或內(nèi)存,支持多種模式傳輸。如圖3所示。

          d.JPG



          評(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); })();