片內(nèi)時(shí)鐘的設(shè)計(jì)
出處:computer00 發(fā)布于:2008-09-12 14:18:51
Xilinx可編程邏輯器件的全局時(shí)鐘為時(shí)鐘分配樹的結(jié)構(gòu),如下圖所示。

圖 可編程邏輯器件的時(shí)鐘分配樹結(jié)構(gòu)
FPGA內(nèi)部的時(shí)鐘分為多個(gè)區(qū)域(某些高端的FPGA)或分為4個(gè)象限(某些低端的FPGA),在這個(gè)區(qū)域或象限內(nèi)有特定多的時(shí)鐘能夠驅(qū)動(dòng)寄存器和RAM的時(shí)鐘端。另外,在樹干上有專用的時(shí)鐘線將進(jìn)入這些區(qū)域和象限的時(shí)鐘連接起來(lái)。
1.全局時(shí)鐘樹和全局時(shí)鐘緩沖器
全局時(shí)鐘網(wǎng)絡(luò)是一個(gè)很長(zhǎng)且扇出也很大的網(wǎng)絡(luò),所以一定不是短的路徑。它會(huì)有相對(duì)較大的延時(shí),其優(yōu)點(diǎn)在于Skew很小。即通過全局時(shí)鐘網(wǎng)絡(luò)到FPGA內(nèi)部的各種資源時(shí),時(shí)鐘沿同時(shí)到達(dá)。這樣對(duì)于一個(gè)同步的系統(tǒng),時(shí)序的計(jì)算和分析會(huì)很容易。
FPGA的全局時(shí)鐘路徑需要專用時(shí)鐘驅(qū)動(dòng)器,如圖1中的全局時(shí)鐘緩沖器Global Clockbuffer(BUFG),時(shí)鐘信號(hào)只有經(jīng)過BUFG之后才可以驅(qū)動(dòng)全局時(shí)鐘網(wǎng)絡(luò)。
BUFG的例化請(qǐng)參考Xilinx的ISE設(shè)計(jì)工具內(nèi)包含的《器件庫(kù)指南》。這里需要指出的是IBUFG和BUFG不同,IBUFG是全局時(shí)鐘的引腳的緩沖器,是和其他普通管腳的IBUF對(duì)應(yīng)的;而BUFG是內(nèi)部的全局時(shí)鐘的緩沖器。
2.?dāng)?shù)字時(shí)鐘管理器(DCM)和模擬鎖相環(huán)(PLL)
DOM和PLL都可以用來(lái)做頻率合成和相位調(diào)整,目前在Xilinx高端的Virtex-5中才有PLL,DOM是一直都存在于Xilinx高低端的FPGA中的。
(1)DOM和PLL都有其工作的時(shí)鐘頻率的范圍,應(yīng)參考具體器件的手冊(cè)決定是否可以采
用DOM和PLL。
(2)注意DOM的phase shift為所有的DOM的輸出均增加一定的相位偏移。
(3)DOM及PLL的級(jí)聯(lián),無(wú)論采用何種級(jí)聯(lián)方式,注意復(fù)位電路的設(shè)計(jì),原則就是要在DOM或PLL的輸入時(shí)鐘穩(wěn)定之后給出該DOM或PLL的復(fù)位脈沖。
3.片內(nèi)時(shí)鐘設(shè)計(jì)時(shí)需注意的幾個(gè)方面
(1)所有的時(shí)鐘盡量都要使用全局的時(shí)鐘樹資源,如果全局時(shí)鐘資源不夠,需要用到長(zhǎng)線資源或本地走線資源的話,多留意時(shí)序中的clock skew,注意保持時(shí)間(hold time)問題。
(2)通常情況下盡量使用內(nèi)部的DCM及PLL等來(lái)產(chǎn)生各種頻率的時(shí)鐘,避免使用內(nèi)部邏輯生成的時(shí)鐘,因?yàn)樗鼈兛赡芤鹪O(shè)計(jì)中的功能和時(shí)序問題。由組合邏輯產(chǎn)生的時(shí)鐘會(huì)引入毛刺造成功能問題,而引入的延遲則會(huì)導(dǎo)致時(shí)序問題。如果用組合邏輯的輸出作為時(shí)鐘信號(hào)或異步復(fù)位信號(hào),那么在設(shè)計(jì)中就會(huì)出現(xiàn)毛刺。在同步設(shè)計(jì)中,寄存器輸入數(shù)據(jù)的毛刺是很正常的,對(duì)設(shè)計(jì)沒有什么影響。然而時(shí)鐘輸入(或寄存器異步輸入)上的毛刺或脈沖則會(huì)導(dǎo)致嚴(yán)重的后果,窄毛刺可能違反了寄存器的脈沖寬帶要求。如果當(dāng)毛刺到達(dá)時(shí)鐘輸入時(shí)寄存器的輸入數(shù)據(jù)正在變化,則無(wú)法滿足建立和保持時(shí)序要求。即使設(shè)計(jì)沒有違反時(shí)序需求,寄存器輸出也可能會(huì)出現(xiàn)變化,造成設(shè)計(jì)中其他部分的功能不正常。用于生成內(nèi)部時(shí)鐘的組合邏輯也會(huì)增加時(shí)鐘線的延遲,在一些設(shè)計(jì)中時(shí)鐘線上的邏輯延遲可能會(huì)造成時(shí)鐘偏移大于兩個(gè)寄存器之間的數(shù)據(jù)通道的長(zhǎng)度,從而造成hold time違反的問題。
如果一定需要由內(nèi)部邏輯來(lái)生成時(shí)鐘信號(hào)的話,必須采用寄存器輸出。同時(shí)為了減小時(shí)鐘域上的時(shí)鐘偏移,應(yīng)把生成的時(shí)鐘指定到FPGA一個(gè)高扇出和低Skew的時(shí)鐘分配樹上,即為該輸出信號(hào)分配全局時(shí)鐘緩沖器(BUFG)或第2全局時(shí)鐘資源來(lái)實(shí)現(xiàn)。
(3)在邏輯設(shè)計(jì)時(shí)經(jīng)常將主時(shí)鐘分頻,以產(chǎn)生所需的各種頻率的時(shí)鐘信號(hào)。對(duì)這種需求,建議一定要采用DOM或PLL,以保證時(shí)鐘信號(hào)的穩(wěn)定。如果采用邏輯來(lái)實(shí)現(xiàn)分頻器,則一定要采用同步寄存器來(lái)實(shí)現(xiàn)。
(4)在FPGA設(shè)計(jì)中選擇時(shí)鐘信號(hào)時(shí),如果器件中存在BUFGMUX緩沖器,一定采用BUFGMUX來(lái)實(shí)現(xiàn),這樣可以避免產(chǎn)生時(shí)鐘信號(hào)的毛刺;對(duì)于沒有BUFGMUX的器件,需要采用同步和復(fù)位控制電路來(lái)實(shí)現(xiàn),避免毛刺產(chǎn)生。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 什么是氫氧燃料電池,氫氧燃料電池的知識(shí)介紹2025/8/29 16:58:56
- SQL核心知識(shí)點(diǎn)總結(jié)2025/8/11 16:51:36
- 等電位端子箱是什么_等電位端子箱的作用2025/8/1 11:36:41
- 基于PID控制和重復(fù)控制的復(fù)合控制策略2025/7/29 16:58:24
- 什么是樹莓派?一文快速了解樹莓派基礎(chǔ)知識(shí)2025/6/18 16:30:52









