基于FPGA的通用數控分頻器的設計與實現
本文首先介紹了各種分頻器的實現原理,并在FPGA開發平臺上通過VHDL文本輸入和原理圖輸入相結合的方式,編程給出了仿真結果。最后通過對各種分頻的分析,利用層次化設計思想,綜合設計出了一種基于FPGA的通用數控分頻器,通過對可控端口的調節就能夠實現不同倍數及占空比的分頻器。
本文引用地址:http://www.104case.com/article/274088.htm1.引言
分頻器是數字系統中非常重要的模塊之一,被廣泛應用于各種控制電路中。在實際中,設計人員往往需要將一個標準的頻率源通過分頻技術以滿足不同的需求。常見的分頻形式主要有:偶數分頻、奇數分頻、半整數分頻、小數分頻、分數分頻。在某些嚴格的情況下,還有占空比的要求。其中非等占空比的偶數分頻器和奇數分頻器其實現比較容易,但對于半整數分頻器和占空比為50%的奇數分頻器實現比較困難。
本文首先介紹了各種分頻器的實現原理,并結合VHDL硬件描述語言對其進行了仿真,最后提出一個可控的通用分頻器的設計方法,該方法可實現任意分頻,資源消耗低,具有可編程等優點。
2.偶數分頻器
偶數分頻器比較簡單,即利用計數器對需要分頻的原始時鐘信號進行計數翻轉。
例如:要進行M=2N(N為自然數)分頻,當計數值為0~k-1時,輸出高電平,當計數值為k-1~2N-1時輸出低電平,同時計數值復位,如此循環可實現任意占空比的偶數分頻,其中M和k為預置數,可根據分頻倍數和占空比的要求進行置數。如圖1所示,當k=N時,即可實現占空比為50%的偶數分頻。

圖1 占空比為50%的4分頻仿真結果
3.奇數分頻器
任意占空比的奇數分頻器的實現,其原理與偶數分頻器類似。但對于占空比為50%的任意奇數次分頻卻無法用上述相同的方法實現。
下面介紹一種常用的實現方法。
實現原理:采用兩個不同的邊沿觸發器(一個在上升沿和一個在下降沿)來實現,其細節在于實現1/2個原始時鐘周期的時間差。
如圖2所示,進行M=2N+1分頻時,k1是在clk上升沿且計數周期為M變化的信號。當計數器值為0~N時,k1保持低電平,計數值為N+1~2N時,k1保持高電平。

圖2 占空比為50%的5分頻仿真結果
fpga相關文章:fpga是什么
分頻器相關文章:分頻器原理
評論