Xilinx ISE中的DCM的使用

      爲了知足同步時序設計的要求,通常在FPGA設計中採用全局時鐘資源驅動設計的主時鐘,以達到最低的時鐘抖動和延遲。 FPGA全局時鐘資源通常使用全銅層工藝實現,並設計了專用時鐘緩衝與驅動結構,從而使全局時鐘到達芯片內部的全部可配置單元(CLB)I/O單元(IOB)和選擇性塊RAM(Block Select RAM)的時延和抖動都爲最小。爲了適應複雜設計的須要,XilinxFPGA中集成的專用時鐘資源與數字延遲鎖相環(DLL)的數目不斷增長,最新的Virtex II器件最多能夠提供16個全局時鐘輸入端口和8個數字時鐘管理模塊(DCM)。 html

      與全局時鐘資源相關的原語經常使用的與全局時鐘資源相關的Xilinx器件原語包括:IBUFGIBUFGDSBUFGBUFGPBUFGCEBUFGMUXBUFGDLLDCM等,如圖1所示。異步

1. IBUFG即輸入全局緩衝,是與專用全局時鐘輸入管腳相鏈接的首級全局緩衝。全部從全局時鐘管腳輸入的信號必須通過IBUF元,不然在佈局佈線時會報錯。IBUFG支持AGPCTTGTLGTLPHSTLLVCMOSLVDCILVDSLVPECLLVTTL、PCIPCIXSSTL等多種格式的IO標準。
2. IBUFGDSIBUFG的差分形式,當信號從一對差分全局時鐘管腳輸入時,必須使用IBUFGDS做爲全局時鐘輸入緩衝。IBUFG支持BLVDS、LDTLVDSEXTLVDSLVPECLULVDS等多種格式的IO標準。工具

3. BUFG是全局緩衝,它的輸入是IBUFG的輸出,BUFG的輸出到達FPGA內部的IOBCLB、選擇性塊RAM的時鐘延遲和抖動最小。
4. BUFGCE是帶有時鐘使能端的全局緩衝。它有一個輸入I、一個使能端CE和一個輸出端O。只有當BUFGCE的使能端CE有效(高電平)時,BUFGCE纔有輸出。
5. BUFGMUX是全局時鐘選擇緩衝,它有I0I1兩個輸入,一個控制端S,一個輸出端O。當S爲低電平時輸出時鐘爲I0,反之爲I1。須要指出的是BUFGMUX的應用十分靈活,I0I1兩個輸入時鐘甚至能夠爲異步關係。
6. BUFGP至關於IBUG加上BUFG
7. BUFGDLL是全局緩衝延遲鎖相環,至關於BUFGDLL的結合。BUFGDLL在早期設計中常常使用,用以完成全局時鐘的同步和驅動等功能。隨着數字時鐘管理單元(DCM)的日益完善,目前BUFGDLL的應用已經逐漸被DCM所取代。
8. DCM即數字時鐘管理單元,主要完成時鐘的同步、移相、分頻、倍頻和去抖動等。DCM與全局時鐘有着密不可分的聯繫,爲了達到最小的延遲和抖動,幾乎全部的DCM應用都要使用全局緩衝資源。DCM能夠用Xilinx ISE軟件中的Architecture Wizard直接生成。

全局時鐘資源的使用方法 全局時鐘資源的使用方法(五種)

1.IBUFG + BUFG的使用方法:
      IBUFG後面鏈接BUFG的方法是最基本的全局時鐘資源使用方法,因爲IBUFG組合BUFG至關於BUFGP,因此在這種使用方法也稱爲BUFGP方法。佈局

2. IBUFGDS + BUFG的使用方法:
      當輸入時鐘信號爲差分信號時,須要使用IBUFGDS代替IBUFGspa

3. IBUFG + DCM + BUFG的使用方法:
      這種使用方法最靈活,對全局時鐘的控制更加有效。經過DCM模塊不單單能對時鐘進行同步、移相、分頻和倍頻等變換,並且可使全局時鐘的輸出達到無抖動延遲。設計

4. Logic + BUFG的使用方法:
      BUFG不但能夠驅動IBUFG的輸出,還能夠驅動其它普通訊號的輸出。當某個信號(時鐘、使能、快速路徑)的扇出很是大,而且要求抖動延遲最小時,可使用BUFG驅動該信號,使該信號利用全局時鐘資源。但須要注意的是,普通IO的輸入或普通片內信號進入全局時鐘佈線層須要一個固有的延時,通常在10ns左右,即普通IO和普通片內信號從輸入到BUFG輸出有一個約10ns左右的固有延時,可是BUFG的輸出到片內全部單元(IOBCLB、選擇性塊RAM)的延時能夠忽略不計爲「0nshtm

5. Logic + DCM + BUFG的使用方法:
      DCM一樣也能夠控制並變換普通時鐘信號,即DCM的輸入也能夠是普通片內信號。使用全局時鐘資源的注意事項全局時鐘資源必須知足的重要原則是:使用IBUFGIBUFGDS的充分必要條件是信號從專用全局時鐘管腳輸入。換言之,當某個信號從全局時鐘管腳輸入,不論它是否爲時鐘信號,都必須使用IBUFGIBUFGDS;若是對某個信號使用了IBUFGIBUFGDS硬件原語,則這個信號一定是從全局時鐘管腳輸入的。若是違反了這條原則,那麼在佈局佈線時會報錯。這條規則的使用是由FPGA的內部結構決定的:IBUFGIBUFGDS的輸入端僅僅與芯片的專用全局時鐘輸入管腳有物理鏈接,與普通IO和其它內部CLB等沒有物理鏈接。另外,因爲BUFGP至關於IBUFGBUFG的組合,因此BUFGP的使用也必須遵循上述的原則。

全局時鐘資源的例化方法大體可分爲兩種:
一是在程序中直接例化全局時鐘資源;資源

二是經過綜合階段約束或者實現階段約束實現對全局時鐘資源的使用;

第一種方法比較簡單,用戶只需按照前面講述的5種全局時鐘資源的基本使用方法編寫代碼或者繪製原理圖便可。
第二方法是經過綜合階段約束或實現階段的約束完成對全局時鐘資源的調用,這種方法根據綜合工具和佈局佈線工具的不一樣而異。get

相關文章
相關標籤/搜索