一、概述
在常用的信號源及信號處理設(shè)計方案中,RC/LC振蕩電路頻率調(diào)整方便,但是它的工作頻率穩(wěn)定度較低。頻率穩(wěn)定度較低導(dǎo)致系統(tǒng)的工作穩(wěn)定度降低,使其不適用于對精度要求較高的場合。晶振具有穩(wěn)定且較高的頻率,其頻率穩(wěn)定精度可達(dá)到10-6以上,但是它的頻率是固定不可調(diào)的。晶振不能很方便地產(chǎn)生各種頻率可變的信號。晶振加鎖相環(huán)(PLL)電路可結(jié)合晶振頻率穩(wěn)定度高和鎖相環(huán)頻率可調(diào)的優(yōu)點(diǎn),但是輸出頻率只能成倍的變換,還是不能解決頻率可調(diào)的根本問題;頻率合成器則通過一排晶體振蕩器來產(chǎn)生的各種頻率的信號,通過開關(guān)進(jìn)行頻率混合實現(xiàn)頻率合成,但外圍電路復(fù)雜,分辨率難以提高。
DDS(Direct Digital Frequency Synthesis)技術(shù)的出現(xiàn)無疑為我們提供了一種新的選擇。DDS技術(shù)采用晶振作為系統(tǒng)的時鐘,從而提高了輸出頻率的穩(wěn)定性;頻率控制字及相位累加器的位數(shù)決定了頻率分辨率,其計算公式為 △f ?fclk/2N 。這里fclk為系統(tǒng)時鐘頻率;N為相位累加器的位數(shù)。隨N增大使得頻率分辨率提高;同時頻率控制字的可調(diào)整性使得系統(tǒng)輸出頻率非常容易調(diào)整。
在此思想指導(dǎo)下,我們應(yīng)用ALTERA公司的FPGA器件、QuartusⅡ開發(fā)環(huán)境和NIOS軟核等相關(guān)的開發(fā)工具,采用VHDL語言及SOPC設(shè)計思想,輔以必要的模擬與數(shù)字轉(zhuǎn)換電路,構(gòu)成了一個基于DDS技術(shù)的數(shù)字調(diào)頻發(fā)生器,該設(shè)計解決了輸出頻率在精確度和可調(diào)性之間的矛盾。
二、功能說明
本系統(tǒng)由數(shù)字式點(diǎn)頻信號發(fā)生器、掃頻信號源和全數(shù)字調(diào)頻發(fā)生器三部分組成。
1、信號發(fā)生器
具有產(chǎn)生多種波形(如:正弦波、三角波、鋸齒波和方波4種波形)的功能。用鍵盤輸入選擇上述波形,并可進(jìn)行相位連續(xù)切換。重復(fù)頻率可調(diào),且相位連續(xù)調(diào)整,頻率步進(jìn)間隔可擴(kuò),輸出波形幅度可調(diào)整,并具有實時顯示輸出波形頻率和幅度值的功能。
2、掃頻信號發(fā)生器
具有輸出正弦波掃頻信號的功能。用鍵盤輸入編輯生成掃頻信號,控制輸入上、下限及步進(jìn)頻率,可進(jìn)行隨時暫停,并具有掃頻延時回放功能。
3、全數(shù)字調(diào)頻發(fā)生器
對采樣信號進(jìn)行全數(shù)字調(diào)頻,可以輸出具有原信號信息的調(diào)頻信號,把輸入的模擬信號幅度的變化轉(zhuǎn)化為載波頻率的變化,簡單的實現(xiàn)全數(shù)字調(diào)頻信號發(fā)生器。重復(fù)頻率可調(diào),且相位連續(xù)調(diào)頻,頻率步進(jìn)間隔可擴(kuò)。
三、系統(tǒng)構(gòu)成
系統(tǒng)設(shè)計框圖如圖1所示:

四、設(shè)計描述
隨著電子技術(shù)的發(fā)展和大規(guī)模集成電路制作工藝的提高,DDS(Direct Digital Frequency Synthesis)技術(shù)的出現(xiàn)無疑為我們提供了一種選擇。但是DDS技術(shù)是否適合設(shè)計所要求的信號源,而屏蔽掉常規(guī)器件的缺點(diǎn),我們可以通過對DDS技術(shù)的簡要介紹來解決這個問題。DDS技術(shù)產(chǎn)生任意波形原理圖如圖3所示:

如圖所示,DDS系統(tǒng)的參考時鐘由晶振產(chǎn)生,輸入的頻率控制字在參考時鐘控制下實現(xiàn)相位累加,截取相位累加器高位產(chǎn)生波形存儲器的讀數(shù)地址。由于波形存儲器類似一維向量表,僅需給地址便可取數(shù)據(jù)。那么將相位累加器輸出的相位高位作為輸入的地址,波形存儲器內(nèi)部存儲的是每一個相位對應(yīng)的幅度信息。每次訪問一個地址,就輸出一個幅度值數(shù)據(jù)。
根據(jù)相位與幅度的對應(yīng)關(guān)系獲得幅值信息,將幅值信息送往D/A轉(zhuǎn)換器,再經(jīng)過濾波器即可得到一定頻率的輸出信號。以固定的速度繞相位環(huán)旋轉(zhuǎn)的矢量導(dǎo)致了一個完整周期正弦波的輸出。如果向累加器輸入的頻率控制字改變時,矢量在相位環(huán)上的訪問速度會相應(yīng)改變,則輸出信號的頻率也會改變,即可實現(xiàn)頻率可調(diào)。
由于兼有這三個方面的優(yōu)勢,DDS技術(shù)便成為本次系統(tǒng)設(shè)計中信號產(chǎn)生部分的首選。
在本設(shè)計作品的實際過程中,我利用ALTERA提供的QuartusⅡ及NIOS在實際的硬件實現(xiàn)上做到高速無縫連接,并利用SOPC設(shè)計理念將PLD的最高度設(shè)計抽象,彌補(bǔ)了軟件和硬件同時集成的空白,由于SOPC Builder是把所有和處理器子系統(tǒng)相關(guān)的底層詳細(xì)資料集中到單個工具中,它具有直觀的圖形用戶接口及自動完成系統(tǒng)集成工作,可直觀地連接總線體系,分配從設(shè)備端的仲裁優(yōu)先級,這樣就極大的方便了我們的軟硬件協(xié)同設(shè)計工作。
整個系統(tǒng)分為硬件和軟件兩個部分。
硬件部分包括:A/D轉(zhuǎn)換模塊、鍵盤顯示模塊和D/A轉(zhuǎn)換模塊,其中鍵盤顯示模塊采用開發(fā)板上所提供的四個按鍵、兩個七段數(shù)碼管、LED和LCD液晶顯示、A/D、D/A、DDS、RAM、ROM模塊;
軟件部分包括對鍵盤顯示及整個系統(tǒng)聯(lián)調(diào)的NIOS控制編程。
一、 硬件部分
系統(tǒng)硬件框圖如圖4所示:

1、 鍵盤顯示模塊:
鍵盤模塊包括八鍵開關(guān)和四個按鍵。四個按鍵中功能分別為:功能切換鍵,加鍵,減鍵和確認(rèn)鍵。
顯示模塊主要由七段數(shù)碼管、LED和LCD三部分組成。其中七段數(shù)碼管用于功能識別顯示,LED用于確認(rèn)鍵識別,而主要的詳細(xì)數(shù)據(jù)及模式信息由LCD顯示實現(xiàn)。
2、 A/D、D/A轉(zhuǎn)換模塊:
A/D模塊所用器件是ADS7841,它是一個4通道、12位采樣的模擬/數(shù)字轉(zhuǎn)換器。D/A轉(zhuǎn)換模塊所用器件為DAC7611,它是工作在工業(yè)溫度范圍內(nèi)的12位數(shù)字/模擬轉(zhuǎn)換器。
一幀12位數(shù)據(jù)完成D/A轉(zhuǎn)換需要12個CLK,而這12個CLK是由系統(tǒng)時鐘30分頻產(chǎn)生。系統(tǒng)時鐘為33.333MHz,經(jīng)30分頻后所得的D/A轉(zhuǎn)換速率應(yīng)為33.333MHz /30=1.1111 MHz。而訪問ROM表的時鐘頻率應(yīng)與D/A轉(zhuǎn)換速率同步,所以輸出波形的頻率受到D/A轉(zhuǎn)換器的限制。如果一個周期訪問8個數(shù)值,則輸出模擬信號的頻率最高為1.1111 MHz /8=138887.5Hz,這是理論上的最大頻率值。如果采用高速并行D/A轉(zhuǎn)換器,轉(zhuǎn)換速率會大幅提高。而本次設(shè)計采用串行D/A轉(zhuǎn)換器的主要原因是因為其能應(yīng)用于遠(yuǎn)程串行通信系統(tǒng)。
3、DDS模塊:
(1)、相位累加器:相位累加器是DDS的核心部分,用于完成頻率控制字的相位累加,隨頻率控制字的改變進(jìn)而實現(xiàn)調(diào)頻的功能。該功能用VHDL硬件描述語言編程實現(xiàn)
(2)、幅度調(diào)制:由ROM查表輸出的結(jié)果(10位)與幅度控制字(2位)通過一級乘法器實現(xiàn),乘法器利用開發(fā)平臺內(nèi)部的快速定制功能對生成的乘法器進(jìn)行定制。并附加一級鎖存單元可以等到波形數(shù)據(jù)穩(wěn)定后再向后級電路傳送,這樣就避免了毛刺的產(chǎn)生。
4、ROM、RAM存儲器模塊:
ROM存儲器實現(xiàn)任意波形數(shù)據(jù)的存儲,根據(jù)地址值從ROM表中查找出對應(yīng)的數(shù)據(jù),并將查表所得數(shù)據(jù)輸出到數(shù)字/模擬轉(zhuǎn)換模塊。存儲器不僅要有程序來對它進(jìn)行控制,更為關(guān)鍵的是在其中存儲一個、二分之一或四分之一波形的數(shù)據(jù)。
RAM模塊用于信號的采集處理過程中,A/D轉(zhuǎn)換器完成對輸入模擬信號256個點(diǎn)的采樣,從A/D轉(zhuǎn)換器輸出的采樣數(shù)據(jù)個數(shù)為256個,所以RAM的地址位數(shù)應(yīng)為8位
軟件部分
設(shè)計框圖如圖7所示:

1、 鍵盤顯示控制模塊:
利用NIOS實現(xiàn)鍵盤的過程中,由于設(shè)計板所提供的僅有四個的按鍵及八個開關(guān)?;旧希I盤顯示的控制部分均由PIO賦值及利用其固有的宏命令編制C語言加以實現(xiàn)。
2、 整個系統(tǒng)聯(lián)調(diào)的NIOS控制編程:
編制C程序?qū)崿F(xiàn)鍵盤顯示模塊、DDS模塊及A/D、D/A轉(zhuǎn)換模塊的控制,其中大量采用了PIO賦值并利用條件語句進(jìn)行判斷狀態(tài),PIO送入不同的相應(yīng)輸入字。
五、系統(tǒng)特點(diǎn)
根據(jù)實際測量指標(biāo),在頻率無論是低頻還是高頻都具有很好的頻率調(diào)整精度。其相對誤差的數(shù)學(xué)期望都在10-7數(shù)量級上,完全可以達(dá)到我們的信號發(fā)生器的功能指標(biāo),同時這樣的產(chǎn)品精度也是市場上類似產(chǎn)品所不能比擬的。由于對于晶振而言,其精度也就是10-7,由此,我們設(shè)計實現(xiàn)的信號源精度已經(jīng)達(dá)到了針對晶振的精度極限。
在具體的設(shè)計實現(xiàn)過程中,我們強(qiáng)調(diào)抓住每個具體細(xì)節(jié)的穩(wěn)定性。如在硬件乘法器方面,我們都在其后端加入了鎖存單元,利用邊緣觸發(fā)防止不定或過多毛刺的產(chǎn)生,從而實現(xiàn)了近乎理想的基于DDS理論的信號產(chǎn)生與處理功能。
六、總結(jié)
引入SOPC的設(shè)計理念,無疑就是一場IC革命的必然延續(xù)。就我們的設(shè)計而言,對基于SOPC理念的NIOS系統(tǒng)設(shè)計從掌握到充分的運(yùn)用到實際設(shè)計過程中,大概不超過半個月的時間,這點(diǎn)就充分地體現(xiàn)了它的短開發(fā)周期優(yōu)勢。
其次,對NIOS而言它是一種軟核處理器,因此其硬件可任意添加刪除,從而提高了整個系統(tǒng)的運(yùn)行效果也降低了設(shè)計成本。同時對設(shè)計人員的技術(shù)要求可以大大降低。
再者,在我們的實際設(shè)計過程中由于需要大量的乘除運(yùn)算,無疑利用類似于NIOS的微處理器很容易實現(xiàn),可避免完全利用硬件描述語言編寫所出現(xiàn)的大量毛刺及工作量。
本文作者創(chuàng)新點(diǎn):能夠利用FPGA器件參考DDS理論配合Nios軟核微處理器技術(shù),設(shè)計實現(xiàn)多種波形數(shù)字幅度頻率可調(diào)的精確調(diào)頻發(fā)生器。該技術(shù)的創(chuàng)新點(diǎn)在于輸出的調(diào)頻信號頻率從0.0Hz—138887.5000Hz,最小步進(jìn)可達(dá)到為0.0001Hz。在我們對頻率的測試結(jié)果中,無論是低頻還是高頻都具有很好的頻率調(diào)整精度。其相對誤差的數(shù)學(xué)期望都在10-7數(shù)量級上。因此就信號的頻率精度可靠性而言,與技術(shù)相比具有一定的優(yōu)勢。
責(zé)任編輯:gt
電子發(fā)燒友App




















評論