新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > UltraScaleC UltraScale FPGA中IODelay相比7Series FPGA的改變

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

        作者: 時間:2018-07-24 來源:網絡 收藏

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

        本文引用地址:http://www.104case.com/article/201807/383580.htm

        1. 7Series 中IODelay的用法

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

        2.在Ultrascale FPGA中

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

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

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

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

        如果在TIME Mode下,我們想動態的調整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.



        關鍵詞: FPGA

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 绥化市| 禹城市| 阿拉善右旗| 宁陕县| 盐津县| 溧阳市| 铜梁县| 铅山县| 铜川市| 安丘市| 平度市| 北海市| 晋宁县| 仲巴县| 江安县| 左贡县| 临泽县| 来宾市| 武穴市| 二连浩特市| 西林县| 阳信县| 庄河市| 洮南市| 本溪| 安康市| 贵港市| 阿拉善左旗| 台东市| 雅江县| 桐柏县| 米林县| 黑河市| 綦江县| 玉田县| 临海市| 靖西县| 温宿县| 虹口区| 高安市| 江陵县|