【ZYNQ Ultrascale+ MPSOC FPGA教程】第五章 Vivado下PLL實(shí)驗(yàn) ALINX
資料介紹
作者: ALINX
* 本原創(chuàng)教程由芯驛電子科技(上海)有限公司(ALINX)創(chuàng)作,版權(quán)歸本公司所有,如需轉(zhuǎn)載,需授權(quán)并注明出處。
適用于板卡型號(hào):
AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E/AXU4EV-P/AXU5EV-E/AXU5EV-P /AXU9EG/AXU15EG
實(shí)驗(yàn)Vivado工程為“pll_test”。
很多初學(xué)者看到板上只有一個(gè)25Mhz時(shí)鐘輸入的時(shí)候都產(chǎn)生疑惑,時(shí)鐘怎么是25Mhz?如果要工作在100Mhz、150Mhz怎么辦?其實(shí)在很多FPGA芯片內(nèi)部都集成了PLL,其他廠商可能不叫PLL,但是也有類似的功能模塊,通過(guò)PLL可以倍頻分頻,產(chǎn)生其他很多時(shí)鐘。本實(shí)驗(yàn)通過(guò)調(diào)用PLL IP core來(lái)學(xué)習(xí)PLL的使用、vivado的IP core使用方法。
1.實(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è)方波到開發(fā)板上的擴(kuò)展口,來(lái)給大家演示在Vivado軟件里使用PLL的方法。
Ultrascale+系列的FPGA使用了專用的全局(Global)和區(qū)域(Regional)IO和時(shí)鐘資源來(lái)管理設(shè)計(jì)中各種的時(shí)鐘需求。Clock Management Tiles(CMT)提供了時(shí)鐘合成(Clock frequency synthesis),傾斜矯正(deskew),過(guò)濾抖動(dòng)(jitter filtering)功能。
每個(gè)CMTs包含一個(gè)MMCM(mixed-mode clock manager)和一個(gè)PLL。如下圖所示,CMT的輸入可以是BUFR,IBUFG,BUFG,GT,BUFH,本地布線(不推薦使用),輸出需要接到BUFG或者BUFH后再使用
混合模式時(shí)鐘管理器(MMCM)
MMCM用于在與給定輸入時(shí)鐘有設(shè)定的相位和頻率關(guān)系的情況下,生成不同的時(shí)鐘信號(hào)。MMCM提供了廣泛而強(qiáng)大的時(shí)鐘管理功能,
MMCM內(nèi)部的功能框圖如下圖所示:

數(shù)字鎖相環(huán)(PLL)
鎖相環(huán)(PLL)主要用于頻率綜合。使用一個(gè)PLL可以從一個(gè)輸入時(shí)鐘信號(hào)生成多個(gè)時(shí)鐘信號(hào)。與MMCM相比,不能進(jìn)行時(shí)鐘的deskew,不具備高級(jí)相位調(diào)整,倍頻器和分頻器可調(diào)范圍較小等。
PLL功能框圖如下圖所示:

想了解更多的時(shí)鐘資源, 建議大家看看Xilinx提供的文檔"7 Series FPGAs Clocking Resources User Guide"。
2. 創(chuàng)建Vivado工程
本實(shí)驗(yàn)中為大家演示如果調(diào)用Xilinx提供的PLL IP核來(lái)產(chǎn)生不同頻率的時(shí)鐘, 并把其中的一個(gè)時(shí)鐘輸出到FPGA外部IO上, 下面為程序設(shè)計(jì)的詳細(xì)步驟。在創(chuàng)建PLL IP之前,有一點(diǎn)需要提下,在原理圖中可以看到PL_REF_CLK,也就是25MHz參考時(shí)鐘,在BANK44中,而且屬于HDGC

在ug572文檔中提到HDGC引腳不能直接連接到MMCMs/PLLs,需要經(jīng)過(guò)BUFG,再連接到MMCMs/PLLs,這個(gè)地方是需要注意的。

新建一個(gè)pll_test的工程,點(diǎn)擊Project Manager界面下的IP Catalog。

2.1 再在IP Catalog界面里選擇FPGA Features and Design/Clocking下面的Clocking Wizard,雙擊打開配置界面。

2.2 默認(rèn)這個(gè)Clocking Wizard的名字為clk_wiz_0, 這里我們不做修改。在第一個(gè)界面Clocking Options里,輸入的時(shí)鐘頻率為25Mhz,并選擇No buffer,也就是在PLL之前要接個(gè)BUFG。

2.3 在Output Clocks界面里選擇clk_out1~clk_out4四個(gè)時(shí)鐘的輸出,頻率分別為200Mhz, 100Mhz, 50Mhz, 25Mhz。這里還可以設(shè)置時(shí)鐘輸出的相位,我們不做設(shè)置,保留默認(rèn)相位,點(diǎn)擊 OK完成,

2.4 在彈出的對(duì)話框中點(diǎn)擊Generate按鈕生成PLL IP的設(shè)計(jì)文件。

2.5 這時(shí)一個(gè) clk_wiz_0.xci的IP會(huì)自動(dòng)添加到我們的pll_test項(xiàng)目中, 用戶可以雙擊它來(lái)修改這個(gè)IP的配置。

選擇IP Sources這頁(yè),然后雙擊打開clk_wiz_0.veo文件,這個(gè)文件里提供了這個(gè)IP的實(shí)例化模板。我們只需要把框框的中內(nèi)容拷貝到我們verilog程序中,對(duì)IP進(jìn)行實(shí)例化。

2.6 我們?cè)賮?lái)編寫一個(gè)頂層設(shè)計(jì)文件來(lái)實(shí)例化這個(gè)PLL IP, 編寫pll_test.v代碼如下。注意PLL的復(fù)位是高電平有效,也就是高電平時(shí)一直在復(fù)位狀態(tài),PLL不會(huì)工作,這一點(diǎn)很多新手會(huì)忽略掉。這里我們將rst_n綁定到一個(gè)按鍵上,而按鍵是低電平復(fù)位,因此需要反向連接到PLL的復(fù)位。在程序中插入一個(gè)BUFG原語(yǔ),連接到PLL。
`timescale1ns/1ps module pll_test( input sys_clk,//system clock 25Mhz on board input rst_n,//reset ,low active output clk_out //pll clock output ); wire locked; wire sys_clkbuf ; BUFG BUFG_inst ( .O(sys_clkbuf),// 1-bit output: Clock output. .I(sys_clk)// 1-bit input: Clock input. ); /////////////////////PLL IP call//////////////////////////// clk_wiz_0 clk_wiz_0_inst (// Clock in ports .clk_in1(sys_clkbuf),// IN 25Mhz // Clock out ports .clk_out1(),// OUT 200Mhz .clk_out2(),// OUT 100Mhz .clk_out3(),// OUT 50Mhz .clk_out4(clk_out),// OUT 25Mhz // Status and control signals .reset(~rst_n),// pll reset, high-active .locked(locked));// OUT endmodule
程序中先用實(shí)例化clk_wiz_0, 把25Mhz時(shí)鐘信號(hào)輸入到clk_wiz_0的clk_in1_p和clk_in1_n,把clk_out4的輸出賦給clk_out。
注意:例化的目的是在上一級(jí)模塊中調(diào)用例化的模塊完成代碼功能,在Verilog里例化信號(hào)的格式如下:模塊名必須和要例化的模塊名一致,比如程序中的clk_wiz_0,包括模塊信號(hào)名也必須一致,比如clk_in1,clk_out1,clk_out2.....。連接信號(hào)為TOP程序跟模塊之間傳遞的信號(hào),模塊與模塊之間的連接信號(hào)不能相互沖突,否則會(huì)產(chǎn)生編譯錯(cuò)誤。

2.7 保存工程后,pll_test自動(dòng)成為了top文件,clk_wiz_0成為Pll_test文件的子模塊。

2.8 再為工程添加xdc管腳約束文件pll.xdc,添加方法參考”PL的”Hello World”LED實(shí)驗(yàn)”,也可以直接復(fù)制以下內(nèi)容。并編譯生成bitstream。
############## clock and reset define##################set_property PACKAGE_PIN AB11 [get_ports sys_clk]
set_property IOSTANDARD LVCMOS33 [get_ports sys_clk]
create_clock -period 40.000 -name sys_clk -waveform {0.000 20.000} [get_ports sys_clk]
set_property IOSTANDARD LVCMOS33 [get_ports {rst_n}]
set_property PACKAGE_PIN AA13 [get_ports {rst_n}]
############## pll output define J11 PIN3##################
set_property IOSTANDARD LVCMOS33 [get_ports clk_out]
set_property PACKAGE_PIN A11 [get_ports clk_out]
3.板上驗(yàn)證
編譯工程并生成pll_test.bit文件,再把bit文件下載到FPGA中,接下去我們就可以用示波器來(lái)測(cè)量輸出時(shí)鐘波形了。
用示波器探頭的地線連接到開發(fā)板上的地(開發(fā)板J15的PIN1腳),信號(hào)端連接開發(fā)板J15的PIN3腳(測(cè)量的時(shí)候需要注意,避免示波器表頭碰到其它管腳而導(dǎo)致電源和地短路)。
這時(shí)我們可以在示波器里看到25Mhz的時(shí)鐘波形,波形的幅度為3.3V, 占空比為1:1,波形顯示如下圖所示:

如果您想輸出其它頻率的波形,可以修改時(shí)鐘的輸出為clk_wiz_0的clk_out2或clk_out3或clk_out4。也可以修改clk_wiz_0的clk_out4為您想要的頻率,這里也需要注意一下,因?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í)鐘頻率。
另外需要注意的是,有些用戶的示波器的帶寬和采樣率太低,會(huì)導(dǎo)致測(cè)量高頻時(shí)鐘信號(hào)的時(shí)候,高頻部分衰減太大,測(cè)量波形的幅度會(huì)變低。
- Zynq UltraScale+ MPSoC數(shù)據(jù)手冊(cè) 0次下載
- 采用Zynq UltraScale+ MPSoC滿足汽車ESD和SEED要求
- Zynq UltraScale+ MPSoC中的隔離方法應(yīng)用筆記
- Zynq UltraScale+ MPSoC生產(chǎn)勘誤表
- Zynq UltraScale+ MPSoC數(shù)據(jù)手冊(cè):DC和AC開關(guān)特性
- Zynq UltraScale+ MPSoC驗(yàn)證數(shù)據(jù)手冊(cè)
- Zynq UltraScale+ MPSoC:軟件開發(fā)者指南
- Zynq UltraScale+ MPSoC中的隔離方法
- Zynq UltraScale+ MPSoC的隔離設(shè)計(jì)示例
- 適用于Xilinx Zynq UltraScale+ MPSoC應(yīng)用的電源參考設(shè)計(jì)
- 米爾電子zynq ultrascale+ mpsoc底板外設(shè)資源清單分享
- 如何調(diào)試 Zynq UltraScale+ MPSoC VCU DDR 控制器?
- 【ZYNQ Ultrascale+ MPSOC FPGA教程】第一章 MPSoC芯片介紹
- 【ZYNQ Ultrascale+ MPSOC FPGA教程】第九章Vivado下按鍵實(shí)驗(yàn)
- 電力系統(tǒng)繼電保護(hù)第五章-自動(dòng)重合閘(課件)下載.PPT 0次下載
- 針對(duì)UltraScale/UltraScale+芯片DFX應(yīng)考慮的因素有哪些(1) 776次閱讀
- Xilinx ZYNQ UltraScale+系列產(chǎn)品介紹 2835次閱讀
- FPGAs,Zynq和Zynq MPSoC器件的特點(diǎn) 2671次閱讀
- 基于Xilinx Zynq UltraScale+ RFSoC ZCU216評(píng)估套件詳細(xì)內(nèi)容介紹 1w次閱讀
- 基于Xilinx Zynq ultraScale+ 系列FPGA的AXU2CGB 開發(fā)板評(píng)測(cè) 9735次閱讀
- 米爾科技Zynq UltraScale+ MPSoC技術(shù)參考手冊(cè)介紹 3246次閱讀
- 詳解Xilinx公司Zynq? UltraScale+?MPSoC產(chǎn)品 3357次閱讀
- Xilinx Zynq UltraScale MPSoC可擴(kuò)展電源設(shè)計(jì) 2045次閱讀
- Xilinx Kintex UltraScale+ FPGA KCU116評(píng)估套件主要性能和優(yōu)勢(shì) 6921次閱讀
- Zynq UltraScale+ MPSoC ZCU102評(píng)估套件解決方案 8865次閱讀
- Enea OSE可實(shí)現(xiàn)對(duì)Xilinx UltraScale+ MPSoC的支持 2925次閱讀
- Xilinx基于ARM的Zynq-7000和Zynq UltraScale+ MPSoC及RFSoC器件是否存在安全漏洞 2686次閱讀
- Zynq UltraScale+ MPSoC 上的多個(gè)Linux UIO設(shè)計(jì) 3349次閱讀
- 用ZYNQ MPSoC玩DOOM! 2667次閱讀
- Ti推出面向Zynq UltraScale+ MPSoC的電源參考設(shè)計(jì) 3731次閱讀
下載排行
本周
- 1DC電源插座圖紙
- 0.67 MB | 3次下載 | 免費(fèi)
- 2AN-1267: 使用ADSP-CM408F ADC控制器的電機(jī)控制反饋采樣時(shí)序
- 1.41MB | 3次下載 | 免費(fèi)
- 3AN158 GD32VW553 Wi-Fi開發(fā)指南
- 1.51MB | 2次下載 | 免費(fèi)
- 4AN148 GD32VW553射頻硬件開發(fā)指南
- 2.07MB | 1次下載 | 免費(fèi)
- 5AN111-LTC3219用戶指南
- 84.32KB | 次下載 | 免費(fèi)
- 6AN153-用于電源系統(tǒng)管理的Linduino
- 1.38MB | 次下載 | 免費(fèi)
- 7AN-283: Σ-Δ型ADC和DAC[中文版]
- 677.86KB | 次下載 | 免費(fèi)
- 8SM2018E 支持可控硅調(diào)光線性恒流控制芯片
- 402.24 KB | 次下載 | 免費(fèi)
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 450次下載 | 免費(fèi)
- 2免費(fèi)開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 138次下載 | 1 積分
- 3基于STM32單片機(jī)智能手環(huán)心率計(jì)步器體溫顯示設(shè)計(jì)
- 0.10 MB | 130次下載 | 免費(fèi)
- 4使用單片機(jī)實(shí)現(xiàn)七人表決器的程序和仿真資料免費(fèi)下載
- 2.96 MB | 44次下載 | 免費(fèi)
- 5美的電磁爐維修手冊(cè)大全
- 1.56 MB | 24次下載 | 5 積分
- 6如何正確測(cè)試電源的紋波
- 0.36 MB | 18次下載 | 免費(fèi)
- 7感應(yīng)筆電路圖
- 0.06 MB | 10次下載 | 免費(fèi)
- 8萬(wàn)用表UT58A原理圖
- 0.09 MB | 9次下載 | 5 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935121次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73810次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評(píng)論