7系列mrcc xilinx_XILINX 7系列FPGA_时钟篇
目錄一覽
- 0.轉(zhuǎn)載說明
- 1.時鐘結(jié)構(gòu)簡介
- 2.時鐘區(qū)域簡介
- 3.時鐘操作法則
- 4.CMT簡介
0.轉(zhuǎn)載說明
FPGA開發(fā),不知道所使用組件的特性,怎能開發(fā)出優(yōu)秀的設(shè)計呢!!!
老早就想整理7系列FPGA的時鐘結(jié)構(gòu),發(fā)現(xiàn)“小青菜哥哥”這位博主整理得非常棒,因此就轉(zhuǎn)載整理合并過來,供大家參考,當(dāng)然這篇文章基本就是點到為止,更多細(xì)節(jié)內(nèi)容還需要查閱原文官方文檔
7 Series FPGAs Clocking Resources User Guide?www.xilinx.com以后有機會總結(jié)Ultrascale+系列的時鐘結(jié)構(gòu),敬請期待。
原文鏈接:
xilinx 7系列FPGA時鐘篇(1)_時鐘結(jié)構(gòu)簡介
xilinx 7系列FPGA時鐘篇(2)_時鐘區(qū)域簡介
xilinx 7系列FPGA時鐘篇(3)_時鐘操作法則
xilinx 7系列FPGA時鐘篇(4)_CMT簡介
原文圖片均參考自
7 Series FPGAs Clocking Resources User Guide?www.xilinx.com1.時鐘結(jié)構(gòu)簡介
說起XILINX的FPGA時鐘結(jié)構(gòu),7系列FPGA的時鐘結(jié)構(gòu)和前面幾個系列的時鐘結(jié)構(gòu)有了很大的區(qū)別,7系列的時鐘結(jié)構(gòu)如圖所示,理解了這張圖,咱們就對7系列的FPGA時鐘結(jié)構(gòu)了如指掌,下面咱們就聊聊這張圖:
總結(jié)來說,FPGA實際上就是被分成很多個大小一樣時鐘區(qū)域,每個時鐘區(qū)域既可單獨工作又可通過全局時鐘Clock BackBone統(tǒng)一工作,同時水平相鄰的時鐘區(qū)域又可通過HROW來統(tǒng)一工作,上下相鄰的時鐘區(qū)域又可通過CMT Backbone統(tǒng)一工作。
2.時鐘區(qū)域簡介
上一章咱們介紹了7系列FPGA的整體時鐘架構(gòu),知道了FPGA是由很多個時鐘區(qū)域組成,時鐘區(qū)域之間可以通過Clock Backbone 和CMT Backbone來統(tǒng)一工作。本篇咱們就說一下時鐘區(qū)域的內(nèi)部結(jié)構(gòu),如下圖所示的虛線框內(nèi)即為一個時鐘區(qū)域:
咱們自己結(jié)合這幾張圖好好分析下,就會徹底明白一個時鐘區(qū)域內(nèi)的具體時鐘構(gòu)造了,祝大家好運!利用上述所講,下篇咱們將介紹如何在不同應(yīng)用中來操作時鐘。
3.時鐘操作法則
上一章咱們介紹了7系列FPGA的時鐘區(qū)域內(nèi)部結(jié)構(gòu),本篇咱們接著介紹如何實際操作時鐘。不說其它的,直接先上兩張圖,大家如果能看懂這兩張圖,那么就不用浪費時間看我接下來的廢話了。。。。。
咱們需要用的到時鐘單元以及用法都在上面完整列出了(沒有列出配置時鐘,配置時鐘不需要咱們操作),需要使用的時候就可以按照上述的方式來操作時鐘。這樣是不是使用起來很方便呢?
順便提一下,CMT即MMCM和PLL很重要,基本上咱們在使用FPGA時,外部輸入時鐘都需要先用CMT進(jìn)行校正、去抖、分頻等,其輸出時鐘才能被咱們使用。所以下一篇咱們就單獨說一下CMT這個時鐘模塊之中的重中之重!
4.CMT簡介
上篇咱們僅僅簡要的介紹了時鐘的用法,并未詳細(xì)的說明,主要是因為很多時鐘用法是針對特定的應(yīng)用需求,無法一一介紹。本篇咱們將重提上篇的CMT時鐘模塊,聊一聊它的用法。可以這么說,每個靠譜的FPGA應(yīng)用里都應(yīng)該用到CMT模塊。
在7系列FPGA里,每一個時鐘區(qū)域?qū)?yīng)一個CMT(clock management tile),CMT由1個MMCM(mixed-mode clock manager)和1個PLL(phase-locked loop)組成,如圖1所示為其輸入/輸出連接圖。
MMCM、PLL的功能可以總結(jié)為3點:
- 頻率綜合:將外部輸入的固定頻率時鐘調(diào)理成多路可調(diào)節(jié)頻率的時鐘。
- 去抖動(谷歌時鐘抖動的含義,這里不具體介紹)。
- 去偏斜(谷歌時鐘抖動的含義,這里不具體介紹)。
咱們這里強調(diào)下,7系列FPGA里的PLL只是MMCM的功能子集。這里咱們先介紹MMCM,如下圖所示為其結(jié)構(gòu)框圖:
上圖咱們一目了然,MMCM有2個時鐘輸入,使用時任選1路即可,輸入時鐘經(jīng)過PFD(phase-frequency detector),CP(charge pump),LF(loop filter)后產(chǎn)生一定幅度的電壓輸入到VCO,VCO產(chǎn)生頻率與輸入電壓幅度成比例的高頻時鐘,再被除以M倍并反饋到PFD。因此VCO的輸出頻率是一個穩(wěn)定的、輸入頻率M倍的高頻時鐘,該時鐘除以不同的倍數(shù)(用戶可調(diào))即可輸出時鐘clkout0clkout6。另外第0路輸出和反饋輸出是可以被分?jǐn)?shù)除法,且第0路第3路提供反相180度的輸出,VCO的輸出還可以精確調(diào)整相位,這是7系列FPGA特有的。
咱們再看PLL的結(jié)構(gòu),如下圖所示:
其結(jié)構(gòu)與MMCM大體一致,但沒有反相輸出、分?jǐn)?shù)倍數(shù)的除法、精確的動態(tài)相位調(diào)整以及CLKOUT6。
這里強調(diào)一下:MMCM、PLL均可實現(xiàn)時鐘整數(shù)倍的頻率綜合、去抖、去偏斜,但MMCM還可以實現(xiàn)分?jǐn)?shù)倍的頻率綜合、反相時鐘輸出以及動態(tài)的時鐘相位調(diào)整。當(dāng)然,對于咱們一般的應(yīng)用來說,用不到MMCM的這些高端功能,兩者使用沒啥區(qū)別。
接下來咱們給出xilinx官方推薦的幾種MMCM/PLL的使用方法:
圖4為最最常用的用法,目前被使用的最多,這種方式設(shè)計保留了輸入與輸出時鐘之間的相位關(guān)系,時鐘性能最高,系統(tǒng)最穩(wěn)定,但需要使用2個BUFG,BUFG在FPGA里面屬于稀缺資源,只有32個,對于某些特別復(fù)雜的系統(tǒng)可能就捉襟見肘了。
圖5是將BUFG換成了BUFH,其系統(tǒng)性能是優(yōu)于BUFG的,但前一篇咱們提到過,BUFH的使用范圍只有左右相鄰的時鐘區(qū)域,對于邏輯資源使用量超過2個時鐘區(qū)域的應(yīng)用肯定就不合適了。
圖6為時鐘的內(nèi)部反饋應(yīng)用,由于沒有引入反饋BUFG的噪聲,因此輸出時鐘的噪聲性能更好,但失去了輸入與輸出時鐘之間的相位關(guān)系,所有這種用法適用于高精度的頻率綜合,對相位關(guān)系不太關(guān)注的應(yīng)用。
圖7為零延遲的時鐘應(yīng)用,這種應(yīng)用適用于單個外部時鐘源供給需要保持相位關(guān)系的多個數(shù)字系統(tǒng)。
到此咱們的7系列FPGA的時鐘篇就算是簡簡單單的介紹完了,咱們下一部分就介紹7系列FPGA的內(nèi)部邏輯資源吧,所有數(shù)字系統(tǒng)的功能實現(xiàn)都得靠它啦~
歡迎大家關(guān)注我的微信公眾號——小白倉庫 原創(chuàng)經(jīng)驗資料分享:包含但不僅限于FPGA、ARM、RISC-V、Linux、LabVIEW等軟硬件開發(fā),另外分享生活中的趣事以及感悟。目的是建立一個平臺記錄學(xué)習(xí)過的知識,并分享出來自認(rèn)為有用的與感興趣的道友相互交流進(jìn)步。
總結(jié)
以上是生活随笔為你收集整理的7系列mrcc xilinx_XILINX 7系列FPGA_时钟篇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信用卡还信用卡怎么还 最好不要使用这种
- 下一篇: 空值替换为0_「Excel」是零值还是空