基于CPLD的簡(jiǎn)易數(shù)字頻率計(jì)的設(shè)計(jì)
摘要:CPLD器件的出現(xiàn)給現(xiàn)代電子設(shè)計(jì)帶來(lái)了極大的方便和靈活性,使復(fù)雜的數(shù)字電子系統(tǒng)設(shè)計(jì)變?yōu)樾酒?jí)設(shè)計(jì),同時(shí)還可以很方便地對(duì)設(shè)計(jì)進(jìn)行在線(xiàn)修改。首先介紹了頻率計(jì)的測(cè)頻原理,然后利用CPLD芯片進(jìn)行測(cè)頻計(jì)數(shù),從而實(shí)現(xiàn)了簡(jiǎn)易數(shù)字頻率計(jì)的設(shè)計(jì)。此頻率計(jì)的設(shè)計(jì)采用基于VHDL的“Top-Down”(自上而下)的設(shè)計(jì)方法,從系統(tǒng)總體要求出發(fā),自上而下地逐步將設(shè)計(jì)內(nèi)容細(xì)化,最后完成系統(tǒng)硬件的整體設(shè)計(jì)。所設(shè)計(jì)的電路在GW48系列SoPC/EDA實(shí)驗(yàn)箱上通過(guò)硬件仿真,下載到目標(biāo)器件上運(yùn)行,能夠滿(mǎn)足實(shí)際測(cè)量頻率的要求。
關(guān)鍵詞:CPLD;VHDL;頻率計(jì);設(shè)計(jì)
0 引言
目前已經(jīng)有不少文獻(xiàn)分別從不同的角度對(duì)此問(wèn)題進(jìn)行了討論和研究。有基于FPGA實(shí)現(xiàn)的,F(xiàn)PGA的保密性差,它的分段式布線(xiàn)結(jié)構(gòu)決定了其延遲的不可預(yù)測(cè)性,它的編程信息需存放在外部存儲(chǔ)器上,使用方法復(fù)雜;也有用標(biāo)準(zhǔn)邏輯器件實(shí)現(xiàn)的,用標(biāo)準(zhǔn)邏輯器件使系統(tǒng)布線(xiàn)復(fù)雜、體積功耗大、可靠性差、設(shè)計(jì)周期長(zhǎng),交流和修改不方便。該頻率計(jì)采用先進(jìn)的EDA技術(shù)及自上而下的設(shè)計(jì),使用CPLD芯片,CPLD具有連續(xù)連接結(jié)構(gòu),易于預(yù)測(cè)延時(shí),使電路仿真更加準(zhǔn)確,且編程方便、速度快、集成度高、價(jià)格低,從而使系統(tǒng)研制周期大大縮短,產(chǎn)品的性能價(jià)格比提高。本頻率計(jì)采用流行的VHDL語(yǔ)言編程,并在設(shè)計(jì)平臺(tái)實(shí)現(xiàn)了全部編程設(shè)計(jì)。該數(shù)字頻率計(jì)的設(shè)計(jì)及實(shí)現(xiàn)具有良好的應(yīng)用價(jià)值和推
廣前景。下面對(duì)該頻率計(jì)的軟硬件設(shè)計(jì)進(jìn)行詳細(xì)論述。
1 測(cè)頻原理
1.1 頻率的定義
頻率定義為在單位時(shí)間內(nèi),記錄被測(cè)信號(hào)的變化周期數(shù)(或脈沖個(gè)數(shù))。若記錄被測(cè)信號(hào)的的變化周期數(shù)(或脈沖個(gè)數(shù))為Nx,則被測(cè)頻率Fx的數(shù)值為Nx,單位為:Hz。
1.2 基本性能指標(biāo)
測(cè)頻范圍為:1 Hz~1 MHz;
測(cè)頻精度:相對(duì)誤差為1 Hz。
1.3 頻率計(jì)的功能分析
由于數(shù)字頻率計(jì)是一個(gè)需對(duì)數(shù)字信號(hào)進(jìn)行測(cè)量和顯示的系統(tǒng),由一片CPLD完成各種測(cè)試功能(對(duì)被測(cè)信號(hào)進(jìn)行計(jì)數(shù)等),最后將測(cè)量結(jié)果送數(shù)碼管顯示輸出,因此測(cè)頻需要設(shè)置控制電路、計(jì)數(shù)電路、鎖存電路、譯碼電路,將這些電路設(shè)計(jì)好的各部分連接起來(lái)成為一個(gè)整體的電路寫(xiě)人CPLD芯片中,外圍電路由顯示電路、產(chǎn)生1 Hz的方波電路組成。
控制電路是對(duì)計(jì)數(shù)電路、鎖存電路和譯碼電路進(jìn)行時(shí)序的控制。其控制要求為:先使計(jì)數(shù)電路在1 s內(nèi)進(jìn)行計(jì)數(shù),接著在下一個(gè)1 s內(nèi)鎖存計(jì)數(shù)的結(jié)果,最后將鎖存的數(shù)據(jù)進(jìn)行譯碼和顯示。在第一個(gè)測(cè)量顯示周期結(jié)束后,控制電路將再次發(fā)出控制信號(hào),先對(duì)功能電路清零,然后使系統(tǒng)開(kāi)始第二個(gè)測(cè)量周期的工作。
計(jì)數(shù)電路是對(duì)被測(cè)信號(hào)的頻率進(jìn)行計(jì)數(shù)的主功能電路。根據(jù)頻率的定義和測(cè)頻的基本原理,必須由一個(gè)脈寬為1 s的對(duì)被測(cè)信號(hào)脈沖計(jì)數(shù)的允許信號(hào),其測(cè)量結(jié)果為被測(cè)信號(hào)在1 s內(nèi)的脈沖個(gè)數(shù),即被測(cè)信號(hào)的頻率。由于被測(cè)信號(hào)的頻率測(cè)頻范圍為1 Hz~1 MHz,因此用計(jì)數(shù)電路測(cè)量時(shí),使用6個(gè)輸出為4位的二進(jìn)制數(shù)計(jì)數(shù)器。此計(jì)數(shù)器從個(gè)位開(kāi)始到高位分別進(jìn)行計(jì)數(shù),使低位計(jì)數(shù)器的進(jìn)位與高位計(jì)數(shù)器的被測(cè)信號(hào)輸入端相連,從計(jì)數(shù)器電路的結(jié)構(gòu)可知,該電路輸出信號(hào)是由從低位到高位的多組4位二進(jìn)制表示的十進(jìn)制數(shù)組成的,用來(lái)分別表示被測(cè)信號(hào)的個(gè)、十、百、千等位的數(shù)值。
鎖存電路的主要功能是對(duì)計(jì)數(shù)器計(jì)數(shù)輸出的數(shù)據(jù)進(jìn)行鎖定保存。即使在前級(jí)計(jì)數(shù)電路的計(jì)數(shù)器清零以后,鎖存器依然有保存的數(shù)據(jù)存在,不會(huì)造成數(shù)據(jù)的丟失。鎖存電路中的鎖存器是對(duì)單個(gè)十進(jìn)制計(jì)數(shù)器數(shù)據(jù)進(jìn)行保存,因此鎖存器的個(gè)數(shù)與前一級(jí)計(jì)數(shù)電路的十進(jìn)制計(jì)數(shù)器的個(gè)數(shù)相同。
譯碼電路的功能是將鎖存器保存并將輸出的4位二進(jìn)制代碼表示的十進(jìn)制數(shù)進(jìn)行譯碼轉(zhuǎn)換,將其轉(zhuǎn)換為能直接驅(qū)動(dòng)數(shù)碼管顯示的十進(jìn)制數(shù)字字符的輸出信號(hào)。
顯示電路由共陰數(shù)碼管電路構(gòu)成。由于被測(cè)信號(hào)的頻率測(cè)頻范圍為1 Hz~1 MHz,因此需要6個(gè)數(shù)碼管對(duì)其進(jìn)行顯示。
2 頻率計(jì)各模塊設(shè)計(jì)
2.1 頻率計(jì)原理框圖
此頻率計(jì)的流程為:被測(cè)信號(hào)fin輸入到CPLD芯片,在控制信號(hào)為1 Hz時(shí),在CPLD芯片里完成對(duì)被測(cè)信號(hào)的測(cè)頻、計(jì)數(shù)、鎖存、譯碼,輸出信號(hào)接數(shù)碼管顯示,如圖1所示。
評(píng)論