量程自動轉(zhuǎn)換的12位十進(jìn)制等精度數(shù)字頻率計
VHDL是一種快速設(shè)計電路工具,目前已成為IEEE的一種工業(yè)標(biāo)準(zhǔn)硬件描述語言。相比傳統(tǒng)電路系統(tǒng)設(shè)計方法,VHDL具有多層次描述系統(tǒng)硬件功能的能力,支持自頂向下(Top to Down)和基于庫(Library Based)的設(shè)計特點,因此設(shè)計者無需了解硬件結(jié)構(gòu),就可進(jìn)行設(shè)計。
數(shù)字頻率計是數(shù)字電路中的一個典型應(yīng)用,實際硬件設(shè)計采用的器件較多,連線復(fù)雜,而且會產(chǎn)生較大延時,造成測量誤差且可靠性差。隨著復(fù)雜可編程邏輯器件的廣泛應(yīng)用,以EDA工具為開發(fā)手段,運用VHDL語言,從而大大簡化系統(tǒng)設(shè)計,提高整體的性能和可靠性。
2 數(shù)字頻率計測頻原理
數(shù)字式頻率計的基本原理:使用一個頻率穩(wěn)定度高的頻率源作為基準(zhǔn)時鐘,來對比測量其他信號的頻率。通常情況下計算單位時間內(nèi)待測信號的脈沖個數(shù)。單位時間可設(shè)置為大于或小于一秒。閘門時間越長,頻率值越準(zhǔn)確,但閘門時間越長,每次測量頻率的間隔也就越長。閘門時間越短,測量的頻率值刷新越快,但將影響到測量的頻率精度。每次測量時,采用時基信號產(chǎn)生的閘門信號啟動計數(shù)器來對輸入的脈沖信號計數(shù):閘門信號結(jié)束則將計數(shù)結(jié)果送入鎖存器,然后計數(shù)器清零,準(zhǔn)備下次計數(shù)。如被測波形不好,可通過施密特電路整形。
3 系統(tǒng)結(jié)構(gòu)設(shè)計
按照系統(tǒng)功能,數(shù)字頻率計系統(tǒng)分為二分頻、測量/校驗選擇、計數(shù)器、送存選擇報警電路、鎖存器、掃描顯示等模塊,如圖1所示。1 Hz時鐘信號作為測頻電路的輸入?yún)⒖夹盘?經(jīng)二分頻電路分頻后與測量/校驗選擇電路輸出的待測信號相比較,通過計數(shù)器電路在單位時間內(nèi)計數(shù)脈沖數(shù),時鐘下降沿結(jié)束計數(shù):并將計數(shù)結(jié)果送至送存選擇報警電路,由送存選擇報警電路判斷,并完成對量程的選擇。若超限,則發(fā)出報警信號:最后再由鎖存器和顯示電路完成數(shù)據(jù)顯示。該系統(tǒng)整體設(shè)計的電路圖如圖2所示。
3.1 測量/校驗選擇模塊
測量/校驗選擇模塊采用二選一的選擇器實現(xiàn)。測量與校驗共用一電路,只是輸出信號CP1不同。其中各輸入信號:選擇信號sel、被測信號meas、測試信號test,而輸出信號為CP1。當(dāng)sel=0時,為測量狀態(tài),CPl=meas;當(dāng)sel=1時,為校驗狀態(tài),CPl=test。其仿真結(jié)果如圖3所示。
3.2 測頻控制信號發(fā)生器
測頻控制信號發(fā)生器采用分頻電路實現(xiàn),采用1 Hz時鐘信號作為輸入信號。測頻控制信號發(fā)生器決定系統(tǒng)精度。本系統(tǒng)設(shè)計采用的二分頻電路,輸出占空比為50%,周期為2 s的方波。其仿真結(jié)果如圖4所示。相關(guān)設(shè)計程序代碼如下:
3.3 計數(shù)器模塊
計數(shù)器模塊對測頻控制信號發(fā)生器的輸出信號CP1進(jìn)行計數(shù),1 s定時后,將計數(shù)器中的結(jié)果送入鎖存器鎖存,同時對計數(shù)器清零,為下一次采樣測量做好準(zhǔn)備,通過對十進(jìn)制計數(shù)器例化實現(xiàn)。輸入信號:RD和CP用于計數(shù)開始、清零、鎖存;輸出信號為Q4~Q1。圖5所示為計數(shù)器模塊的仿真結(jié)果。其相關(guān)程序代碼如下:
3.4 送存選擇報警模塊
送存選擇報警模塊是本系統(tǒng)設(shè)計的關(guān)鍵,該模塊提供兩個功能:根據(jù)被測信號選擇量程,若超出量程則報警,鎖存數(shù)據(jù)。仿真結(jié)果如圖6所示。
設(shè)置超出量程檔測量范圍示警信號alert。
(1)若被測信號頻率值小于1 kHz(K=0)
計數(shù)器只進(jìn)行三位十進(jìn)制計數(shù),最大顯示值為999 Hz:數(shù)碼管顯示被測信號頻率值,1 Hz~999 Hz量程檔,Y顯示綠色;如果被測信號頻率值超出該范圍,告警信號驅(qū)動燈光、揚聲器報警;
(2)若被測信號頻率值為1 kHz~10 kHz(K=1)
計數(shù)器進(jìn)行四位十進(jìn)制計數(shù),取高3位顯示,最大顯示值為9.99 kHz,被測信號頻率值為數(shù)碼管顯示數(shù)值的1 000倍,1 kHz~10 kHz量程檔,Y顯示紅色。如果被測信號頻率值超出該范圍,則揚聲器報警。并給出相關(guān)程序代碼:
3.5 掃描顯示模塊
系統(tǒng)的掃描顯示模塊分為分時總線切換和顯示譯碼電路。分時總線切換用于顯示位的選擇,顯示譯碼用于顯示段的選擇。采用動態(tài)掃描顯示可使端口數(shù)目達(dá)到最少。
3.6 頂層設(shè)計
在頂層設(shè)計中對各模塊進(jìn)行例化,實現(xiàn)整個系統(tǒng)設(shè)計。
4 結(jié)束語
通過對仿真結(jié)果的分析,系統(tǒng)設(shè)計達(dá)到了最初的設(shè)計要求,并使用康芯公司GW48EDA PK2/CK試驗系統(tǒng)對系統(tǒng)設(shè)計軟件程序進(jìn)行驗證,同樣達(dá)到了設(shè)計要求。
評論