• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 基于FPGA的通用數控分頻器的設計與實現

    基于FPGA的通用數控分頻器的設計與實現

    作者: 時間:2015-05-13 來源:網絡 收藏

      k2與k1一樣,唯一不同的是:k2是在clk的下降沿變化。最后將k2與k1進行或運算即可得到占空比50%的任意奇數

    本文引用地址:http://www.czjhyjcfj.com/article/274088.htm

      4.半整數

      半整數原理如圖3所示[3].主要包括模M計數器,異或模塊和2分頻模塊三個部分。其設計思想是:通過異或門和2分頻模塊組成一個改變輸入頻率的脈沖添加電路,即在M-0.5個輸入信號周期內產生M個計數脈沖,并將其中的一個計數脈沖的周期變為含有兩個脈沖的周期。而這種改變的具體實現是將原始時鐘信號與2分頻模塊的輸出進行異或。

      

     

      圖3 半整數分頻器原理

      另外,不難發現此原理圖還可以實現占空比為50%的2M-1倍的奇數分頻。當M=3時,其仿真結果如圖4所示。原理圖的輸出端口q即為占空比為50%的5分頻,輸出端口C為2.5分頻。

      

     

      圖4 半整數分頻器仿真結果

      5.數控通用分頻器的實現

      綜上,利用模N計數器、脈沖添加電路,以及控制模塊即可實現占空比可調的通用分頻器。在具體設計過程中可采用層次化的設計方法。首先,設計通用分頻器中各組成電路元件,然后通過元件例化的方法,調用各元件,實現通用分頻器。

      

     

      圖5 通用分頻器原理圖

      其中:

      模N計數器的實現可以采用兩種方式:

      一是調用L P M庫中的參數化的計數器模塊LPM_COUNTER,根據向導對參數進行設置,QuartusII會生成相應的。vdh計數文本。為了能夠調用計數文本,最后還需要利用VHDL語言對該計數文本設計一個例化程序,并將其設置為頂層文件。二是利用VHDL描述語言實現。

      二分模塊是利用D觸發器來實現的,即將D觸發器的輸出信號Q反饋回來作為輸入信號,將模N計數器輸出信號的最高位作為D觸發器的時鐘信號。

      其頂層原理圖如圖5所示。其中a為分頻模式選擇,當a=00時進行偶數分頻;當a=01時進行占空比為非50%奇數分頻;當a=10時進行占空比為50%的奇數分屏;當a=11時進行半整數分頻[2].端口M的作用是控制分頻數。端口K的作用是進行偶數(M=2N)和奇數(M=2N+1)分頻時,調節占空比,當k=N時,占空比為50%.

      6.結論

      本設計的最終目的是實現分頻器的通用性和實用性,本設計中控制端口M、K、以及計數器N的位寬均采用參數化設計思想,用戶根據需要對其稍加修改就可滿足不同的分頻需求,在一定程度上實現了通用性。

    fpga相關文章:fpga是什么


    分頻器相關文章:分頻器原理

    上一頁 1 2 下一頁

    關鍵詞: FPGA 分頻器

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 怀柔区| 隆昌县| 乌兰察布市| 扶余县| 长丰县| 肇源县| 德令哈市| 达州市| 鄂托克旗| 苗栗县| 文化| 江达县| 滕州市| 武川县| 商河县| 玉门市| 栖霞市| 鄱阳县| 从化市| 家居| 来凤县| 南通市| 台江县| 怀仁县| 马山县| 佛冈县| 鄂温| 延安市| 正定县| 佳木斯市| 新宁县| 沭阳县| 庐江县| 博客| 岑溪市| 长兴县| 天峻县| 唐海县| 集贤县| 泸州市| 马山县|