0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何把握FPGA的數(shù)字時(shí)鐘管理器

電子設(shè)計(jì) ? 來源:EDN ? 作者:Sharad Sinha ? 2021-02-13 17:02 ? 次閱讀

把握DCM、PLL、PMCD和MMCM知識(shí)是穩(wěn)健可靠的時(shí)鐘設(shè)計(jì)策略的基礎(chǔ)。

賽靈思在其FPGA中提供了豐富的時(shí)鐘資源,大多數(shù)設(shè)計(jì)人員在他們的FPGA設(shè)計(jì)中或多或少都會(huì)用到。不過對FPGA設(shè)計(jì)新手來說,什么時(shí)候用DCM、PLL、PMCD和MMCM四大類型中的哪一種,讓他們頗為困惑。賽靈思現(xiàn)有的FPGA中沒有一款同時(shí)包含這四種資源(見表1)。

pIYBAGASfNeAQqQkAAJNt6n9Y2w556.png

這四大類中的每一種都針對特定的應(yīng)用。例如,數(shù)字時(shí)鐘管理器(DCM)適用于實(shí)現(xiàn)延遲鎖相環(huán)(DLL)、數(shù)字頻率綜合器、數(shù)字移相器或數(shù)字頻譜擴(kuò)展器。DCM還是鏡像、發(fā)送或再緩沖時(shí)鐘信號的理想選擇。另一種時(shí)鐘資源相位匹配時(shí)鐘分頻器(PMCD)可用于實(shí)現(xiàn)相位匹配分配時(shí)鐘或相位匹配延遲時(shí)鐘。

鎖相環(huán)(PLL)和混合模式時(shí)鐘管理器(MMCM)處理的工作有許多是相同的,比如頻率綜合、內(nèi)外部時(shí)鐘抖動(dòng)濾波、時(shí)鐘去歪斜等。這兩種資源也可用于鏡像、發(fā)送或再緩沖時(shí)鐘信號。

在深思設(shè)計(jì)實(shí)現(xiàn)細(xì)節(jié)時(shí),把這些通常用法記在心里,有助于理清時(shí)鐘選擇的思路。對于長期產(chǎn)品發(fā)展規(guī)劃而言,在制定合適的時(shí)鐘策略時(shí),應(yīng)考慮各個(gè)器件系列之間的兼容性。下面讓我們深入了解一下這些時(shí)鐘資源。

您可以使用DCM將時(shí)鐘源的輸入時(shí)鐘信號相乘,生成高頻率時(shí)鐘信號。與此類似,可以將來自高頻率時(shí)鐘源的輸入時(shí)鐘信號相除,生成低頻率時(shí)鐘信號。

數(shù)字時(shí)鐘管理器

顧名思義,數(shù)字時(shí)鐘管理器(DCM)是一種用于管理時(shí)鐘架構(gòu)并有助于時(shí)鐘信號成形和操控的模塊。DCM內(nèi)含一個(gè)延遲鎖相環(huán)(DLL),可根據(jù)輸入時(shí)鐘信號,去除DCM輸出時(shí)鐘信號的歪斜,從而避免時(shí)鐘分配延遲。

DLL 內(nèi)含一個(gè)延遲元件和控制邏輯鏈路。延遲元件的輸出是輸入時(shí)鐘延遲所得。延遲時(shí)間取決于延遲元件在延遲鏈路中的位置。這種延遲體現(xiàn)為針對原始時(shí)鐘的相位改變或相移,這就是所謂的“數(shù)字相移”。圖1所示的即為Virtex-4器件中的典型DCM模塊。根據(jù)Virtex-4FPGA用戶指南(UG070,2.6 版本)的介紹,Virtex-4中有三種不同的DCM原語。

o4YBAGASfOWAFhlAAAHeJ6zFnro831.png

一般來說,DLL與PLL類似。但與PLL不同的是DLL不含壓控振蕩器(VCO)。PLL會(huì)一直存儲(chǔ)相位和頻率信息,而DLL只存儲(chǔ)相位信息。因此,DLL略比PLL穩(wěn)定。DLL和PLL這兩種類型都可以使用模擬和數(shù)字技術(shù)設(shè)計(jì),或者混合兩種技術(shù)設(shè)計(jì)。但賽靈思器件中的DCM采用全數(shù)字化設(shè)計(jì)。

由于DCM可以在時(shí)鐘路徑上引入延遲,比如您就可使用DCM可以精確地為DRAM生成行和列訪問選通信號的時(shí)序。與此類似,數(shù)據(jù)總線上的各個(gè)數(shù)據(jù)位可以在不同的時(shí)間到達(dá)。為了正確對數(shù)據(jù)位采樣,接收端的時(shí)鐘信號必須適當(dāng)?shù)嘏c所有數(shù)據(jù)位的到達(dá)保持同步。如果接收器使用發(fā)射時(shí)鐘,可能會(huì)要求延遲從發(fā)送端到接收端的時(shí)鐘信號。

有時(shí)設(shè)計(jì)可能需要一個(gè)更高的時(shí)鐘頻率來運(yùn)行FPGA上的邏輯。但是,只有低頻率輸出的時(shí)鐘源可以用。此時(shí)可以使用DCM將時(shí)鐘源的輸入時(shí)鐘信號相乘,生成高頻率時(shí)鐘信號。與此類似,可以將來自高頻率時(shí)鐘源的輸入時(shí)鐘信號相除,生成低頻率時(shí)鐘信號。這種技術(shù)稱為“數(shù)字頻率綜合”。

設(shè)計(jì)人員使用擴(kuò)頻時(shí)鐘并通過調(diào)制時(shí)鐘信號來降低時(shí)鐘信號的峰值電磁輻射。未經(jīng)調(diào)制的時(shí)鐘信號的峰值會(huì)產(chǎn)生高電磁輻射。但經(jīng)調(diào)制后,電磁輻射被擴(kuò)展到一系列時(shí)鐘頻率上,從而降低了所有頻點(diǎn)的輻射。一般來說,如果需要滿足一定的最大電磁輻射要求和在FPGA上執(zhí)行高速處理的時(shí)候(比如說通信系統(tǒng)中接收器使用的解串器),就需要使用擴(kuò)頻時(shí)鐘。因此,F(xiàn)PGA中的DCM將乘以輸入擴(kuò)頻時(shí)鐘信號,在內(nèi)部生成高頻時(shí)鐘信號。 DCM的輸出必須準(zhǔn)確地跟隨擴(kuò)頻時(shí)鐘,以保持相位和頻率對齊并更新去歪斜和相移。DCM相位和頻率對齊的惡化會(huì)降低接收器的歪斜裕量。

建立時(shí)鐘的鏡像需要將時(shí)鐘信號送出FPGA器件,然后又將它接收回來??梢允褂眠@種方法為多種器件的板級時(shí)鐘信號去歪斜。DCM能夠把時(shí)鐘信號從FPGA發(fā)送到另一個(gè)器件。這是因?yàn)镕PGA的輸入時(shí)鐘信號不能直接路由到輸出引腳,沒有這樣的路由路徑可用。如果僅需要發(fā)送時(shí)鐘信號,那么使用DCM將時(shí)鐘信號發(fā)送到輸出引腳,可以確保信號的保真度。另外也可選擇在時(shí)鐘信號發(fā)送之前,將DCM輸出連接到ODDR觸發(fā)器。當(dāng)然也可以選擇不使用DCM,僅使用ODDR 來發(fā)送時(shí)鐘信號。往往時(shí)鐘驅(qū)動(dòng)器需要將時(shí)鐘信號驅(qū)動(dòng)到設(shè)計(jì)的多個(gè)組件。這會(huì)增大時(shí)鐘驅(qū)動(dòng)器的負(fù)荷,導(dǎo)致出現(xiàn)時(shí)鐘歪斜及其它問題。在這種情況下,需要采用時(shí)鐘緩沖來平衡負(fù)載。

時(shí)鐘可以連接到FPGA上的一系列邏輯塊上。為確保時(shí)鐘信號在遠(yuǎn)離時(shí)鐘源的寄存器上有合適的上升和下降時(shí)間(從而將輸入輸出時(shí)延控制在允許的范圍內(nèi)),需要在時(shí)鐘驅(qū)動(dòng)器和負(fù)載之間插入時(shí)鐘緩沖器。DCM可用作時(shí)鐘輸入引腳和邏輯塊之間的時(shí)鐘緩沖器。

最后,還可以使用DCM將輸入時(shí)鐘信號轉(zhuǎn)換為差分I/O標(biāo)準(zhǔn)信號。例如,DCM可以將輸入的LVTTL時(shí)鐘信號轉(zhuǎn)換為LVDS時(shí)鐘信號發(fā)送出去。

相位匹配時(shí)鐘分頻器

設(shè)計(jì)人員可使用相位匹配時(shí)鐘分頻器(PMCD)來生成相位匹配的分頻輸入時(shí)鐘信號。這與分頻時(shí)鐘的DCM頻率綜合相似。PMCD還能生成設(shè)計(jì)中相位匹配但有延遲的時(shí)鐘信號。在后一種情況下,PCMD能夠在輸入時(shí)鐘信號和其它PMCD輸入時(shí)鐘信號之間保持邊緣對齊、相位關(guān)系和歪斜。與DCM不同的是,在分頻器的值可配置的情況下,賽靈思器件中現(xiàn)有的PMCD生成的時(shí)鐘信號僅按2、4和8分頻。這意味著PMCD生成的時(shí)鐘信號的頻率是輸入時(shí)鐘信號的1/2、1/4和1/8。在如Virtex-4FPGA這樣的賽靈思器件中,PMCD緊鄰 DCM并與其位于同一列上。每一列有兩個(gè)PMCD-DCM對。因此DCM的輸出可以驅(qū)動(dòng)PMCD的輸入。

由于DCM還負(fù)責(zé)處理去歪斜,因此只要不需要去歪斜時(shí)鐘,設(shè)計(jì)人員就可以使用不帶DCM的PMCD。通過專用引腳,還可以把一列中的兩個(gè)PMCD連接起來。圖2是 Virtex-4器件中的PMCD原語。詳細(xì)內(nèi)容請參閱Virtex-4FPGA用戶指南(UG070,2.6版本)。

pIYBAGASfPOAAAfYAAGeOTfnu2U634.png

混合模式時(shí)鐘管理器

另一種類型的時(shí)鐘資源——混合模式時(shí)鐘管理器(MMCM),用于在與給定輸入時(shí)鐘有設(shè)定的相位和頻率關(guān)系的情況下,生成不同的時(shí)鐘信號。不過與DCM不同是,MMCM使用PLL來完成這一工作。Virtex-6FPGA中的時(shí)鐘管理模塊(CMT)有兩個(gè)MMCM,而Virtex-7中的CMT有一個(gè) MMCM和一個(gè)PLL。Virtex-6器件中的MMCM沒有擴(kuò)頻功能,因此輸入時(shí)鐘信號上的擴(kuò)頻不會(huì)被濾波,將直接被傳送給MMCM輸出時(shí)鐘。但 Virtex-7FPGA的MMCM卻有擴(kuò)頻功能。

Virtex-6FPGA中的MMCM要求插入一個(gè)校準(zhǔn)電路,以便在用戶復(fù)位或用戶斷電后確保MMCM正確運(yùn)行。賽靈思ISE設(shè)計(jì)套件11.5版本及更高版本能夠在設(shè)計(jì)的MAP階段自動(dòng)插入必要的校準(zhǔn)電路。若使用賽靈思ISE 的更早版本,則需要使用賽靈思技術(shù)支持部提供的設(shè)計(jì)文件手動(dòng)插入校準(zhǔn)電路。最后需要注意的是,在本移植該設(shè)計(jì),以便用ISE11.5版本或更高版本實(shí)現(xiàn)時(shí),必須手動(dòng)移除校準(zhǔn)電路,或通過適當(dāng)設(shè)置每個(gè)MMCM上的綜合屬性,禁用自動(dòng)插入功能。詳細(xì)介紹請參閱賽靈思答復(fù)記錄AR#33849。

對7系列器件中的MMCM就不存在這樣的問題,因?yàn)檫@些FPGA只得到ISE13.1版本和更高版本以及新型Vivado設(shè)計(jì)套件的支持。Virtex-6系列中提供的MMCM間專用走線可便于用戶將全局時(shí)鐘資源用于設(shè)計(jì)的其余部分。

圖3顯示了Virtex-6FPGA中的MMCM原語。各個(gè)端口的詳細(xì)介紹請參閱Virtex-6FPGA時(shí)鐘資源用戶指南(UG362,2.1版本)。圖 4顯示了賽靈思7系列FPGA中的MMCM原語,有關(guān)詳細(xì)介紹請參閱7系列FPGA時(shí)鐘資源用戶指南(UG472,1.5版本)。

o4YBAGASfQGAfU_sAAPQoBTAu3Q768.png

o4YBAGASfQ6AX1HgAAOctHZeckI770.png

鎖相環(huán)

設(shè)計(jì)人員使用鎖相環(huán)(PLL)主要用于頻率綜合。使用一個(gè)PLL可以從一個(gè)輸入時(shí)鐘信號生成多個(gè)時(shí)鐘信號。結(jié)合DCM使用,還可以用作抖動(dòng)濾波器。Spartan-6、Virtex-5和7系列FPGA中都提供有PLL。Spartan-6和 Virtex-5中均有專門的“DCM到PLL”和“PLL到DCM”走線。Spartan-6和Virtex-5中的PLL輸出是非擴(kuò)頻的。對這兩種器件而言,如果設(shè)計(jì)使用多個(gè)不同時(shí)鐘,都可以用PLL替代DCM。PLL時(shí)鐘輸出具有寬范的配置范圍,而DCM的輸出是預(yù)定的,不可配置。PLL和DCM的選擇還是取決于設(shè)計(jì)的要求。不過如果相移是必需的,就應(yīng)該明確地選擇DCM。

同時(shí),7系列器件中的PLL所實(shí)現(xiàn)的功能沒有 MMCM所實(shí)現(xiàn)的多。因此雖然MMCM是建立在PLL架構(gòu)之上,但7系列器件中也有獨(dú)立的PLL。圖5顯示了Virtex-5FPGA中的PLL原語。各個(gè)端口的詳細(xì)介紹請參閱Virtex-5用戶指南(UG190,5.4版本)。

pIYBAGASfR2AU-qbAAL-T1HJSrM250.png

設(shè)計(jì)移植

掌握四種主要的時(shí)鐘資源之間的差異及其在不同器件系列中的可用性非常重要。同時(shí),在不同的系列中,相似的資源(比如DCM)可能在功能上并不完全相同。例如,Spartan-6FPGA中的DCM支持?jǐn)U頻時(shí)鐘,但Virtex-5和Virtex-5器件中的DCM就不支持。

在規(guī)劃未來設(shè)計(jì)向更高端系列移植時(shí),除了確保功能,為給定設(shè)計(jì)選擇正確的時(shí)鐘資源也很重要。如表1所示,Virtex-6和7系列中的MMCM能夠與之前系列中的DCM向后兼容。但需要判斷在多大程度上支持向后兼容性,因?yàn)樗羞@些時(shí)鐘資源都具有多功能性,提供與時(shí)鐘相關(guān)的多種不同功能。在制定產(chǎn)品長期發(fā)展規(guī)劃時(shí),必須對兼容性了如指掌。

(作者:Sharad Sinha,南洋理工大學(xué))
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1625

    文章

    21628

    瀏覽量

    601261
  • 時(shí)鐘管理器
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    5308
收藏 人收藏

    評論

    相關(guān)推薦

    C2000位置管理器BISS-C庫用戶指南

    電子發(fā)燒友網(wǎng)站提供《C2000位置管理器BISS-C庫用戶指南.pdf》資料免費(fèi)下載
    發(fā)表于 11-09 15:19 ?0次下載
    C2000位置<b class='flag-5'>管理器</b>BISS-C庫用戶指南

    具有連接管理器TRM的TMS320F2838x實(shí)時(shí)微控制

    電子發(fā)燒友網(wǎng)站提供《具有連接管理器TRM的TMS320F2838x實(shí)時(shí)微控制.pdf》資料免費(fèi)下載
    發(fā)表于 11-09 14:25 ?0次下載
    具有連接<b class='flag-5'>管理器</b>TRM的TMS320F2838x實(shí)時(shí)微控制<b class='flag-5'>器</b>

    bq40z50EVM鋰離子電池包管理器評估模塊

    電子發(fā)燒友網(wǎng)站提供《bq40z50EVM鋰離子電池包管理器評估模塊.pdf》資料免費(fèi)下載
    發(fā)表于 11-07 09:42 ?0次下載
    bq40z50EVM鋰離子電池包<b class='flag-5'>管理器</b>評估模塊

    TLV320AIC31的HPLOUT輸出到音頻管理器,音頻管理器輸出接到耳機(jī),聲音幾乎聽不到怎么處理?

    TLV320AIC31的HPLOUT后面接到音頻管理器的輸入,對我這邊要求是,匹配阻抗600歐姆時(shí),輸出電壓最大有效值800mv,請問TLV320AIC31的HPLOUT滿足這樣的輸出要求嗎,還是說必須
    發(fā)表于 10-12 07:02

    負(fù)載管理器的主要功能

    負(fù)載管理器(Load Manager)是計(jì)算機(jī)系統(tǒng)中的一個(gè)關(guān)鍵組件,它負(fù)責(zé)分配和管理計(jì)算資源,以確保系統(tǒng)運(yùn)行的效率和穩(wěn)定性。負(fù)載管理器的主要功能包括任務(wù)調(diào)度、資源分配、性能監(jiān)控、故障恢復(fù)等。以下
    的頭像 發(fā)表于 10-10 11:26 ?232次閱讀

    FPGA如何消除時(shí)鐘抖動(dòng)

    FPGA(現(xiàn)場可編程門陣列)設(shè)計(jì)中,消除時(shí)鐘抖動(dòng)是一個(gè)關(guān)鍵任務(wù),因?yàn)?b class='flag-5'>時(shí)鐘抖動(dòng)會(huì)直接影響系統(tǒng)的時(shí)序性能、穩(wěn)定性和可靠性。以下將詳細(xì)闡述FPGA中消除
    的頭像 發(fā)表于 08-19 17:58 ?920次閱讀

    NN325-Q1多重感應(yīng)觸摸管理器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《NN325-Q1多重感應(yīng)觸摸管理器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 08-06 09:42 ?0次下載
    NN325-Q1多重感應(yīng)觸摸<b class='flag-5'>管理器</b>數(shù)據(jù)表

    FPGA時(shí)鐘電路結(jié)構(gòu)原理

    FPGA 中包含一些全局時(shí)鐘資源。以AMD公司近年的主流FPGA為例,這些時(shí)鐘資源由CMT(時(shí)鐘管理器
    發(fā)表于 04-25 12:58 ?1664次閱讀
    <b class='flag-5'>FPGA</b>的<b class='flag-5'>時(shí)鐘</b>電路結(jié)構(gòu)原理

    FX3無法啟動(dòng)啟動(dòng),電腦設(shè)備管理器不能識(shí)別產(chǎn)品

    電腦連接產(chǎn)品,設(shè)備管理器和USB Control Center都無法識(shí)別產(chǎn)品, 無法進(jìn)行FX3->SPI flash,產(chǎn)品FX3不能啟動(dòng)與FPGA有關(guān)系嗎?謝謝。
    發(fā)表于 04-15 17:00

    四路集成電源設(shè)備電源管理器TPS2384數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《四路集成電源設(shè)備電源管理器TPS2384數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 04-07 09:26 ?0次下載
    四路集成電源設(shè)備電源<b class='flag-5'>管理器</b>TPS2384數(shù)據(jù)表

    超級電容管理器bq33100數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《超級電容管理器bq33100數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 04-01 10:13 ?2次下載
    超級電容<b class='flag-5'>管理器</b>bq33100數(shù)據(jù)表

    Windows 11 22H2新版任務(wù)管理器新增啟用隱藏功能

    關(guān)于如何隱藏調(diào)用舊版任務(wù)管理器,網(wǎng)友 @thebookisclosed 分享了詳細(xì)步驟。他指出,在現(xiàn)有 Windows 11 環(huán)境中,即使按 Ctrl+Shift+Esc 組合鍵也難以調(diào)出老版本的任務(wù)管理器,需通過特定路徑“C:\Windows\SysWOW64\Task
    的頭像 發(fā)表于 03-27 15:08 ?446次閱讀

    fpga芯片是什么意思

    FPGA(Field-Programmable Gate Array),即現(xiàn)場可編程門陣列,是一種可編程邏輯芯片,其邏輯電路可以通過編程修改,從而實(shí)現(xiàn)不同的功能。FPGA芯片由可編程邏輯單元、寄存、
    的頭像 發(fā)表于 03-14 16:37 ?2151次閱讀

    FPGA時(shí)鐘內(nèi)部設(shè)計(jì)方案

    的)、頻率限制和不同時(shí)鐘管理器的抖動(dòng)特性,以及能用于單個(gè)時(shí)鐘域的時(shí)鐘最大數(shù)量。 本文介紹了時(shí)鐘設(shè)計(jì)方案中的每個(gè)部分,并推薦了一些設(shè)計(jì)方法。
    發(fā)表于 01-22 09:30 ?546次閱讀
    <b class='flag-5'>FPGA</b><b class='flag-5'>時(shí)鐘</b>內(nèi)部設(shè)計(jì)方案

    FPGA時(shí)鐘的用法

    生成時(shí)鐘包括自動(dòng)生成時(shí)鐘(又稱為自動(dòng)衍生時(shí)鐘)和用戶生成時(shí)鐘。自動(dòng)生成時(shí)鐘通常由PLL或MMCM生成,也可以由具有分頻功能的
    的頭像 發(fā)表于 01-11 09:50 ?1600次閱讀
    <b class='flag-5'>FPGA</b>中<b class='flag-5'>時(shí)鐘</b>的用法