一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>可編程邏輯>【ZYNQ Ultrascale+ MPSOC FPGA教程】第五章 Vivado下PLL實(shí)驗(yàn) ALINX

【ZYNQ Ultrascale+ MPSOC FPGA教程】第五章 Vivado下PLL實(shí)驗(yàn) ALINX

2021-01-29 | pdf | 858.36KB | 次下載 | 2積分

資料介紹

作者: ALINX
* 本原創(chuàng)教程由芯驛電子科技(上海)有限公司(ALINX)創(chuàng)作,版權(quán)歸本公司所有,如需轉(zhuǎn)載,需授權(quán)并注明出處。

適用于板卡型號:
AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E/AXU4EV-P/AXU5EV-E/AXU5EV-P /AXU9EG/AXU15EG

實(shí)驗(yàn)Vivado工程為“pll_test”。

很多初學(xué)者看到板上只有一個25Mhz時鐘輸入的時候都產(chǎn)生疑惑,時鐘怎么是25Mhz?如果要工作在100Mhz、150Mhz怎么辦?其實(shí)在很多FPGA芯片內(nèi)部都集成了PLL,其他廠商可能不叫PLL,但是也有類似的功能模塊,通過PLL可以倍頻分頻,產(chǎn)生其他很多時鐘。本實(shí)驗(yàn)通過調(diào)用PLL IP core來學(xué)習(xí)PLL的使用、vivado的IP core使用方法。

1.實(shí)驗(yàn)原理
PLL(phase-locked loop),即鎖相環(huán)。是FPGA中的重要資源。由于一個復(fù)雜的FPGA系統(tǒng)往往需要多個不同頻率,相位的時鐘信號。所以,一個FPGA芯片中PLL的數(shù)量是衡量FPGA芯片能力的重要指標(biāo)。FPGA的設(shè)計(jì)中,時鐘系統(tǒng)的FPGA高速的設(shè)計(jì)極其重要,一個低抖動, 低延遲的系統(tǒng)時鐘會增加FPGA設(shè)計(jì)的成功率。

本實(shí)驗(yàn)將通過使用PLL, 輸出一個方波到開發(fā)板上的擴(kuò)展口,來給大家演示在Vivado軟件里使用PLL的方法。

Ultrascale+系列的FPGA使用了專用的全局(Global)和區(qū)域(Regional)IO和時鐘資源來管理設(shè)計(jì)中各種的時鐘需求。Clock Management Tiles(CMT)提供了時鐘合成(Clock frequency synthesis),傾斜矯正(deskew),過濾抖動(jitter filtering)功能。

每個CMTs包含一個MMCM(mixed-mode clock manager)和一個PLL。如下圖所示,CMT的輸入可以是BUFR,IBUFG,BUFG,GT,BUFH,本地布線(不推薦使用),輸出需要接到BUFG或者BUFH后再使用

混合模式時鐘管理器(MMCM)

MMCM用于在與給定輸入時鐘有設(shè)定的相位和頻率關(guān)系的情況下,生成不同的時鐘信號。MMCM提供了廣泛而強(qiáng)大的時鐘管理功能,

MMCM內(nèi)部的功能框圖如下圖所示:

數(shù)字鎖相環(huán)(PLL)

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

PLL功能框圖如下圖所示:

想了解更多的時鐘資源, 建議大家看看Xilinx提供的文檔"7 Series FPGAs Clocking Resources User Guide"。

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

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

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

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

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

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

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

2.5 這時一個 clk_wiz_0.xci的IP會自動添加到我們的pll_test項(xiàng)目中, 用戶可以雙擊它來修改這個IP的配置。

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

2.6 我們再來編寫一個頂層設(shè)計(jì)文件來實(shí)例化這個PLL IP, 編寫pll_test.v代碼如下。注意PLL的復(fù)位是高電平有效,也就是高電平時一直在復(fù)位狀態(tài),PLL不會工作,這一點(diǎn)很多新手會忽略掉。這里我們將rst_n綁定到一個按鍵上,而按鍵是低電平復(fù)位,因此需要反向連接到PLL的復(fù)位。在程序中插入一個BUFG原語,連接到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時鐘信號輸入到clk_wiz_0的clk_in1_p和clk_in1_n,把clk_out4的輸出賦給clk_out。

注意:例化的目的是在上一級模塊中調(diào)用例化的模塊完成代碼功能,在Verilog里例化信號的格式如下:模塊名必須和要例化的模塊名一致,比如程序中的clk_wiz_0,包括模塊信號名也必須一致,比如clk_in1,clk_out1,clk_out2.....。連接信號為TOP程序跟模塊之間傳遞的信號,模塊與模塊之間的連接信號不能相互沖突,否則會產(chǎn)生編譯錯誤。

2.7 保存工程后,pll_test自動成為了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中,接下去我們就可以用示波器來測量輸出時鐘波形了。

用示波器探頭的地線連接到開發(fā)板上的地(開發(fā)板J15的PIN1腳),信號端連接開發(fā)板J15的PIN3腳(測量的時候需要注意,避免示波器表頭碰到其它管腳而導(dǎo)致電源和地短路)。

這時我們可以在示波器里看到25Mhz的時鐘波形,波形的幅度為3.3V, 占空比為1:1,波形顯示如下圖所示:

如果您想輸出其它頻率的波形,可以修改時鐘的輸出為clk_wiz_0的clk_out2或clk_out3或clk_out4。也可以修改clk_wiz_0的clk_out4為您想要的頻率,這里也需要注意一下,因?yàn)闀r鐘的輸出是通過PLL對輸入時鐘信號的倍頻和分頻系數(shù)來得到的,所以并不是所有的時鐘頻率都可以用PLL能夠精確產(chǎn)生的,不過PLL也會自動為您計(jì)算實(shí)際輸出接近的時鐘頻率。

另外需要注意的是,有些用戶的示波器的帶寬和采樣率太低,會導(dǎo)致測量高頻時鐘信號的時候,高頻部分衰減太大,測量波形的幅度會變低。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費(fèi)下載
  2. 0.00 MB  |  1491次下載  |  免費(fèi)
  3. 2單片機(jī)典型實(shí)例介紹
  4. 18.19 MB  |  95次下載  |  1 積分
  5. 3S7-200PLC編程實(shí)例詳細(xì)資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  11次下載  |  免費(fèi)
  11. 6100W短波放大電路圖
  12. 0.05 MB  |  4次下載  |  3 積分
  13. 7基于單片機(jī)和 SG3525的程控開關(guān)電源設(shè)計(jì)
  14. 0.23 MB  |  4次下載  |  免費(fèi)
  15. 8基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
  16. 0.11 MB  |  4次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費(fèi)
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費(fèi)
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費(fèi)
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費(fèi)
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費(fèi)
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費(fèi)
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費(fèi)
  15. 8開關(guān)電源設(shè)計(jì)實(shí)例指南
  16. 未知  |  21539次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537793次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191183次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138039次下載  |  免費(fèi)