機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于FPGA的多種形式分頻的設(shè)計(jì)與實(shí)現(xiàn)
基于FPGA的多種形式分頻的設(shè)計(jì)與實(shí)現(xiàn)
 更新時(shí)間:2008-8-18 9:34:01  點(diǎn)擊數(shù):7
【字體: 字體顏色
引言
分頻器是數(shù)字系統(tǒng)設(shè)計(jì)中的基本電路,根據(jù)不同設(shè)計(jì)的需要,我們會遇到偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻等,有時(shí)要求等占空比,有時(shí)要求非等占空比。在同一個(gè)設(shè)計(jì)中有時(shí)要求多種形式的分頻。通常由計(jì)數(shù)器或計(jì)數(shù)器的級聯(lián)構(gòu)成各種形式的偶數(shù)分頻及非等占空比的奇數(shù)分頻,實(shí)現(xiàn)較為簡單。但對半整數(shù)分頻及等占空比的奇數(shù)分頻實(shí)現(xiàn)較為困難。本文利用VHDL硬件描述語言,通過QuartusⅡ3.0開發(fā)平臺,使用Altera公司的FPGA,設(shè)計(jì)了一種能夠滿足上述各種要求的較為通用的分頻器。

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

二、VHDL語言的實(shí)現(xiàn)
現(xiàn)通過設(shè)計(jì)一個(gè)可以實(shí)現(xiàn)8.5分頻,等占空比的17分頻,2、4、8、16、32分頻,及占空比為1∶8和4∶5的9分頻等多種形式分頻的分頻器,介紹該通用分頻器的FPGA實(shí)現(xiàn)。
由圖1所示的電路原理圖可知,分頻器由帶使能端的異或門、模N計(jì)數(shù)器和一個(gè)2分頻器組成,本設(shè)計(jì)用D觸發(fā)器來完成2分頻的功能,實(shí)現(xiàn)方法是:將觸發(fā)器的Q反輸出端反饋回輸入端D,將計(jì)數(shù)器的一個(gè)計(jì)數(shù)輸出端作為D觸發(fā)器的時(shí)鐘輸入端。各功能模塊的VHDL語言實(shí)現(xiàn)如下。
1.模N計(jì)數(shù)器的實(shí)現(xiàn)
一般設(shè)計(jì)中用到計(jì)數(shù)器時(shí),我們可以調(diào)用lpm庫中的計(jì)數(shù)器模塊,也可以采用VHDL語言自己設(shè)計(jì)一個(gè)模N計(jì)數(shù)器。本設(shè)計(jì)采用VHDL語言設(shè)計(jì)一個(gè)最大模值為16的計(jì)數(shù)器。輸入端口為:使能信號en,復(fù)位信號clr和時(shí)鐘信號clk;輸出端口為:qa、qb、qc、qd。其VHDL語言描述略。
2.帶使能控制的異或門的實(shí)現(xiàn)
輸入端為:xor_en:異或使能,a和b:異或輸入;輸出端為:c:異或輸出。當(dāng)xor_en為高電平時(shí),c輸出a和b的異或值。當(dāng)xor_en為低電平時(shí),c輸出信號b。其VHDL語言略。
3.2分頻(觸發(fā)器)的實(shí)現(xiàn)
輸入端為:時(shí)鐘信號clk,輸入信號d;輸出端為:q:輸出信號a,q1:輸出信號a反。其VHDL語言略。
4.分頻器的實(shí)現(xiàn)
本設(shè)計(jì)采用層次化的設(shè)計(jì)方法,首先設(shè)計(jì)實(shí)現(xiàn)分頻器電路中各組成電路元件,然后通過元件例化的方法,調(diào)用各元件,實(shí)現(xiàn)整個(gè)分頻器。其VHDL語言略。

三、仿真結(jié)果及硬件電路的測試
本設(shè)計(jì)的目的是通用性和簡易性,只要對上述程序稍加改動即可實(shí)現(xiàn)多種形式的分頻。
1.實(shí)現(xiàn)8.5分頻和等占空比的17分頻
只要將上述程序中,調(diào)用計(jì)數(shù)器模塊時(shí)端口qa、qb、qc匹配為open狀態(tài),同時(shí)置xor_en為高電平即可。從編譯報(bào)告看出總共占用8個(gè)邏輯單元(logic elements),其仿真波形如圖2~4所示。


 

由圖中qxiao和clk的波形可以看出,每隔8.5個(gè)時(shí)鐘周期,qxiao信號產(chǎn)生一個(gè)上升沿,從而實(shí)現(xiàn)分頻系數(shù)是8.5的分頻,同時(shí)在qzheng端得到等占空比的17分頻。設(shè)clk為170MHz,則qxiao輸出為20MHz,qzheng輸出為10MHz。
2.實(shí)現(xiàn)占空比為1∶8和4∶5的9分頻
只要上述程序的xor_en置低電平即可在qxiao輸出占空比為1∶8的9分頻信號;在qzheng2輸出占空比為4∶5的9分頻信號。同樣僅占8個(gè)邏輯單元(logic elements)。仿真波形如下。
3.實(shí)現(xiàn)等占空比的2、4、8、16和32分頻
只要將上述程序中的xor_en置為低電平,同時(shí)將計(jì)數(shù)器模塊的計(jì)數(shù)最大值設(shè)為16即可。仿真波形如下。
由此可見,只要稍微改變計(jì)數(shù)器的計(jì)數(shù)狀態(tài)值,對異或門進(jìn)行選通控制,即可實(shí)現(xiàn)上述多種形式的分頻。本設(shè)計(jì)在Altera公司的EP1K50QC208-3構(gòu)成的測試平臺上測試通過,性能良好。

結(jié)束語
我們在設(shè)計(jì)模擬雷達(dá)脈沖信號和用FPGA開發(fā)擴(kuò)頻芯片時(shí)就用到了上述多種形式得分頻。本文旨在介紹一種進(jìn)行FPGA開發(fā)時(shí),所需多種分頻的實(shí)現(xiàn)方法,如果設(shè)計(jì)中所需分頻形式較多,可以直接利用本設(shè)計(jì),通過對程序的稍微改動以滿足自己設(shè)計(jì)的要求。如果設(shè)計(jì)中需要分頻形式較少,可以利用本設(shè)計(jì)部分程序,以節(jié)省資源。

參考文獻(xiàn)
1 徐志軍,徐光輝編.CPLD/FPGA的開發(fā)與應(yīng)
用,電子工業(yè)出版社
2 侯伯亨,顧新編.VHDL硬件描述語言及數(shù)
字邏輯電路設(shè)計(jì),西安電子科技大學(xué)出版社
3 ALTERA公司,Introduction to QuartusⅡ


  • 上一篇: 德州儀器推出最新數(shù)字媒體處理技術(shù)
  • 下一篇: 英飛凌積極推動國內(nèi)智能卡市場
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1