




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
精品文檔-下載后可編輯基于FPGALPM多功能信號(hào)發(fā)生器設(shè)計(jì)-設(shè)計(jì)應(yīng)用摘要:以FPGA芯片為載體,通過QuartusII的LPM_ROM模塊和VHDL語言為設(shè)計(jì)一個(gè)多功能信號(hào)發(fā)生器,根據(jù)輸入信號(hào)的選擇可以輸出遞增鋸齒波、遞減鋸齒波、三角波、階梯波和方波等5種信號(hào),通過QuartusII軟件進(jìn)行波形仿真、定時(shí)分析,仿真正確后,利用實(shí)驗(yàn)板提供的資源,到芯片中實(shí)現(xiàn)預(yù)定功能。
信號(hào)發(fā)生器又稱為波形發(fā)生器,是一種常用的信號(hào)源,廣泛應(yīng)用于電子電路、通信、控制和教學(xué)實(shí)驗(yàn)等領(lǐng)域。它是科研及工程實(shí)踐中重要的儀器之一,以往多用硬件組成,系統(tǒng)結(jié)構(gòu)比較復(fù)雜,可維護(hù)性和可操作性不佳。隨著計(jì)算機(jī)技術(shù)的發(fā)展,信號(hào)發(fā)生器的設(shè)計(jì)制作越來越多的是用計(jì)算機(jī)技術(shù),種類繁多,價(jià)格、性能差異很大。用FPGA或CPLD來實(shí)現(xiàn),它的優(yōu)點(diǎn)是可以進(jìn)行功能仿真,而且FPGA和CPLD的片內(nèi)資源豐富,設(shè)計(jì)的流程簡(jiǎn)單。用FPGA所構(gòu)成的系統(tǒng)來產(chǎn)生波形信號(hào),這個(gè)系統(tǒng)既能和主機(jī)系統(tǒng)相連,用相應(yīng)的上層軟件展示波形信號(hào),又方便程序的編寫,而且還有A/D0809接口可以產(chǎn)生模擬信號(hào)的輸出和外面的示波器相連。
1正弦信號(hào)發(fā)生器的LPM定制
正弦信號(hào)發(fā)生器由計(jì)數(shù)器或地址發(fā)生器(6位)、正弦信號(hào)數(shù)據(jù)ROM(6位地址線,8位數(shù)據(jù)線,含有64個(gè)8位數(shù)據(jù),一個(gè)周期)、原理圖頂層設(shè)計(jì)和8位D/A(實(shí)驗(yàn)中用DAC0832代替)。
其框圖如圖1所示。其中信號(hào)產(chǎn)生模塊將產(chǎn)生所需的各種信號(hào),這些信號(hào)的產(chǎn)生可以有多種方式,如用計(jì)數(shù)器直接產(chǎn)生信號(hào)輸出,或者用計(jì)數(shù)器產(chǎn)生存儲(chǔ)器的地址,在存儲(chǔ)器中存放信號(hào)輸出的數(shù)據(jù)。信號(hào)發(fā)生器的控制模塊可以用數(shù)據(jù)選擇器實(shí)現(xiàn),用8選1數(shù)據(jù)選擇器實(shí)現(xiàn)對(duì)5種信號(hào)的選擇。
圖1信號(hào)發(fā)生器結(jié)構(gòu)框圖
將波形數(shù)據(jù)送入D/A轉(zhuǎn)換器,將數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào)輸出。用示波器測(cè)試D/A轉(zhuǎn)換器的輸出,可以觀測(cè)到5種信號(hào)的輸出。
1.1定制初始化數(shù)據(jù)文件
QuartusII能接受的LPM_ROM模塊中的初始化數(shù)據(jù)文件的格式有兩種:。mif格式文件和。hex格式文件。實(shí)際應(yīng)用中只要使用其中一種格式的文件即可。下面采用。mif格式文件,調(diào)出產(chǎn)生ROM數(shù)據(jù)文件大小的選擇窗。根據(jù)64點(diǎn)8位正弦數(shù)據(jù)的情況,可選ROM的數(shù)據(jù)數(shù)Number為64,數(shù)據(jù)寬Wordsize取8位。單擊OK按鈕,將出現(xiàn)圖2所示的空的。mif數(shù)據(jù)表格,表格中的數(shù)據(jù)格式可通過鼠標(biāo)右鍵單擊窗口邊緣的地址數(shù)據(jù)彈出的窗口選擇。
圖2.mif數(shù)據(jù)表格
將波形數(shù)據(jù)填入mif文件表中也可以使用QuartusII以外的編輯器設(shè)計(jì)MIF文件,其格式如下:
#includestdio.h
#include"math.h"
main()
{inti;floats;
for(i=0;i1024;i++)
{s=sin(atan(1)*8*i/1024);
printf("%d:%d;\n",i,(int)((s+1)*1023/2));}}
把上述程序編譯成程序后,可在DOS命令行下執(zhí)行命令:
romgensin_rom.mif;
1.2定制LPM元件
打開MegaWizardPlug_InManager初始對(duì)話框,選擇Createanewcustom…項(xiàng)。單擊Next按鈕后,選擇Storage項(xiàng)下的LPM_ROM,再選擇ACEX1K器件和VHDL語言方式;輸入ROM文件存放的路徑和文件名:F:\sing_gnt\data_rom(定制的ROM元件文件名),單擊Next按鈕,選擇ROM控制線、地址線和數(shù)據(jù)線。這里選擇地址線位寬和ROM中數(shù)據(jù)數(shù)分別為6和64;選擇地址鎖存控制信號(hào)inclock。
對(duì)于地址信號(hào)發(fā)生器的設(shè)計(jì)。方法一:用VHDL語言設(shè)計(jì)6位計(jì)數(shù)器,產(chǎn)生其元件符號(hào);方法二:仍采用LPM定制的方法。
1.3完成頂層設(shè)計(jì)
按圖3畫出頂層原理圖,然后進(jìn)行編譯,波形仿真如圖4所示。
圖3簡(jiǎn)易正弦信號(hào)發(fā)生器頂層電路設(shè)計(jì)
圖4當(dāng)前工程仿真波形輸出
對(duì)當(dāng)前設(shè)計(jì)通過執(zhí)行QuartusII的命令Create∠Update/CreateSymbolFilesforCurrentFile,可以為設(shè)計(jì)電路建立一個(gè)元件符號(hào),以便被頂層設(shè)計(jì)多功能信號(hào)發(fā)生器所調(diào)用。
2其他信號(hào)部分原程序
其他各信號(hào)發(fā)生器可參照正弦信號(hào)發(fā)生器的設(shè)計(jì)方法設(shè)計(jì)或直接采用VHDL硬件描述語言進(jìn)行設(shè)計(jì)。
LIBRARYIEEE;--遞增鋸齒波的設(shè)計(jì)
USEIEEE.STDLOGIC1164.ALL;
USEIEEE.STDLOGICUNSIGNED.ALL;
ENTITYsignal2IS--遞增鋸齒波signal1
PORT(clk,reset:INstd_logic;--復(fù)位信號(hào)reset,時(shí)鐘信號(hào)clk
q:OUTstd_logic_vector(7DOWNTO0));--輸出信號(hào)q
ENDsignal2;
ARCHITECTUREbOFsignal2IS
BEGIN
PROCESS(clk,reset)
VARIABLEtmp:std_logic_vector(7DOWNTO0);
BEGIN
IFreset='0'THEN
tmp:="00000000";
ELSITrising_ege(clk)THEN
IFtmp="11111111"THEN
tmp:="00000000";
ELSE
tmp:=tmp+1;--遞增信號(hào)的變化
ENDIF;
ENDIF;
q=tmp:
ENDPROCESS;
ENDb;
LIBRARYIEEE;--方波的設(shè)計(jì)
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
entitysignal5is--方波signal5
PORT(clk,reset:instd_logic;--復(fù)位信號(hào)reset,時(shí)鐘信號(hào)clk
q:outstd_logic_vector(7DOWNTO0));--輸出信號(hào)q,8位數(shù)字信號(hào)
ENDsignal5;
ARCHITEECTUREaOFsignal5IS
SIGNAL;a:std_logic;
BEGIN
PROCESS(clk,reset)
YARIABLEtmp:std_logic_vector(7downto0);
BEQIN
IFreset='0'then
a='0';
elsifrising_edge(clk)THEN
IFtmp="11111111"THEN
tmp:="00000000";
ELSE
tmp:=tmp+1;
ENDIF;
iftmp="10000000"then
a='1';
else
a='0';
ENDIF;
ENDIF;
ENDPROCESS;
PROCESS(clk,a)
BEGIN
IFrising_edge(clk)THEN
IFa='1'THEN
q="11111111";
ELSE
q="00000000";
ENDIF;
ENDIF;
ENDPROCESS;
ENDa;
3頂層電路的設(shè)計(jì)
將上述6個(gè)模塊生成符號(hào),供頂層電路調(diào)用。這些模塊分別是:遞減鋸齒波信號(hào)產(chǎn)生模塊signall、遞增鋸齒波信號(hào)產(chǎn)生模塊signal2、三角波信號(hào)產(chǎn)生模塊signal3、階梯波信號(hào)產(chǎn)生模塊signal4、方波信號(hào)產(chǎn)生模塊signal5和數(shù)據(jù)選擇器mux51。頂層電路的連接如圖5所示。
圖5信號(hào)發(fā)生器頂層電路
4D/A轉(zhuǎn)換器的連接
選擇一個(gè)D/A轉(zhuǎn)換器,將數(shù)據(jù)選擇器的輸出與D/A轉(zhuǎn)換器的輸入端連接。D/A轉(zhuǎn)換器的可選范圍很寬,這里以常用的DAC0832為例。DAC0832的連接電路如圖6所示。
圖6DAC0832的連接電路
5實(shí)現(xiàn)與測(cè)試
信號(hào)發(fā)生器頂層電路的仿真波形如圖7所示,這里只就輸入選擇信號(hào)等于5時(shí)的情況進(jìn)行仿真,此時(shí)輸出波形是方波,輸出的數(shù)字信號(hào)為周期性的全0或全1。
圖7信號(hào)發(fā)生器頂層電路的仿真波形
信號(hào)發(fā)生器的底層電路模塊也可以分別進(jìn)行仿真,例如對(duì)階梯波信號(hào)產(chǎn)生模塊signal4進(jìn)行仿真,仿真波形如圖8所示,輸出的數(shù)字信號(hào)為階梯狀變化。
圖8階梯波信號(hào)產(chǎn)生模塊signal4的仿真波形
6結(jié)束語
硬件電路設(shè)計(jì)主要是設(shè)計(jì)相關(guān)模塊的設(shè)計(jì)思想的可視化,是相關(guān)模塊的電路圖的匯總和其相關(guān)仿真波形的集錦,該部分條理清晰,思路明確,從中我們可以清晰地看到該設(shè)計(jì)方案的具體模塊和整個(gè)設(shè)計(jì)的原理結(jié)構(gòu)實(shí)圖;程序設(shè)計(jì)這一部分主要闡述該設(shè)計(jì)的設(shè)計(jì)方法與設(shè)計(jì)思想,進(jìn)一步從軟件設(shè)計(jì)上揭示設(shè)計(jì)構(gòu)思,主要包含了整個(gè)設(shè)計(jì)所用到的模塊的硬件描述語言的設(shè)計(jì),本文設(shè)計(jì)思路清晰,通過QuartusII軟件進(jìn)行波形仿真成功,特別是正弦信號(hào)發(fā)生器的LPM定制對(duì)于編程不是特別強(qiáng)的人員提供另一種途徑來實(shí)現(xiàn),加深理解EDA的層次設(shè)計(jì)思想,很好的把
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人吊車轉(zhuǎn)賣合同范例
- 低壓借款合同范例
- 企業(yè)贊助活動(dòng)合同范例
- 加工承攬貨架合同范例
- 中介服裝租賃合同范例
- 代建費(fèi)合同范例
- 二手房私自交易合同范例
- 培土生金潤(rùn)腸法治療肺脾氣虛津虧型功能性便秘的臨床療效觀察
- 住宅樓裝修合同范例
- 養(yǎng)生館雇傭合同范例
- 2025山西國際能源集團(tuán)社會(huì)招聘258人筆試參考題庫附帶答案詳解
- 普華永道中天會(huì)計(jì)師事務(wù)所-人工智能機(jī)遇在汽車領(lǐng)域
- 湖北省武漢市2024-2025學(xué)年高三2月調(diào)研考試英語試題含答案
- 2025年皖西衛(wèi)生職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫新版
- 2025年湖南高速鐵路職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫附答案
- 2025屆高考英語二輪復(fù)習(xí)備考策略課件
- 《工程勘察設(shè)計(jì)收費(fèi)標(biāo)準(zhǔn)》(2002年修訂本)
- 活在課堂里 課件
- 潔凈室空調(diào)凈化系統(tǒng)驗(yàn)證方案(通過BSI和華光審核)
- 2024年遼陽職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫及答案解析
- 增廣賢文-全文帶拼音
評(píng)論
0/150
提交評(píng)論