国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

vivado中的FPGA時(shí)鐘管理單元PLL學(xué)習(xí)記錄

這篇具有很好參考價(jià)值的文章主要介紹了vivado中的FPGA時(shí)鐘管理單元PLL學(xué)習(xí)記錄。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

CMT簡(jiǎn)介

FPGA中時(shí)鐘管理模塊(CMT)包括PLL和MMCM,用于將時(shí)鐘倍頻(比如輸入時(shí)鐘25M,我們要產(chǎn)生50M時(shí)鐘)、分頻(在不影響系統(tǒng)功能的前提下,較低的工作時(shí)鐘,能夠降低系統(tǒng)功耗)、改變相位偏移或占空比等。
當(dāng)需要上板時(shí),由于板上晶振時(shí)鐘固定,所以其他頻率的時(shí)鐘產(chǎn)生就要用到PLL或者M(jìn)MCM。兩者類似,MMCM可以完成PLL的所有功能外加一些高級(jí)功能。

其中具體的一些時(shí)鐘域,BUFG等時(shí)鐘資源介紹,以及FPGA中的PLL和MMCM介紹可參考時(shí)鐘IP核(MMCM PLL)、RAM 和 FIFO 實(shí)驗(yàn)-嗶哩嗶哩(待學(xué))

這里只介紹PLL鎖相環(huán)。

一、PLL IP的使用

1、ip調(diào)用

如果只是調(diào)用ip的話,知道怎樣使用即可
vivado中的調(diào)用及上板測(cè)試可以參考:
FPGA實(shí)戰(zhàn)(五)時(shí)鐘IP核(MMCM PLL)

基本就是調(diào)用ip,然后設(shè)置一個(gè)輸入時(shí)鐘一個(gè)輸出時(shí)鐘;注意其中有一個(gè)locked信號(hào),當(dāng)locked信號(hào)拉高的時(shí)候代表鎖相環(huán)輸出信號(hào)已經(jīng)穩(wěn)定。
locked信號(hào)常被用于復(fù)位信號(hào)。

2、生成的頻率限制

另外,時(shí)鐘管理IP核并不能產(chǎn)生任意頻率的時(shí)鐘信號(hào)。 產(chǎn)生的時(shí)鐘信號(hào)與輸入之間僅能是M/N的關(guān)系,其中M、N必須是整數(shù)(在原理部分會(huì)介紹)。

二、PLL實(shí)現(xiàn)原理

PLL組成:
vivado pll,fpga開(kāi)發(fā),學(xué)習(xí),單片機(jī)

鎖相環(huán)是一種以消除頻率誤差為目的的反饋控制電路。原理是利用相位誤差消除頻率誤差,所以當(dāng)電路平衡時(shí),會(huì)有剩余相位誤差,但頻率誤差為0。
具體推導(dǎo):
vivado pll,fpga開(kāi)發(fā),學(xué)習(xí),單片機(jī)
也可以參考一文弄懂鎖相環(huán)(PLL)的工作原理及應(yīng)用
終止最終達(dá)到的效果就是輸入輸出有相位差(VCO需要一定的電壓驅(qū)動(dòng)它到正確的頻率,所以一定有相差)但是頻率相等,就如下圖所示。
vivado pll,fpga開(kāi)發(fā),學(xué)習(xí),單片機(jī)

那對(duì)于分頻是怎樣實(shí)現(xiàn)的呢?
如下圖,插入分頻模塊即可,這樣就可以實(shí)現(xiàn)輸出/輸出=N/M, N M為整數(shù)。
vivado pll,fpga開(kāi)發(fā),學(xué)習(xí),單片機(jī)
圖片來(lái)自鎖相環(huán)的工作原理

三、使用過(guò)程中的問(wèn)題

我只使用鎖相環(huán)對(duì)板子就行了簡(jiǎn)單的分頻,基于PYNQ-Z2板子,從125M到50M,寫(xiě)了一個(gè)燈亮滅的程序,等locked信號(hào)穩(wěn)定后才計(jì)數(shù)。
程序如下:

module led(
(* MARK_DEBUG="true" *)input sys_clk,
input clk_restn,
output reg[3:0] led
    );
    reg[31:0] timer_cnt;
    (* MARK_DEBUG="true" *)wire clk;
    (* MARK_DEBUG="true" *)wire locked_out;
  /*  
    initial begin
       led<=0;
       timer_cnt<=0;
    end
    */
   clk_wiz_0 clk_wiz
   (
    // Clock out ports
    .clk_out1(clk),     // output clk_out1
    // Status and control signals
    .reset(clk_restn), // input resetn
   // Clock in ports
    .clk_in1(sys_clk),      // input clk_in1
    .locked(locked_out));       // output locked

      always@(posedge clk) begin
        if((locked_out==1) && (timer_cnt>=32'd49999999))begin
        //if(timer_cnt>=32'd4999)begin
            led<=~led;
            timer_cnt<=0;
        end
        else if(locked_out==1)begin
            led<=led;
            timer_cnt<=timer_cnt+1;
        end
        else begin
            led<=led;
            timer_cnt<=0;
        end
    end
endmodule

我設(shè)置的是1s亮1s滅,但是實(shí)際上板出現(xiàn)的問(wèn)題是1s亮2s滅或者2s滅1s亮,肉眼可見(jiàn)的有問(wèn)題。
上板抓信號(hào)發(fā)現(xiàn)locked信號(hào)拉高之后還會(huì)拉低,不是一直拉高,這就導(dǎo)致拉低時(shí)計(jì)數(shù)清零,拉高又重新計(jì)數(shù),時(shí)長(zhǎng)就變長(zhǎng)了。
最后發(fā)現(xiàn)問(wèn)題是板子有問(wèn)題,換了板子就正確了。應(yīng)該是原來(lái)板子晶振有問(wèn)題,會(huì)周期性不穩(wěn)定,導(dǎo)致PLL的locked信號(hào)周期性拉低拉高。

程序注意事項(xiàng)

上述程序也有一些問(wèn)題,這里記錄一下:
1、initial塊不要寫(xiě)在要綜合的代碼中,因?yàn)樗豢删C合,用復(fù)位來(lái)設(shè)置初值
2、clk是分頻出來(lái)的,最好后面模塊也給復(fù)位,不然如果PLL出錯(cuò)后面clk控制的就都沒(méi)辦法控制了
3、locked_out==1這樣寫(xiě)是沒(méi)問(wèn)題的,如果板子時(shí)鐘沒(méi)問(wèn)題就是拉高之后不會(huì)拉低了。也確實(shí)要等始終穩(wěn)定locked_out=1再進(jìn)行操作。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-794226.html

到了這里,關(guān)于vivado中的FPGA時(shí)鐘管理單元PLL學(xué)習(xí)記錄的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【FPGA異步時(shí)鐘域約束方法】——Vivado時(shí)鐘組約束

    【FPGA異步時(shí)鐘域約束方法】——Vivado時(shí)鐘組約束 在 FPGA 設(shè)計(jì)過(guò)程中,由于存在多時(shí)鐘域的情況,需要采取一定的策略來(lái)處理時(shí)序約束問(wèn)題。其中,異步時(shí)鐘域是一種常見(jiàn)的設(shè)計(jì)需求,為了保證設(shè)計(jì)時(shí)序的正確性和穩(wěn)定性,我們需要使用 Vivado 提供的時(shí)鐘組約束方法來(lái)對(duì)異步時(shí)

    2024年02月04日
    瀏覽(22)
  • FPGA 學(xué)習(xí)筆記:Vivado 工程管理技巧

    FPGA 學(xué)習(xí)筆記:Vivado 工程管理技巧

    當(dāng)前使用 Xilinx 的 FPGA,所以需要熟悉 Xilinx FPGA 的 開(kāi)發(fā)利器 Vivado 的工程管理方法 這里初步列舉一些實(shí)際 Xilinx FPGA 開(kāi)發(fā)基于 Vivado 的項(xiàng)目使用到的工程的管理技巧 做過(guò)嵌入式軟件或者其他軟件開(kāi)發(fā)的工程技術(shù)人員,都會(huì)想到使用代碼管理工具,如 SVN 、Git 等對(duì)代碼進(jìn)行管理

    2024年02月09日
    瀏覽(23)
  • 基于FPGA的數(shù)字時(shí)鐘(使用vivado)

    基于FPGA的數(shù)字時(shí)鐘(使用vivado)

    使用兩個(gè)四位數(shù)碼管,可以實(shí)現(xiàn)時(shí)鐘分鐘秒鐘顯示,高兩位設(shè)置不顯示。 換了一個(gè)新開(kāi)發(fā)板,nexys4ddr,資料不多,最多使用的就是一本英文Reference Manual。 其實(shí)是老師覺(jué)得我計(jì)數(shù)器還差點(diǎn),得再練練。 Digilent NEXYS4DDR Vivado2018.3 60進(jìn)制秒鐘計(jì)數(shù)然后進(jìn)1分鐘 60進(jìn)制分鐘計(jì)數(shù)然后進(jìn)

    2024年02月03日
    瀏覽(25)
  • FPGA時(shí)鐘資源與設(shè)計(jì)方法——Xilinx(Vivado)

    1.時(shí)鐘資源包括:時(shí)鐘布線、時(shí)鐘緩沖器(BUFGBUFRBUFIO)、時(shí)鐘管理器(MMCM/PLL)。 2.時(shí)鐘類型有三種:全局時(shí)鐘,可以驅(qū)動(dòng)整個(gè)內(nèi)核上的同步邏輯;局部時(shí)鐘,可以驅(qū)動(dòng)特定和相鄰區(qū)域的邏輯;IO時(shí)鐘,可以驅(qū)動(dòng)某個(gè)IO的特定邏輯。 3.混合模式時(shí)鐘管理器(MMCM)和數(shù)字時(shí)鐘管理

    2024年02月22日
    瀏覽(24)
  • FPGA學(xué)習(xí)筆記(三):PLL 鎖相環(huán)

    FPGA學(xué)習(xí)筆記(三):PLL 鎖相環(huán)

    在 FPGA 芯片內(nèi)部集成了 PLL(phase-locked loop,鎖相環(huán)) ,可以倍頻分頻,產(chǎn)生其它時(shí)鐘類型。PLL 是 FPGA 中的重要資源,因?yàn)橐粋€(gè)復(fù)雜的 FPGA 系統(tǒng)需要不同頻率、相位的時(shí)鐘信號(hào),一個(gè) FPGA 芯片中 PLL 的數(shù)量是衡量 FPGA 芯片能力的重要指標(biāo)。 Ultrascale+ 系列的 FPGA 使用了專用的全局

    2024年02月13日
    瀏覽(20)
  • FPGA學(xué)習(xí):PLL的使用與仿真

    FPGA學(xué)習(xí):PLL的使用與仿真

    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ì)機(jī)器重要,一個(gè)低抖動(dòng),低延遲的系統(tǒng)時(shí)鐘會(huì)增加FPGA設(shè)計(jì)

    2023年04月17日
    瀏覽(21)
  • 從底層結(jié)構(gòu)開(kāi)始學(xué)習(xí)FPGA(15)----MMCM與PLL

    ????????《從底層結(jié)構(gòu)開(kāi)始學(xué)習(xí)FPGA》目錄與傳送門 ????????鎖相環(huán) (phase-locked loop,PLL),是一種控制反饋電路。PLL對(duì)時(shí)鐘網(wǎng)絡(luò)進(jìn)行系統(tǒng)級(jí)別的時(shí)鐘管理和偏移控制,具有時(shí)鐘倍頻、分頻、相位偏移和可編程占空比的功能。MMCM是混合模式時(shí)鐘管理器,相當(dāng)于能夠進(jìn)行精準(zhǔn)

    2024年02月06日
    瀏覽(28)
  • FPGA_學(xué)習(xí)_10_IP核_PLL

    FPGA_學(xué)習(xí)_10_IP核_PLL

    片上資源的使用,或者說(shuō)IP核的使用,是FPGA編程要學(xué)習(xí)的分量很重的一部分內(nèi)容。 其中最常見(jiàn)的就要屬PLL了,時(shí)鐘是一切程序的基礎(chǔ)。 PLL的時(shí)鐘倍頻功能是用戶自己手撕代碼無(wú)法實(shí)現(xiàn)的,但使用PLL IP核,幾步簡(jiǎn)單的圖像界面的操作就能個(gè)實(shí)現(xiàn)。本文的內(nèi)容就是配置一個(gè)PLL

    2024年02月13日
    瀏覽(24)
  • Xilinx 7系列FPGA全局時(shí)鐘緩沖器基本單元

    Xilinx 7系列FPGA全局時(shí)鐘緩沖器基本單元

    Global Clock Buffer Primitives(全局時(shí)鐘緩沖器基本單元)在FPGA(現(xiàn)場(chǎng)可編程門陣列)和其他數(shù)字系統(tǒng)中扮演著至關(guān)重要的角色。這些基本單元被設(shè)計(jì)用于處理、分配和增強(qiáng)時(shí)鐘信號(hào),以確保系統(tǒng)中的各個(gè)組件都能以精確和同步的方式工作。 表2-2中的基本單元代表了全局時(shí)鐘緩沖

    2024年04月23日
    瀏覽(23)
  • 從底層結(jié)構(gòu)開(kāi)始學(xué)習(xí)FPGA(16)----PLL/MMCM IP的定制與測(cè)試

    目錄 系列目錄與傳送門 1、PLL IP的定制 ①、第一頁(yè) ②、第二頁(yè)? ③、第三頁(yè)

    2024年02月02日
    瀏覽(25)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包