采用Spartan2系列FPGA器件實(shí)現(xiàn)全數(shù)字鎖相環(huán)路的設(shè)計(jì)和仿真驗(yàn)證_第1頁(yè)
采用Spartan2系列FPGA器件實(shí)現(xiàn)全數(shù)字鎖相環(huán)路的設(shè)計(jì)和仿真驗(yàn)證_第2頁(yè)
采用Spartan2系列FPGA器件實(shí)現(xiàn)全數(shù)字鎖相環(huán)路的設(shè)計(jì)和仿真驗(yàn)證_第3頁(yè)
采用Spartan2系列FPGA器件實(shí)現(xiàn)全數(shù)字鎖相環(huán)路的設(shè)計(jì)和仿真驗(yàn)證_第4頁(yè)
采用Spartan2系列FPGA器件實(shí)現(xiàn)全數(shù)字鎖相環(huán)路的設(shè)計(jì)和仿真驗(yàn)證_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

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

文檔簡(jiǎn)介

采用Spartan2系列FPGA器件實(shí)現(xiàn)全數(shù)字鎖相環(huán)路的設(shè)計(jì)和仿真驗(yàn)證數(shù)字鎖相環(huán)路已在數(shù)字通信、無(wú)線電電子學(xué)及電力系統(tǒng)自動(dòng)化等領(lǐng)域中得到了極為廣泛的應(yīng)用。傳統(tǒng)的全數(shù)字鎖相環(huán)路(DPLL)是由中、小規(guī)模TTL集成電路構(gòu)成。這類DPLL工作頻率低,可靠性較差。隨著集成電路技術(shù)的發(fā)展,不僅能夠制成頻率較高的單片集成鎖相環(huán)路,而且可以把整個(gè)系統(tǒng)集成到一個(gè)芯片上去,實(shí)現(xiàn)所謂片上系統(tǒng)SOC(Systemonachip)。因此,可以把全數(shù)字鎖相環(huán)路作為一個(gè)功能模塊嵌入SOC,構(gòu)成片內(nèi)鎖相環(huán)。下面介紹采用VHDL技術(shù)設(shè)計(jì)DPLL的一種方案。1、工作原理全數(shù)字鎖相環(huán)路的結(jié)構(gòu)框圖如圖1所示其中數(shù)字鑒相器由異或門構(gòu)成,數(shù)字環(huán)路濾波器由變模可逆計(jì)數(shù)器構(gòu)成,數(shù)控振蕩器由加/減脈沖控制器和除N計(jì)數(shù)器組成。可逆計(jì)數(shù)器和加/減脈沖控制器的時(shí)鐘頻率分別為Mf0和2Nf0。這里f0是環(huán)路的中心頻率,一般情況下M和N為2的整數(shù)冪。時(shí)鐘2Nf0經(jīng)除H(=M/2N)計(jì)數(shù)器得到。限時(shí)的相應(yīng)波形如圖2所示。當(dāng)環(huán)路瑣定時(shí),u1和u2正交,鑒相器的輸出信號(hào)ud為50%占空比的方波,此時(shí)定義相位誤差為零。在這種情況下,可逆計(jì)數(shù)器“加”與“減”的周期相同,只要可逆計(jì)數(shù)器的k值足夠大(k>M/4),其輸出端就不會(huì)產(chǎn)生進(jìn)位或借位脈沖。這時(shí),加/減脈沖控制器只對(duì)其時(shí)鐘2Nf0進(jìn)行二分頻,使u1和u2的相位保持正交。在環(huán)路未鎖定的情況下,若ud=0時(shí),它使可逆計(jì)數(shù)器向上加計(jì)數(shù),并導(dǎo)致進(jìn)位脈沖產(chǎn)生,進(jìn)位脈沖作用到加/減脈沖控制器的“加”控制端i,該控制器便在二分頻過程中加入半個(gè)時(shí)鐘周期。反之,若ud=1,可逆計(jì)數(shù)器減計(jì)數(shù),并將發(fā)出借位脈沖到加/減脈沖控制器的“減”輸入端d,于是,該控制器便在二分頻的過程中減去半個(gè)周期。這個(gè)過程是連續(xù)發(fā)生的。加/減脈沖控制器的輸出經(jīng)過除N計(jì)數(shù)器后,使得本地估算信號(hào)u2的相位受到調(diào)整控制,最終達(dá)到鎖定狀態(tài)。2、環(huán)路部件的設(shè)計(jì)這里重點(diǎn)介紹數(shù)字環(huán)路濾波器的設(shè)計(jì)。數(shù)字環(huán)路濾波器是由變??赡嬗?jì)數(shù)器構(gòu)成。在ud的控制下,當(dāng)j=0時(shí),對(duì)時(shí)鐘Mf0進(jìn)行“加”計(jì)數(shù);當(dāng)j=1時(shí),進(jìn)行“減”計(jì)數(shù)??赡嬗?jì)數(shù)器的計(jì)數(shù)容量(模數(shù)k)可以利用A、B、C、D四位進(jìn)行預(yù)置,從而方便地改變模數(shù)。其預(yù)置模數(shù)的范圍為,當(dāng)D、C、B、A在0001~1111取值時(shí),相應(yīng)模數(shù)的變化范圍是23~217。可見,可逆計(jì)數(shù)器的長(zhǎng)度能夠根據(jù)模數(shù)k值的大小來(lái)實(shí)現(xiàn)數(shù)字編程控制。取D、C、B、A為0001時(shí),K=23,計(jì)數(shù)器長(zhǎng)度只有三級(jí),因而可以擴(kuò)大捕捉帶,縮短鎖定時(shí)間。在D、C、B、A取1111時(shí),K=217,計(jì)數(shù)器長(zhǎng)度變?yōu)槭呒?jí),這時(shí)捕捉帶縮小,縮定時(shí)間延長(zhǎng)。變模可逆計(jì)數(shù)器的VHDL設(shè)計(jì)程序如下:libraryieee?useieee.std_logic_1164.a(chǎn)ll?useieee.std_logic_unsigned.a(chǎn)ll?entitycount_kisportclkjendcbainstd_logicr1r2outstd_logic?end?architecturebehaveofcount_kissignalcqkmostd_logic_vector16downto0?signalcao1cao2std_logic?signalinstructionstd_logic_vector3downto0?begininstruction<=d&c&b&a?withinstructionselectmo<=″00000000000000111″when″0001″?″00000000000001111″when″0010″?″00000000000011111″when″0011″?″00000000000111111″when″0100″?″00000000001111111″when″0101″?″00000000011111111″when″0110″?″00000000111111111″when″0111″?″00000001111111111″when″1000″?″00000011111111111″when″1001″?″00000111111111111″when″1010″?″00001111111111111″when″1011″?″00011111111111111″when″1100″?″00111111111111111″when″1101″?″01111111111111111″when″1110″?″11111111111111111″when″1111″?″00000000000000111″whenothers?processclkenjkcqbeginifclk'eventandclk='1'thenk<=mo?ifen='1'thenifj='0'thenifcq<kthencq<=cq+1?elsecq<=?others=>'0'?endifelseifcq>0thencq<=cq-1?elsecq<=k?endif?endifelsecq<=?others=>'0'?endifendifendprocess?processenjcqkbeginifen='1'thenifj='0'thenifcq=kthencao1<='1'?elsecao1<='0'?endifcao2<='0'?elseifcq=″00000000000000000″thencao2<='1'?elsecao2<='0'?endifcao1<='0'?endifelsecao1<='0'?cao2<='0'?endif?endprocess?r1<=cao1?r2<=cao2?endbehave?根據(jù)對(duì)其他環(huán)路部件的功能分析,也可以設(shè)計(jì)出相應(yīng)的VHDL程序。3設(shè)計(jì)實(shí)現(xiàn)本設(shè)計(jì)中全數(shù)字鎖相環(huán)路采用XILINX公司的Foundation3.1版本進(jìn)行設(shè)計(jì),并用Spartan2系列的FPGA予以實(shí)現(xiàn)。下面分別給出變??赡嬗?jì)數(shù)器和加/減脈沖控制器的仿真波形如圖3、圖4所示。從圖3中可見,當(dāng)j=0時(shí),可逆計(jì)數(shù)器做加計(jì)數(shù),若取模k=24,則當(dāng)計(jì)數(shù)值cq=0000FH時(shí),計(jì)數(shù)器產(chǎn)生進(jìn)位脈沖(r1=1);當(dāng)j=1后,在下一個(gè)時(shí)鐘的上升沿到來(lái)時(shí),可逆計(jì)數(shù)器開始做減計(jì)數(shù),當(dāng)cq=00000H時(shí),產(chǎn)生借位脈沖(r2=1)。改變模k便可延長(zhǎng)或縮短可逆計(jì)數(shù)器產(chǎn)生進(jìn)位脈沖和借位脈沖的時(shí)間。同時(shí),由圖1可知,可逆計(jì)數(shù)的加/減計(jì)數(shù)信號(hào)j是由鑒相器的輸出信號(hào)ud控制的,而其進(jìn)位脈沖r1和借位脈沖r2又分別與加/減脈沖控制器的i和d相接,用于控制其輸出脈沖的序列。由圖4可知,在無(wú)進(jìn)位和借位脈沖時(shí),加/減脈沖控制器對(duì)2Nf0時(shí)鐘進(jìn)行二分頻。一旦可逆計(jì)數(shù)器有進(jìn)位脈沖或借位脈沖輸出時(shí),作用到加/減脈沖控制器i或d端,便使其輸出脈沖序列發(fā)生了變化。當(dāng)可逆計(jì)數(shù)器輸出一個(gè)進(jìn)位脈沖時(shí),使i=1,則在i的下降沿到來(lái)之后,加/減脈沖控制器的輸出端q插入一個(gè)脈沖,即在其輸出序列中加入了半個(gè)周期;反之,當(dāng)可逆計(jì)數(shù)器輸出一個(gè)借位脈沖時(shí),使d=1,則在d的下降沿到來(lái)之后,q端刪除一個(gè)脈沖,即在加/減脈沖控制器的輸出序列中刪去了半個(gè)周期。由以上對(duì)圖3、4仿真波形的分析可知,變模可逆計(jì)數(shù)器和加/減脈沖控制器的邏輯功能符合設(shè)計(jì)要求。把全數(shù)字鎖相環(huán)路的各部件連接起來(lái)進(jìn)行系統(tǒng)仿真,可得其仿真波形如圖5和圖6所示。其中圖5是取k=25時(shí)的系統(tǒng)仿真波形,由圖中可見,u1和u2達(dá)到鎖定狀態(tài)時(shí)的仿真時(shí)間是175μs。圖6是取k=28時(shí)的系統(tǒng)仿真波形,在這種情況下,u1和u2達(dá)到鎖定狀態(tài)時(shí)的仿真時(shí)間是1.04ms。顯然,模k愈大,環(huán)路進(jìn)入鎖定狀態(tài)的時(shí)間愈長(zhǎng)。值得指出的是,在環(huán)路鎖定狀態(tài)下,由于可逆計(jì)數(shù)器的連續(xù)計(jì)數(shù),或在噪聲的干擾下,會(huì)產(chǎn)生進(jìn)位和借位脈沖。如果k值取得太小,則可逆計(jì)數(shù)器因頻繁地循環(huán)計(jì)數(shù)而產(chǎn)生進(jìn)位或借位脈沖,這就導(dǎo)致了在環(huán)路的輸出端出現(xiàn)相位抖動(dòng)。為了減少這種相位抖動(dòng),k值必須取大于M/4。由以上分析可知,模k的

溫馨提示

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

評(píng)論

0/150

提交評(píng)論