FPGA 時鐘設(shè)計――DLL_第1頁
FPGA 時鐘設(shè)計――DLL_第2頁
FPGA 時鐘設(shè)計――DLL_第3頁
FPGA 時鐘設(shè)計――DLL_第4頁
FPGA 時鐘設(shè)計――DLL_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、FPGA 時鐘設(shè)計DLL,隨著FPGA器件規(guī)模的不斷增大,時鐘時延和相位偏移等已經(jīng)成為影響FPGA設(shè)計的關(guān)鍵因素。正確的時鐘設(shè)計和使用至關(guān)重要。下面以Xilinx公司的產(chǎn)品為例介紹時鐘設(shè)計與使用的一些技巧。,7.5.1數(shù)字延遲鎖相環(huán)(DLL)應(yīng)用設(shè)計,在 Virtex-E、Spartan-和 Spartan-E系列器件中,Xilinx公司采用數(shù)字延遲鎖相環(huán)(DLL,Delay Locked Loop)技術(shù)進行FPGA內(nèi)部的時鐘控制。通過使用 FPGA內(nèi)部的 DLL,可以消除時鐘相位偏移、變換時鐘頻率(倍頻或分頻)和調(diào)整時鐘輸出相位。DLL基本原理見2.1.2節(jié),1. 標準的CLKDLL符號,圖

2、7.5.1 標準的CLKDLL符號,圖中: (1)CLKIN :源時鐘輸入(Source Clock Input),DLL的輸入時鐘信號。 (2)CLKFB:反饋時鐘輸入(Feedback Clock Input),DLL的時鐘反饋信號。 (3)RST:復(fù)位輸入(Reset Input),DLL初始化控制信號。 (4)CLK0/CLK90/CLK180/CLK270:CLKIN相移0/90/180/270的輸出信號, DLL輸出的時鐘信號。,(5)CLK2X:CLKIN的2倍頻時鐘信號(2x Clock Output), DLL輸出的時鐘信號。在CLKDLLHF模式時,該輸出時鐘信號無效。 (

3、6)CLKDV :CLKIN的分頻時鐘信號(Clock Divide Output),DLL輸出的時鐘信號。分頻系數(shù)為1.5、2、2.5、3、4、5、8和16。 (7)LOCKED : DLL鎖定輸入時鐘信號的鎖定輸出信號(Locked Output),DLL的狀態(tài)信號。,在Spartan-系列器件中,每個DLL可以驅(qū)動兩個全局時鐘網(wǎng)絡(luò),通過全局時鐘網(wǎng)絡(luò)可以消除輸入時鐘的相位偏移。DLL除了具有消除時鐘相位偏移的功能外,還具有倍頻、分頻和移相的功能。另外,DLL還可以實現(xiàn)時鐘鏡像(Clock Mirror),即通過DLL的片外輸出和反饋輸入,消除多芯片之間的板級時鐘偏移。,2. DLL設(shè)計時需

4、要注意的問題,在 Spartan-系列器件中,為保證 DLL正常工作,需要注意以下幾點: (1)DLL輸入時鐘:DLL的輸入時鐘信號應(yīng)滿足器件數(shù)據(jù)手冊上的相關(guān)要求。在低頻情況下,輸入時鐘抖動應(yīng)小于300ps,高頻時應(yīng)小于150ps。在輸入時鐘鎖定后,應(yīng)避免輸入時鐘的大幅度變化。,(2)DLL輸出時鐘:DLL的輸出時鐘可以驅(qū)動OBUF、BUFG或目標邏輯單元的時鐘輸入端。在LOCKED變?yōu)橛行?,DLL的輸出時鐘信號無效。 在DLL設(shè)計過程中,應(yīng)特別注意設(shè)定以下屬性: (1)DUTY_CYCLE_CORRECTION 設(shè)為 TRUE時,CLK0、CLK90、CLK180和 CLK270將輸出占空

5、比為50的時鐘信號。設(shè)為FALSE時,CLK0、CLK90、CLK180和CLK270的輸出時鐘信號將保持與輸入時鐘信號相同的占空比。默認值為TRUE。,(2)CLKDV_DIVIDE決定分頻系數(shù),默認值為2,可設(shè)定值為1.5、2、2.5、3、4、5、8和16。 (3)STARTUP_WAIT設(shè)置 TRUE時,配置過程將等待DLL鎖定后完成。默認值為FALSE。 (4)LOC 指定DLL的位置編號,編號為0、1、2、3。DLL在器件中的位置如圖7.5.2所示。,圖7.5.2 DLL在器件中的位置,3. DLL的應(yīng)用設(shè)計例,DLL的一些應(yīng)用設(shè)計例如圖7.5.3圖7.5.5所示。其中,圖7.5.3

6、為標準的DLL應(yīng)用電路。圖7.5.4為DLL無時鐘偏移和2倍頻輸出電路。圖7.5.5為DLL 4倍頻輸出電路。,圖7.5.3 標準的DLL應(yīng)用電路,圖7.5.4 DLL無時鐘偏移和2倍頻輸出電路,圖7.5.5 DLL 4倍頻輸出電路,7.5.2 全局時鐘網(wǎng)絡(luò)(Global Clock Networks)應(yīng)用設(shè)計,在Xilinx的Virtex-和 Virtex- Pro等系列產(chǎn)品中,全局時鐘網(wǎng)絡(luò)(Global Clock Networks)是一種全局布線資源,它可以保證時鐘信號到達各個目標邏輯單元的時延基本相同。不同類型的器件,全局時鐘網(wǎng)絡(luò)在數(shù)量、性能等方面略有差異。下面以Virtex-系列器件

7、為例介紹全局時鐘網(wǎng)絡(luò)的特性和用法。,在Virtex-系列器件中的全局時鐘網(wǎng)絡(luò)分布如圖7.5.6所示,共含有16個全局時鐘網(wǎng)絡(luò)。 Virtex-系列器件中的全局時鐘網(wǎng)絡(luò)不僅可以提供全局時鐘信號的最小時延,還可以實現(xiàn)全局時鐘信號的控制輸出和選擇輸出。,圖7.5.6 Virtex-系列器件全局時鐘網(wǎng)絡(luò)分布示意圖,7.5.2 全局時鐘網(wǎng)絡(luò)(Global Clock Networks)應(yīng)用設(shè)計,(a),(b),圖7.5.7 Virtex-系列器件全局時鐘網(wǎng)絡(luò)應(yīng)用電路圖,在Virtex-系列器件中,全局時鐘網(wǎng)絡(luò)與時鐘信號的連接方法,如圖7.5.7所示。在圖7.5.7(a)中,全局時鐘信號(GCLK)通過時

8、鐘輸入(Clock Input)引腳端(PAD)輸入,經(jīng)過輸入緩沖器IBUFG和內(nèi)部緩沖器BUFG到達時鐘分布網(wǎng)絡(luò)(Clock Distribution)。在圖7.5.7(b)中,差分全局時鐘信號(GCLKS 和GCLKP)通過差分時鐘輸入端(Differential Clock Input)輸入,經(jīng)過輸入緩沖器IBUFG和內(nèi)部緩沖器BUFG到達時鐘分布網(wǎng)絡(luò)(Clock Distribution)。在圖7.5.7(c)中,全局時鐘信號(GCLK)通過時鐘輸入(Clock Input)引腳端(PAD)輸入,經(jīng)過輸入緩沖器IBUFG、DCM(數(shù)字時鐘管理器,Digital Clock Manage

9、r)和內(nèi)部緩沖器BUFG到達時鐘分布網(wǎng)絡(luò)(Clock Distribution)。,7.5.3 數(shù)字時鐘管理器(DCM)應(yīng)用設(shè)計,如圖7.5.8所示,F(xiàn)PGA器件內(nèi)部邏輯電路時鐘也可以通過內(nèi)部緩沖器BUFG或者DCM(數(shù)字時鐘管理器,Digital Clock Manager)到達時鐘分布網(wǎng)絡(luò)(Clock Distribution)。 Xilinx公司提供了全局時鐘網(wǎng)絡(luò)VHDL和 Verilog應(yīng)用程序編程模板,可以通過編程控制全局時鐘信號的工作方式。,7.5.2 全局時鐘網(wǎng)絡(luò)(Global Clock Networks)應(yīng)用設(shè)計,圖7.5.8 FPGA器件內(nèi)部邏輯電路時鐘到達時鐘分布網(wǎng)絡(luò),7

10、.5.3 數(shù)字時鐘管理器(DCM)應(yīng)用設(shè)計,Xilinx公司在Virtex-和 Virtex- Pro等系列產(chǎn)品中采用 DCM(數(shù)字時鐘管理器,Digital Clock Manager).在時鐘控制和管理方面,DCM 比DLL功能更強大、使用更靈活。DCM的主要功能包括消除時鐘時延、頻率合成和時鐘相位調(diào)整。DCM可以工作在高頻或低頻模式,主要參數(shù)有:輸入時鐘頻率范圍、輸出時鐘頻率范圍、輸入時鐘允許抖動范圍,輸出時鐘抖動范圍等。,在 Virtex-和 Virtex- Pro等系列產(chǎn)品中,DCM的設(shè)計和使用方法基本相同,下面以Virtex-系列器件中的DCM為例,介紹DCM的設(shè)計和使用。Virt

11、ex-系列器件型號不同,具有412個DCM。Virtex-的DCM結(jié)構(gòu)示意圖如圖2.1.17所示。在圖2.1.17所示DCM中的端口信號(Port Signals):,(l)CLKIN :源時鐘信號輸入(Source Clock Input CLKIN),DCM的輸入時鐘信號,來自IBUFG、IBUF或BUFGMUX。 (2)CLKFB:反饋時鐘輸入信號(Feedback Clock Input CLKFB),DCM的時鐘反饋信號, CLK0或 CLK2X DCM輸出通過IBUFG、IBUF或 BUFGMUX反饋到CLKFB引腳端。 (3)RST:復(fù)位輸入信號(Reset Input RST)

12、,DCM的控制信號,高電平有效。,(4)PSINCDEC :相移增量/減量控制信號(Phase Shift Increment/Decrement - PSINCDEC),DCM的控制信號,控制輸出時鐘的相位動態(tài)調(diào)整方向。 (5)PSEN:相移使能信號(Phase Shift Enable - PSEN),DCM控制信號,輸出時鐘相位動態(tài)調(diào)整的使能信號。 (6)PSCLK:相移時鐘信號(Phase Shift Clock - PSCLK),DCM參考時鐘信號,輸出時鐘相位動態(tài)調(diào)整的參考時鐘。,(7)CLK0/CLK90/CLK180/CLK270: CLKIN相移0/90/180/270的輸出

13、信號, DCM輸出的時鐘信號。 (8)CLK2X:2倍頻時鐘輸出信號(2x Clock Output CLK2X),DCM的輸出時鐘信號,是CLKIN的2倍頻時鐘信號。 (9)CLK2X180 :與CLK2X相位差180的DCM輸出時鐘信號。,(10)CLKDV:CLKIN的時鐘分頻輸出信號(Clock Divide Output CLKDV),DCM的輸出時鐘信號。分頻系數(shù)由CLKDVDIVIDE設(shè)定。 (11)CLKFX:頻率合成時鐘輸出信號(Frequency Synthesized Clock Output - CLKFX) ,DCM的輸出時鐘信號,是CLKIN經(jīng)過頻率合成后的時鐘信號

14、。 (12)CLKFX180:頻率合成時鐘相移180的輸出信號(Frequency Synthesized Clock Output 180 Phase Shifted - CLKFX180),該時鐘信號與CLKFX有180的相位差。,(13)LOCKED:DCM鎖定輸出信號(Locked Output LOCKED),DCM狀態(tài)信號,顯示DCM是否鎖定CLKIN。LOCKED為高電平時,DCM的輸出時鐘信號有效。 (14)STATUS :狀態(tài)信號(Status - STATUS),DCM狀態(tài)信號,8位,用于顯示DCM的工作狀態(tài)。 (15)PSDONE:相移完成信號(Phase Shift DONE - PSDONE),DCM的狀態(tài)信號,用于顯示輸出時鐘相位動態(tài)調(diào)整是否正常。,在 Virtexll系列器件中,DCM主要有如下工作模式: BUFG_CLK0_SUBM BUFG_CLK2X_SUBM BUFG_CLK0_FB_SUBM BUFG_CLK2X_FB_SUBM BUFG_CLKDV_SUBM BUFG_DFS_SUBM,BUFG_DFS_FB_SUBM BUFG_PHASE_CLKFX_FB_SUBM BUFG_PHASE_CLK0_SUBM B

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論