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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 使用VIVADO對(duì)7系列FPGA的高效設(shè)計(jì)心得

          使用VIVADO對(duì)7系列FPGA的高效設(shè)計(jì)心得

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

          隨著xilinx公司進(jìn)入20nm工藝,以堆疊的方式在可編程領(lǐng)域一路高歌猛進(jìn),與其配套的EDA工具——新一代高端設(shè)計(jì)軟件也備受關(guān)注和飽受爭(zhēng)議。我從2012年開(kāi)始使用,像所有剛推出的軟件一樣,在剛推出的時(shí)候都會(huì)存在一些bug,特別是2013.22013.3。而最新的版本VIVADO2013.4在32位的電腦上也是經(jīng)常出現(xiàn)運(yùn)行緩慢、自動(dòng)退出或掛起等現(xiàn)象,相信在后面的版本中這些問(wèn)題會(huì)得到很好的解決。雖然存在一些bug但是它卻阻擋不了VIVADO高效的設(shè)計(jì)以及良好的布局布線(xiàn)效果。下面我以我工作中碰到的一個(gè)工程為例來(lái)和大家分享一下VIVADO的高效設(shè)計(jì)帶給我們的全新感受!我的工程是一個(gè)ADC數(shù)據(jù)采集的例子,LVDS總線(xiàn),12根數(shù)據(jù)線(xiàn),DDR模式。根據(jù)XILINX給出的xapp585,我將串并轉(zhuǎn)換1:7的設(shè)計(jì)改成了串并轉(zhuǎn)換1:4。依然使用了selecTIO資源的ISERDES。原設(shè)計(jì)框圖如下:[[wysiwyg_imageupload:1348:]]其中CalibraTIonbitslipstatemachine和DeskewControl模塊比較復(fù)雜并且使用了較多的算法,整個(gè)工程在ISE14.2中光綜合過(guò)程就跑了將近5分鐘左右,然后布局布線(xiàn)就更加的慢了。將近跑了7分鐘半。后來(lái)我將整個(gè)工程移植到VIVADO2013.4中,其效率快的讓我吃驚,總共加起來(lái)不超過(guò)5分鐘。在使用VIVADO的過(guò)程中有以下幾個(gè)亮點(diǎn),讓我感覺(jué)效率確實(shí)提高不少。第一,當(dāng)版本升級(jí)后,相應(yīng)的IP版本也要升級(jí),但是不要擔(dān)心,VIVADO在檢測(cè)到需要更新的IP后會(huì)提醒你更新,只要按著它的提示進(jìn)行操作就可以將所有的IP一起更新,省去了很多麻煩。第二,調(diào)試時(shí),直接從netlist通過(guò)markdebug添加NET到ILA中,然后VIVADO會(huì)將相應(yīng)的約束自動(dòng)添加到xdc文件中,最后通過(guò)VIVADOLogicAnalyzer來(lái)查看波形。這種方法比之前的chipscope更加的高效![[wysiwyg_imageupload:1349:]]第三,掌握基本的幾個(gè)Tcl命令,如get_cells/get_nets/get_pins/get_ports/get_clocks等,而且相對(duì)于ISE環(huán)境下的Tcl命令,這些命令都是全稱(chēng)加上下劃線(xiàn)的,掌握這些命令可以編成腳本,大大的提高了設(shè)計(jì)效率。

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


          關(guān)鍵詞: FPGA VIVADO 賽靈思

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