原創(chuàng)聲明:
本原創(chuàng)教程由芯驛電子科技(上海)有限公司(ALINX)創(chuàng)作,版權(quán)歸本公司所有,如需轉(zhuǎn)載,需授權(quán)并注明出處(http://www.alinx.com)。
適用于板卡型號(hào):
PGL22G/PGL12G
1. 文檔簡(jiǎn)介
很多初學(xué)者看到板上只有一個(gè)50Mhz時(shí)鐘輸入的時(shí)候都產(chǎn)生疑惑,時(shí)鐘怎么才50Mhz?如果要工作在100Mhz、150Mhz怎么辦?在很多FPGA芯片內(nèi)部都集成了PLL,其他廠商可能不叫PLL,但是也有類(lèi)似的功能模塊,通過(guò)PLL可以倍頻分頻,產(chǎn)生其他很多時(shí)鐘。本實(shí)驗(yàn)通過(guò)調(diào)用PLL ip core來(lái)學(xué)習(xí)PLL的使用方法。
2. 實(shí)驗(yàn)環(huán)境
-
Windows 10 64位
-
開(kāi)發(fā)板
3. 實(shí)驗(yàn)原理
PLL(phase-locked loop),即鎖相環(huán)。是FPGA中的重要資源。由于一個(gè)復(fù)雜的FPGA系統(tǒng)往往需要多個(gè)不同頻率,相位的時(shí)鐘信號(hào)。所以,一個(gè)FPGA芯片中PLL的數(shù)量是衡量FPGA芯片能力的重要指標(biāo)。FPGA的設(shè)計(jì)中,時(shí)鐘系統(tǒng)的FPGA高速的設(shè)計(jì)極其重要,一個(gè)低抖動(dòng), 低延遲的系統(tǒng)時(shí)鐘會(huì)增加FPGA設(shè)計(jì)的成功率。
本實(shí)驗(yàn)將通過(guò)使用PLL, 輸出一個(gè)方波到開(kāi)發(fā)板上的擴(kuò)展口J8的PIN3腳,來(lái)給大家演示使用PLL的方法。
-
數(shù)字鎖相環(huán)(PLL)
PLL內(nèi)部的功能框圖如下圖所示:Logos PLL 主要由鑒頻鑒相器(PFD,Phase Frequency Detector)、環(huán)路濾波器(LF,Loop Filter)和壓控振蕩器(VCO,Voltage Controlled Oscillator) 等組成。通過(guò)不同的參數(shù)配置,可實(shí)現(xiàn)信號(hào)的調(diào)頻、調(diào)相、同步、頻率綜合等功能。 LogosPLL 的電路框圖如下圖所示:
想了解更多的時(shí)鐘配置, 建議大家看看官方提供的文檔"Logos系列產(chǎn)品PLL IP用戶指南 "。
4. 建立工程
本實(shí)驗(yàn)中為大家演示如果調(diào)用PLL IP核來(lái)產(chǎn)生不同頻率的時(shí)鐘, 并把其中的一個(gè)時(shí)鐘輸出到FPGA外部IO上, 開(kāi)發(fā)板J8的PIN3腳。
下面為程序設(shè)計(jì)的詳細(xì)步驟。
1. 新建一個(gè)pll_test的工程,點(diǎn)擊Tool菜單下的IP Compiler。
2. 再在彈出的界面里選擇PLL下的Logos PLL,再對(duì)PLL取名clk_wiz_0,然后單擊Customize。
3. 在Basic Configurations界面里, 勾選復(fù)位管腳使能"Enable Port pll_rst",輸入的時(shí)鐘頻率為50Mhz。輸出選擇clk_out0~clk_out3四個(gè)時(shí)鐘的輸出,頻率分別為200Mhz, 100Mhz, 50Mhz, 25Mhz。這里還可以設(shè)置時(shí)鐘輸出的相位,我們不做設(shè)置,保留默認(rèn)相位, 點(diǎn)擊 OK完成,
5. 然后點(diǎn)擊Generate按鈕生成PLL IP的設(shè)計(jì)文件。
6. 這時(shí)一個(gè) clk_wiz_0 IP會(huì)自動(dòng)添加到我們的pll_test項(xiàng)目中, 用戶可以雙擊它來(lái)修改這個(gè)IP的配置。
7. 我們?cè)賮?lái)編寫(xiě)一個(gè)頂層設(shè)計(jì)文件來(lái)實(shí)例化這個(gè)PLL IP, 編寫(xiě)pll_test.v代碼如下。
`timescale1ns/1ps//================================================================================//RevisionHistory://DateByRevisionChangeDescription//--------------------------------------------------------------------------------//2019/04/13lhj1.0Original//*******************************************************************************///////////////////////////////////////////////////////////////////////////////////modulepll_test(inputsys_clk,inputrst_n,outputclk_out,//pllclockoutputJ8_Pin3outputlocked);/////////////////////PLLIPcall////////////////////////////clk_wiz_0clk_wiz_0_inst(//Clockinports.clkin1(sys_clk),//IN50Mhz//Clockoutports.clkout0(),//OUT200Mhz.clkout1(),//OUT100Mhz.clkout2(),//OUT50Mhz.clkout3(clk_out),//OUT25Mhz //Statusandcontrolsignals .pll_rst(~rst_n),//RESETIN.pll_lock(locked));//OUTendmodule
程序中先用實(shí)例化clk_wiz_0, 把單端50Mhz時(shí)鐘信號(hào)輸入sys_clk到clk_wiz_0的clkin1,把clk_out3的輸出賦給clk_out。
8. 保存工程后,pll_test自動(dòng)成為了top文件,clk_wiz_0成為Pll_test文件的子模塊。
9. 再為工程進(jìn)行管腳約束,這里不做介紹,見(jiàn)教程《LED流水燈實(shí)驗(yàn)及仿真》中的內(nèi)容。
注意:例化的目的是在上一級(jí)模塊中調(diào)用例化的模塊完成代碼功能,在Verilog里例化信號(hào)的格式如下:模塊名必須和要例化的模塊名一致,包括信號(hào)名也必須一致,模塊與模塊之間的連接信號(hào)不能相互沖突,否則會(huì)產(chǎn)生編譯錯(cuò)誤。
5. Modelsim 仿真PLL輸出波形
創(chuàng)建仿真文件vtf_pll_test.v文件,鼠標(biāo)右鍵點(diǎn)擊仿真文件,點(diǎn)擊“run Behavior Simulation”會(huì)打開(kāi)Modelsim軟件進(jìn)行波形仿真。仿真文件和仿真波形如圖所示:
波形圖中 sys_clk為50MHz的系統(tǒng)時(shí)鐘,rst_n為復(fù)位信號(hào),clk_out為PLL輸出的25MHz,locked為波形穩(wěn)定輸出鎖定。
6. 測(cè)量PLL輸出波形
編譯工程并生成pll_test.sbit文件,再把sbit文件下載到FPGA中,接下去我們就可以用示波器來(lái)測(cè)量輸出時(shí)鐘波形了。
用示波器探頭的地線連接到開(kāi)發(fā)板上的地(開(kāi)發(fā)板J8的PIN1腳),信號(hào)端連接開(kāi)發(fā)板J8的PIN3腳(測(cè)量的時(shí)候需要注意,避免示波器表頭碰到其它管腳而導(dǎo)致電源和地短路)。
這時(shí)我們可以在示波器里看到25Mhz的時(shí)鐘波形,波形的幅度為3.3V, 占空比為1:1,波形顯示如下圖所示:
如果您想輸出其它頻率的波形,可以修改時(shí)鐘的輸出為clk_wiz_0的clkout0或clkout1或clkout2。也可以修改clk_wiz_0的clkout3為您想要的頻率,這里也需要注意一下,因?yàn)闀r(shí)鐘的輸出是通過(guò)PLL對(duì)輸入時(shí)鐘信號(hào)的倍頻和分頻系數(shù)來(lái)得到的,所以并不是所有的時(shí)鐘頻率都可以用PLL能夠精確產(chǎn)生的,不過(guò)PLL也會(huì)自動(dòng)為您計(jì)算實(shí)際輸出接近的時(shí)鐘頻率。
-
FPGA
+關(guān)注
關(guān)注
1630文章
21769瀏覽量
604646 -
pll
+關(guān)注
關(guān)注
6文章
780瀏覽量
135223 -
時(shí)鐘
+關(guān)注
關(guān)注
11文章
1740瀏覽量
131629 -
PDS
+關(guān)注
關(guān)注
2文章
31瀏覽量
15326 -
紫光同創(chuàng)
+關(guān)注
關(guān)注
5文章
88瀏覽量
27530
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論