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

          新聞中心

          EEPW首頁 > 電源與新能源 > 設(shè)計應(yīng)用 > UltraScaleC UltraScale FPGA中IODelay相比7Series FPGA的改變

          UltraScaleC UltraScale FPGA中IODelay相比7Series FPGA的改變

          作者: 時間:2018-07-24 來源:網(wǎng)絡(luò) 收藏

          IODelay是Xilinx IO結(jié)構(gòu)內(nèi),一個很有用處的單元,至少從Spartan6/Virtex5時代開始,就已經(jīng)集成了這一技術(shù),在很多高速接口互聯(lián)時,我們都可能找到IODelay的用武之地。在最新的Ultrascale系列中,IODelay這一單元的具體用法,跟7Series中相比產(chǎn)生了一些變化。本文總結(jié)下,供讀者參考。

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

          1. 7Series 中IODelay的用法

          在7Series中,IODelay都需要配合IOdelayCtrl來使用。其延遲步進階數(shù)總共為64個Taps,每個Tap精度是tREFCLK/64。REFCLK提供3種設(shè)置,分別是200Mhz,300Mhz,和400Mhz,所以相對應(yīng)的延遲精度分別為:5ns/64=78ps,3.333ns/64=52ps,2.5ns/64=39ps。

          2.在Ultrascale FPGA中

          相比7Series,最大的區(qū)別是,IODelayCtrl補償時,針對的是整個delayline,而不是單個的delay tap element。

          IODelay提供了2種使用模式供用戶選擇,分別是TIME Mode和COUNT Mode

          在TIME Mode中,延遲是加入了溫度補償?shù)模虼搜舆t值比較精確。在COUNT Mode中,不配合使用IDelayCtrl,每個TAP的延遲值在2.5ps-15ps之間隨機不固定。一般我們都會使用TIME Mode,因此重點說下這個Mode的使用方法。

          在TIME Mode下,我們可以在IP配置初始時指定延遲的具體數(shù)值,單位是ps,范圍是0-1250ps。這種模式對應(yīng)的DELAY_TYPE屬性是FIXED。

          如果在TIME Mode下,我們想動態(tài)的調(diào)整IODELAY的延遲值該怎么辦呢?方法如下,首先需要把DELAY_TYPE屬性配置成VARIABLE或者VAR_LOAD,然后遵循以下步驟:

          ①. Deassert (Low) the EN_VTC pin.

          ②. Wait a minimum of 10 clock cycles.

          ③. Use the CE and INC ports to increment or decrement the delay line.

          ④. Wait a minimum of 5 clock cycles.

          ⑤. (Option for multiple updates) Increment or decrement of the delayline needs to be performed. Go to step 3, or else proceed to step 6.

          ⑥. Wait a minimum of 10 clock cycles.

          ⑦. Assert the EN_VTC pin.



          關(guān)鍵詞: FPGA

          評論


          相關(guān)推薦

          技術(shù)專區(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); })();