《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于VHDL和FPGA的多種分頻的實現方法
基于VHDL和FPGA的多種分頻的實現方法
摘要: 分頻器是數字系統設計中的基本電路,根據不同設計的需要,我們會遇到偶數分頻、奇數分頻、半整數分頻等,有時要求等占空比,有時要求非等占空比。在同一個設計中有時要求多種形式的分頻。通常由計數器或計數器的級聯構成各種形式的偶數分頻及非等占空比的奇數分頻,實現較為簡單。但對半整數分頻及等占空比的奇數分頻實現較為困難。本文利用VHDL硬件描述語言,通過QuartusⅡ3.0開發平臺,使用Altera公司的FPGA,設計了一種能夠滿足上述各種要求的較為通用的分頻器。
關鍵詞: FPGA VHDL 分頻
Abstract:
Key words :

分頻器是數字系統設計中的基本電路,根據不同設計的需要,我們會遇到偶數分頻、奇數分頻、半整數分頻等,有時要求等占空比,有時要求非等占空比。在同一個設計中有時要求多種形式的分頻。通常由計數器或計數器的級聯構成各種形式的偶數分頻及非等占空比的奇數分頻,實現較為簡單。但對半整數分頻及等占空比的奇數分頻實現較為困難。本文利用VHDL硬件描述語言,通過QuartusⅡ3.0開發平臺,使用Altera公司的FPGA,設計了一種能夠滿足上述各種要求的較為通用的分頻器。

  一、電路設計

  采用FPGA實現半整數分頻器,可以采用以下方法:設計一個模N的計數器,再設計一個脈沖扣除電路,每來兩個脈沖扣除一個脈沖,即可實現分頻系數為N-0.5的分頻器。脈沖扣除電路由異或門和一個2分頻器構成。本設計在半整數分頻器原理的基礎上,對異或門加一個使能控制信號,通過對異或門和計數器計數狀態值的控制,實現同一個電路完成多種形式分頻,如圖1所示。

  


 

  二、VHDL語言的實現

  現通過設計一個可以實現8.5分頻,等占空比的17分頻,2、4、8、16、32分頻,及占空比為1∶8和4∶5的9分頻等多種形式分頻的分頻器,介紹該通用分頻器的FPGA實現。

  由圖1所示的電路原理圖可知,分頻器由帶使能端的異或門、模N計數器和一個2分頻器組成,本設計用D觸發器來完成2分頻的功能,實現方法是:將觸發器的Q反輸出端反饋回輸入端D,將計數器的一個計數輸出端作為D觸發器的時鐘輸入端。各功能模塊的VHDL語言實現如下。

  1.模N計數器的實現

  一般設計中用到計數器時,我們可以調用lpm庫中的計數器模塊,也可以采用VHDL語言自己設計一個模N計數器。本設計采用VHDL語言設計一個最大模值為16的計數器。輸入端口為:使能信號en,復位信號clr和時鐘信號clk;輸出端口為:qa、qb、qc、qd。其VHDL語言描述略。

  2.帶使能控制的異或門的實現

  輸入端為:xor_en:異或使能,a和b:異或輸入;輸出端為:c:異或輸出。當xor_en為高電平時,c輸出a和b的異或值。當xor_en為低電平時,c輸出信號b。其VHDL語言略。

  3.2分頻(觸發器)的實現

  輸入端為:時鐘信號clk,輸入信號d;輸出端為:q:輸出信號a,q1:輸出信號a反。其VHDL語言略。

  4.分頻器的實現

  本設計采用層次化的設計方法,首先設計實現分頻器電路中各組成電路元件,然后通過元件例化的方法,調用各元件,實現整個分頻器。其VHDL語言略。

  三、仿真結果及硬件電路的測試

  本設計的目的是通用性和簡易性,只要對上述程序稍加改動即可實現多種形式的分頻。

  1.實現8.5分頻和等占空比的17分頻

  只要將上述程序中,調用計數器模塊時端口qa、qb、qc匹配為open狀態,同時置xor_en為高電平即可。從編譯報告看出總共占用8個邏輯單元(logic elements),其仿真波形如圖2~4所示。

  

 

  圖二

  

 

  圖三

  

 

  圖四

  由圖中qxiao和clk的波形可以看出,每隔8.5個時鐘周期,qxiao信號產生一個上升沿,從而實現分頻系數是8.5的分頻,同時在qzheng端得到等占空比的17分頻。設clk為170MHz,則qxiao輸出為20MHz,qzheng輸出為10MHz。

  2.實現占空比為1∶8和4∶5的9分頻

  只要上述程序的xor_en置低電平即可在qxiao輸出占空比為1∶8的9分頻信號;在qzheng2輸出占空比為4∶5的9分頻信號。同樣僅占8個邏輯單元(logic elements)。仿真波形如下。

  3.實現等占空比的2、4、8、16和32分頻 只要將上述程序中的xor_en置為低電平,同時將計數器模塊的計數最大值設為16即可。仿真波形如下。

  由此可見,只要稍微改變計數器的計數狀態值,對異或門進行選通控制,即可實現上述多種形式的分頻。本設計在Altera公司的EP1K50QC208-3構成的測試平臺上測試通過,性能良好。

  結束語

  我們在設計模擬雷達脈沖信號和用FPGA開發擴頻芯片時就用到了上述多種形式得分頻。本文旨在介紹一種進行FPGA開發時,所需多種分頻的實現方法,如果設計中所需分頻形式較多,可以直接利用本設計,通過對程序的稍微改動以滿足自己設計的要求。如果設計中需要分頻形式較少,可以利用本設計部分程序,以節省資源。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 日韩精品欧美国产精品亚| 狠狠躁夜夜躁人人爽天天古典 | 91女神疯狂娇喘3p之夜| 巨大一下一寸挤进校花| 久久久久久久性| 日韩美一区二区| 亚洲日韩中文字幕一区| 毛片视频网站在线观看| 免费A级毛片无码A| 精品人妻少妇一区二区三区在线| 国产AV无码专区亚洲AV麻豆| 青青青免费网站在线观看| 国产成人精品免费视频大全麻豆| 1717国产精品久久| 国产麻豆流白浆在线观看| a毛片在线观看| 好想吃你的馒头| 一级特级女人18毛片免费视频| 无码中文字幕日韩专区| 久久婷婷人人澡人人喊人人爽 | 狠狠色噜噜狠狠狠狠97| 免费观看黄网站| 精品无码一区二区三区爱欲 | 久久精品第一页| 樱桃视频影院在线观看| 亚洲国产第一区| 欧美日韩亚洲一区二区三区在线观看| 亚洲精品成人片在线播放| 男人j进女人p免费视频| 免费很黄很色裸乳在线观看| 精品人妻av无码一区二区三区| 向日葵app下载观看免费| 色偷偷8888欧美精品久久| 国产乱人伦AV麻豆网| 金发美女与黑人巨大交| 国产又爽又黄无码无遮挡在线观看| 国产男女爽爽爽爽爽免费视频| 国产男女无遮挡猛进猛出| 欧美另类xxxx图片| 国产欧美第一页| 鸡鸡插屁股视频|