新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于CPLD/FPGA的半整數分頻器的設計實例

        基于CPLD/FPGA的半整數分頻器的設計實例

        作者: 時間:2011-05-27 來源:網絡 收藏

          1 引言

          (ComplexprogrammableLogicDevice,復雜可編程邏輯器件)和(FieldprogrammableGatesArray,現場可編程門陣列)都是可編程邏輯器件,它們是在PAL、GAL等邏輯器件基礎上發展起來的。同以往的PAL、GAL相比,/的規模比較大,適合于時序、組合等邏輯電路的應用。它可以替代幾十甚至上百塊通用IC芯片。這種芯片具有可編程和實現方案容易改動等特點。由于芯片內部硬件連接關系的描述可以存放在磁盤、ROM、PROM、或EPROM中,因而在可編程門陣列芯片及外圍電路保持不動的情況下,換一塊EPROM芯片,就能實現一種新的功能。它具有設計開發周期短、設計制造成本低、開發工具先進、標準產品無需測試、質量穩定以及實時在檢驗等優點,因此,可廣泛應用于產品的原理設計和產品生產之中。幾乎所有應用門陣列、PLD和中小規模通用數字集成電路的場合均可應用器件。

          在現代電子系統中,數字系統所占的比例越來越大。系統發展的越勢是數字化和集成化,而CPLD/FPGA作為可編程ASIC(專用集成電路)器件,它將在數字邏輯系統中發揮越來越重要的作用。

          在數字邏輯電路設計中,分頻器是一種基本電路。通常用來對某個給定頻率進行分頻,以得到所需的頻率。整數分頻器的實現非常簡單,可采用標準的計數器,也可以采用可編程邏輯器件設計實現。但在某些場合下,時鐘源與所需的頻率不成整數倍關系,此時可采用小數分頻器進行分頻。比如:分頻系數為2.5、3.5、7.5等。筆者在模擬設計頻率計脈沖信號時,就用了這樣的電路。由于時鐘源信號為50MHz,而電路中需要產生一個20MHz的時鐘信號,其分頻比為2.5,因此整數分頻將不能勝任。為了解決這一問題,筆者利用VIDL硬件描述語言和原理圖輸入方式,通過MAX+plusII開發軟件和ALTERA公司的FLEX系列EPF10K10LC84-4型FPGA方便地完成了電路的設計。

          2 小數分頻的基本原理

          小數分頻的基本原理是采用脈沖吞吐計數器和鎖相環技術先設計兩個不同分頻比的整數分頻器,然后通過控制單位時間內兩種分頻比出現的不同次數來獲得所需要的小數分頻值。如設計一個分頻系數為10.1的分頻器時,可以將分頻器設計成9次10分頻,1次11分頻,這樣總的分頻值為:

        F=(9×10+1×11)/(9+1)=10.1

          從這種實現方法的特點可以看出,由于分頻器的分頻值不斷改變,因此分頻后得到的信號抖動較大。當分頻系數為N-0.5(N為整數)時,可控制扣除脈沖的時間,以使輸出成為一個穩定的脈沖頻率,而不是一次N分頻,一次N-1分頻。

        模3計數器仿真波形

        圖2模3計數器仿真波形

          3 電路組成

          分頻系數為N-0.5的分頻器電路可由一個異或門、一個模N計數器和一個二分頻器組成。在實現時,模N計數器可設計成帶預置的計數器,這樣可以實現任意分頻系數為N-0.5的分頻器。圖1給出了通用半整數分頻器的電路組成。
        采用VHDL硬件描述語言,可實現任意模N的計數器(其工作頻率可以達到160MHz以上),并可產生模N邏輯電路。之后,用原理圖輸入方式將模N邏輯電路、異或門和D觸發器連接起來,便可實現半整數(N-0.5)分頻器以及(2N-1)的分頻。

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

        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 洪雅县| 汶上县| 洛浦县| 衡水市| 达日县| 兴化市| 德格县| 博客| 景德镇市| 虞城县| 琼结县| 志丹县| 特克斯县| 成安县| 响水县| 长汀县| 大同市| 叶城县| 包头市| 财经| 普安县| 郴州市| 汕尾市| 兰溪市| 广平县| 文昌市| 吴桥县| 天水市| 兴山县| 阿图什市| 手机| 泗水县| 贵阳市| 玉环县| 宣恩县| 怀集县| 吉木乃县| 曲阳县| 吴江市| 上饶县| 大余县|