鄭 琴,魯 琴,宋承志
(武漢紡織大學 數(shù)學與計算機學院,湖北 武漢 430073)
一種基于FPGA的信號發(fā)生器設計實現(xiàn)
鄭 琴,魯 琴,宋承志
(武漢紡織大學 數(shù)學與計算機學院,湖北 武漢 430073)
應用VHDL語言及QuartusII軟件提供的原理圖輸入設計功能,結(jié)合電子線路的設計加以完成一個可應用于數(shù)字系統(tǒng)開發(fā)或?qū)嶒灂r做輸入脈沖信號或基準脈沖信號用的信號發(fā)生器,它具有結(jié)構(gòu)緊湊,性能穩(wěn)定,設計結(jié)構(gòu)靈活,方便進行多功能組合的特點,經(jīng)濟實用,成本低廉。
信號發(fā)生器;FPGA;QuartusII;VHDL語言
隨著我國的經(jīng)濟日益增長,社會對電子產(chǎn)品的需求量也就越來越大,目前,我國的電子產(chǎn)品市場正在迅速的壯大,市場前景廣闊。FPGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)在現(xiàn)代數(shù)字電路設計中發(fā)揮著越來越重要的作用。FPGA所具有的靜態(tài)可重復編程和動態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過編程來修改,這樣就極大地提高了電子系統(tǒng)設計的靈活性和通用性,縮短了產(chǎn)品的上市時間并降低可電子系統(tǒng)的開發(fā)成本。
信號發(fā)生器是數(shù)字設備運行工作中必不可少的一部分,在傳統(tǒng)的信號發(fā)生器中,大都使用分立元件,而且體積龐大攜帶不便,且大部分只能輸出一種脈沖信號波形,而使用專用的數(shù)字電路設計的信號發(fā)生器,設備成本高、使用復雜。基于以上考慮,在中小型數(shù)字電路的設計和測試中,迫切需要設計一種小型易用成本低廉的信號發(fā)生器。
利用VHDL編程,依據(jù)基本數(shù)字電路模塊原理進行整合。系統(tǒng)各部分所需工作時鐘信號由輸入系統(tǒng)時鐘信號經(jīng)分頻得到,系統(tǒng)時鐘輸入端應滿足輸入脈沖信號的要求。組合波形信號經(jīng)顯示模塊輸出。具備幅度和頻率可調(diào)功能,幅度可通過電位器調(diào)整,頻率控制模塊則是一個簡易的計數(shù)器,控制步徑為100HZ的可調(diào)頻率,最終送至脈沖發(fā)生模塊輸出脈沖信號,達到設計課題所要求的輸出波形頻率可調(diào)及幅度可調(diào)功能。幅度可調(diào)功能由于比較簡單,可以在FPGA外部利用硬件電路實現(xiàn)[2,3,8,9]??傮w設計框圖如下圖1所示:
圖1 總體設計框架圖
采用VHDL語言來編程,然后下載文件到FPGA來實現(xiàn)。VHDL語言是電子設計領域的主流硬件描述語言,具有很強的電路描述和建模能力,能從多個層次對數(shù)字系統(tǒng)進行建模和描述,從而大大降低了硬件設計任務,提高了設計效率和可靠性,要比模擬電路快得多。該方案是利用FPGA具有的靜態(tài)可重復編程和動態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過編程來修改,極大地提高了電子系統(tǒng)設計的靈活性和通用性,而且大大縮短了系統(tǒng)的開發(fā)周期。
本設計用VHDL語言根據(jù)傅立葉函數(shù)采集點進行掃描,分別產(chǎn)生正弦波、三角波和矩形波。以下介紹各種常用周期信號的傅立葉函數(shù)展開式[1,4,5,8,10,11]。
3.1.1 正弦波
正弦波發(fā)生分為兩個步驟,即正弦波幅值采樣存儲和正弦波波形的還原輸出。幅值采樣是將一個周期正弦波進行64等分,如圖2所示,將64個采樣點進行量化處理,量化值=255*sin360/64(V),將64點量化值存入存儲器。正弦波形的產(chǎn)生是通過循環(huán)反復將存儲器中的64點采樣值通過DAC0832進行還原輸出,得到幅值正比于64點采樣值的正弦波。
3.1.2 矩形波
矩形波的實現(xiàn)較之正弦波發(fā)生簡單,由于矩形波是兩個電平值間的交替變換,因此波形采樣值的預存只要有兩個不同的數(shù)值就行了,為了使矩形波發(fā)生的頻率靈活可調(diào),采用60個采樣值掃描輸出來實現(xiàn),每半個矩形波周期采用三十個采樣值,循環(huán)反復將存儲器中的60點采樣值通過DAC0832進行還原輸出,得到幅值正比于點采樣值的矩形波。采樣圖如圖3所示。
3.1.3 三角波
由于三角波是線性的,比較簡單就可以產(chǎn)生,如果最低電壓設為15V,最高是255V,那么根據(jù)它的公式255/15=17,每個點的電壓只要依次加17就可以得到,一個波形所以采用簡單的加減算法就可實現(xiàn),如圖4所示三角波的采樣圖。
3.1.4 基波
通過VHDL編程產(chǎn)生的正弦波、方波、三角波三種周期性波形即為基波。
圖5 頻率控制模塊流程圖
圖2 正弦波采樣圖
圖3 方波采樣圖
圖4 三角波采樣圖
圖6 選擇波形電路設計流程圖
3.1.5 諧波的產(chǎn)生
采用與基波產(chǎn)生的同樣原理,編程產(chǎn)生三種波形的諧波,所不同的是一個波形的周期采樣的點數(shù)不同,如果基波采樣點為63個,諧波采樣點數(shù)則為21個,其每點的電壓值為255*(sin360/60+sin360/20)(V),在對其進行循環(huán)掃描即可實現(xiàn)基波與諧波的線性疊加。
系統(tǒng)要求頻率控制是在100HZ-1KHZ,步進為100HZ。在本題設計中只需借助FPGA便可完成。根據(jù)用戶需要的頻率[5,6,9],通過編程把頻率控制數(shù)值傳送給各個模塊,從而實現(xiàn)頻率的控制。如圖5所示。
這一部分主要是通過一個按鍵對波形進行循環(huán)選擇,按下確認按鈕后進行波形的調(diào)用。設計流程圖如圖6所示。
此次系統(tǒng)設計硬件部分通過 FPGA/CPLD實驗箱完成。為了避免干擾信號影響系統(tǒng)正常工作,未分配功能的FPGA引腳必須接地,在FPGA器件的電源端必須并連一0.01uF的退耦電容,在所有的輸入引腳上串聯(lián)100歐姆左右電阻減弱干擾信號影響,如有必要還應在輸入端設置上拉或下拉電阻。
圖7 濾波電路的設計
如圖7所示,設計D/A輸出后,通過濾波電路、輸出緩沖電路,使信號平滑且具有負載能力。
為保證穩(wěn)幅輸出,選用 AD817,這是一種低功耗、高速、寬帶運算放大器 , 具有很強的大電流驅(qū)動能力。實際電路測量結(jié)果表明:當負載100Ω、輸出電壓峰-峰值10V時,帶寬大于500kHz,幅度變化小于土1%。
幅度控制電路采用一個電位器來控制波形的輸出幅度,電位器的型號為10K 歐。
圖8 系統(tǒng)仿真波形
FPGA系統(tǒng)的軟硬件設計是緊密相連的,將軟件編譯綜合并且通過下載對FPGA進行適配,運行中的FPGA是由其內(nèi)部的硬件結(jié)構(gòu)控制讀出數(shù)據(jù),從而產(chǎn)生波形。
系統(tǒng)仿真波形如圖8所示:
系統(tǒng)以FPGA10K10器件為核心部件,可利用軟件編程實現(xiàn)了對D/A轉(zhuǎn)換信號的處理。努力做到了線路簡單、高性價比的特點,充分利用了軟件編程,彌補了硬件元器件的不足。
[1] 潘松,黃繼業(yè). EDA技術實用教程(第二版)[M]. 北京:北京科學出版社,2005.2.
[2] 李小波,等.基于CPLD和單片機的低頻信號源設計[J]. 儀表技術與傳感器,2005, (11):46-48.
[3] 包明,等.基于FPGA的高速高精度頻率測量的研究[J]. 單片機與嵌入式系統(tǒng)應用,2003,(2):31-33.
[4] 王志鵬,付麗琴.可編程邏輯器件開發(fā)技術. Quartus II. 北京: 國防工業(yè)出版社,2005.3.
[5] 王道先. VHDL電路設計技術. 北京: 國防工業(yè)出版社,2004.1
[6] 候伯亨,顧新.VHDL硬件描述語言與數(shù)字邏輯電路設計[M].西安:西安電子科技大學出版社,2000.
[7] 曾繁泰.EDA工程的理論與實踐[M]. 北京: 電子工業(yè)出版社,2004.5.
[8] 尹佳喜,尹仕.基于CPLD的三相多波形函數(shù)發(fā)生器設計[J]. 電子工程師, 2005,(8).
[9] 高淼.基于FPGA的自治型SPWM波形發(fā)生器的設計[J]. 世界電子元器件, 2003,(10).
[10] 李剛強.FPGA設計中關鍵問題的研究[EB/OL]. http://www.edacn.net/viewarticle.php?id=27146,2005-10-15.
[11] Ralf N.Hardware/Software Co_designed for Data Flow Dominated Embedded System[M]. Kluwer Academic Publishers,1998.
The Design and Implementation of A Signal Generator based on FPGA
ZHENG Qin, LU Qin, SONG Cheng-zhi
(College of Mathmatics and Computer Science, Wuhan Textile university, Wuhan Hubei 430073, China)
VHDL language and QuartusII software application of the principle diagram provided input, combined with electronic circuit design function of the design to complete a can be used in the digital system development or experiment do input pulse signal or benchmark pulse signal with the signal generator, it has compact structure, stable performance, the structure design is flexible, convenient for the characteristics of the multi-functional combination, economic and practical, low cost.
FPGA; QuartusII; VHDL
TP302
A
1009-5160(2011)06-0061-04
鄭琴(1981-),女,講師,碩士,研究方向:計算機科學與技術.