版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、JIANGSUUNIVERSITYOFTECHNOLOGYFPGA技術實驗報告基于FPGA的直接數字頻率合成器設計學院:電氣信息工程學院專業(yè):電子信息工程班級:姓名:學號:指導教師:戴霞娟、陳海忠時間:2015年9月17日 TOC o 1-5 h z HYPERLINK l bookmark4 o Current Document 功能要求2 HYPERLINK l bookmark6 o Current Document 方案設計及原理框圖2 HYPERLINK l bookmark8 o Current Document 方案設計2 HYPERLINK l bookmark10 o Cur
2、rent Document 原理框圖3輸入電路3 HYPERLINK l bookmark14 o Current Document FPGA電路3D/A轉換電路4 HYPERLINK l bookmark18 o Current Document 硬件電路設計及原理分析4 HYPERLINK l bookmark20 o Current Document 硬件電路圖4 HYPERLINK l bookmark22 o Current Document 原理分析5 HYPERLINK l bookmark24 o Current Document DAC0832轉換器5 HYPERLINK l
3、 bookmark26 o Current Document LM358芯片5程序模塊設計、仿真結果及分析錯誤!未定義書簽。 HYPERLINK l bookmark30 o Current Document 頂層模塊6 HYPERLINK l bookmark32 o Current Document 分頻模塊6時鐘模塊錯誤!未定義書簽。正弦波產生模塊錯誤!未定義書簽。三角波產生模塊錯誤!未定義書簽。方波產生模塊錯誤!未定義書簽。鋸齒波產生模塊錯誤!未定義書簽。波形選擇模塊錯誤!未定義書簽。 TOC o 1-5 h z HYPERLINK l bookmark44 o Current Doc
4、ument 軟硬件調試20 HYPERLINK l bookmark46 o Current Document 軟件調試22 HYPERLINK l bookmark48 o Current Document 硬件調試22 HYPERLINK l bookmark58 o Current Document 調試結果說明25 HYPERLINK l bookmark60 o Current Document 心得體會25 HYPERLINK l bookmark62 o Current Document 參考文獻25附錄26.功能要求通過本課題訓練,使學生掌握使用FPG順現頻率合成的方法。要求學
5、生根據正弦波形發(fā)生器的設計實例,舉一反三,設計多功能波形發(fā)生器。該波形發(fā)生器能產生正弦波、方波、三角波、鋸齒波和由用戶編輯的特定形狀波形,并且幅度、頻率可調。具體要求如下:基本要求:1)具有產生正弦波、方波、三角波、鋸齒波4種周期性波形的功能。(2)輸出波形的頻率范圍為100Hz200kHz至少可以輸出8種頻率的波形。3)輸出波形幅度不大于5V(峰-峰值),且幅度可調。擴展要求:(1)在頻率范圍為100Hz200kH的,頻率步進間隔0100Hzi(2)輸出波形幅度范圍05V(峰-峰值),可按步進0.1V(峰-峰值)調整。(3)用LCD1602s示輸出波形的類型、重復頻率(周期)和幅度。4)用鍵
6、盤輸入編輯生成上述4種波形(同周期)的線性組合波形。5)用鍵盤和其他輸入裝置產生任意波形。6)具有波形存儲功能。.方案設計及原理框圖方案設計利用FPGAB完成設計,FPGA程靈活,可以實現三角波、方波、鋸齒波和正弦波的數字化處理,將一個周期內的采樣點存儲起來,生成頻率可調的正弦波、方波、鋸齒波或者三角波,再通過D/A轉換和濾波電路便可得到模擬波形。利用該方法,編程簡單,實現靈活。原理框圖數字信號發(fā)生器系統主要由輸入部分、FPGA分、D/A轉換部分、頻率調節(jié)和波形轉換部分組成。原理框圖如下圖1:圖1:多功能波形信號發(fā)生器原理框圖輸入部分輸入部分包含以下功能按鍵:時鐘、復位、波形、調頻1、調頻2和
7、調頻3。(1)時鐘:標準的50MHz寸鐘輸入。(2)復位:低電平復位。(3)波形:為波形輸出選擇開關,可以選擇單波形的輸出。(4)調頻1,2,3:可以改變正弦波、三角波、方波和鋸齒波的頻率,總共可以輸出8種不同頻率。FPGA部分FPGA整個系統的核心,包括系統控制器、波形數據生成器、加法器、運算/譯碼、分頻器等電路。各部分具體功能如下:系統控制器:控制系統的每個部分狀態(tài)之間的協調。分頻:分頻系數有的固定不變,也有可改變的。正弦波:通過循環(huán)不斷地從RAMfr依次讀取正弦波一個周期在時域上1024個采樣點的波形數據送入波形DAC從而產生正弦波。正弦波的頻率取決于讀取數據的速度。三角波:三角波波形是
8、對稱的,每邊呈線性變化,所以可以根據地址數據做簡單運算,就可以得到三角波。鋸齒波:產生單調性鋸齒波,因此把地址數據進行左移2位,結果送波形DAC就可。方波:方波產生有1024個采樣點組成,1024個采樣點的數據只有“低電平”和“高電平”2種狀態(tài)。波形D/A轉換部分采用具有8位分辨率的D/A轉換集成芯片DAC0832乍為多種波形發(fā)生器的數模轉換器。由于多種波形發(fā)生器制使用一路D/A轉換,因而DAC083卻連續(xù)接成單緩沖器方式。另外,因DAC083犯一種電流輸出型D/A轉換器,要獲得模擬電壓輸出時,需外接運放來實現電流轉換為電壓。由于在實際使用中輸出波形不僅需要單極性的(0+5V或-50V)有時還
9、需要雙極性的(5V),因而可用兩組運算放大器作為模擬電壓輸出電路,運放可選用LM358,其片內集成了兩個運算放大器。.硬件電路設計及原理分析硬件電路圖 ACOB3ZGNDCHWRIGNUMRRFSGN 口r*WRWDieDtr liOUT? POUT1vccGNID圖2:波形信號發(fā)生器硬件電路圖原理分析本設計的工作原理為將要產生的波形數據存入波形存儲器,然后在參考時鐘的作用下,對輸入的頻率數據進行累加,并且將累加器的輸出一部分作為讀取波形存儲器的地址,將讀出的波形數據經D/A轉換為相應的模擬電壓信號。本研究的重點就是用VHD來實現DDS勺功能,能夠達到高精度的輸出,同時標準波形數據生成存放在R
10、OM中,可以簡化運算過程,提高運算速度,加快反應時間。DAC0832轉換器DAC0832是雙列直插式8位D/A轉換器,在電品&中DAC083縱接成單緩沖器方式。它的ILE,VCC8腳與+5V相連,CS,XFER,WR2,WR1腳,10腳與GNDf連,WRKCP信號相連。這樣DAC0832勺8位DACJ存器始終處于導通狀態(tài),因此當CP變成低電平時,數據線上的數據便可直接通過8位DACJ存器,并有其8位D/A轉換器進行轉換。圖3:DAC0832芯片弓|腳圖LM358芯片LM358是常用的雙運,LM358里面包括有兩個高增益、獨立的、內部頻率補償的雙運放,適用于電壓范圍很寬的單電源,而且也適用于雙電
11、源工作方式,它的應用范圍包括傳感放大器、直流增益模塊和其他所有可用單電源供電的使用運放的地方使用。圖5:頂層文件仿真圖OUT11X1N1HN-1|in句faj-pIGNO4圖4:LM358芯片引腳圖.程序模塊設計、仿真結果分析波形發(fā)生器可以由頂層模塊、分頻模塊、時鐘模塊、正弦波產生模塊、三角波產生模塊、方波產生模塊和輸出波形選擇模塊組成。頂層模塊頂層文件將已經設計的各個模塊聯系在一起成為一個整體,實驗時使用QuartusH9.0編寫VHDL程序實現頂層文件設計。頂層文件仿真圖如下5:分頻模塊根據DAC0832輸出控制時序,利用接口電路圖,DAC083犯8位的D/A轉換器,轉換周期為1s,又因為
12、FPGA勺系統時鐘為50MHz必須對其進行分頻處理,實驗使用100分頻,實驗時使用QuartusH9.0編寫VHDL?序生成時鐘分頻器。VHDL?序:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYwxm_CLKISPORT(CLK:INSTD_LOGIC;EN,EN1,EN2:INSTD_LOGIC;CLKOUT:OUTSTD_LOGIC);END;ARCHITECTUREBEHAVEOFwxm_CLKISSIGNALCNT:STD_LOGIC_VECTOR(19DOWNTO0);SIGN
13、ALEN3,EN4,EN5:STD_LOGIC;SIGNALEN6:STD_LOGIC_VECTOR(2DOWNTO0);BEGINEN6=EN3&EN4&EN5;PROCESS(EN)BEGINIFENEVENTANDEN=0THENIFEN3=0THENEN3=1;ELSEEN3=0;ENDIF;ENDIF;ENDPROCESS;PROCESS(EN1)BEGINIFEN1EVENTANDEN1=0THENIFEN4=0THENEN4=1;ELSEEN4=0;ENDIF;ENDIF;ENDPROCESS;PROCESS(EN2)BEGINIFEN2EVENTANDEN2=0THENIFEN
14、5=0THENEN5=1;ELSEEN54THENCNT0);CLKOUT2THENCLKOUT=1;CNT=CNT+1;ELSECNT8THENCNT0);CLKOUT4THENCLKOUT=1;CNT=CNT+1;ELSECNT16THENCNT0);CLKOUT8THENCLKOUT=1;CNT=CNT+1;ELSECNT30THENCNT0);CLKOUT15THENCLKOUT=1;CNT=CNT+1;ELSECNT62THENCNT0);CLKOUT31THENCLKOUT=1;CNT=CNT+1;ELSECNT124THENCNT0);CLKOUT62THENCLKOUT=1;C
15、NT=CNT+1;ELSECNT250THENCNT0);CLKOUT125THENCLKOUT=1CNT=CNT+1;ELSECNT500THENCNT0);CLKOUT250THENCLKOUT=1;CNT=CNT+1;ELSECNT=CNT+1;ENDIF;ENDIF;ENDPROCESS;END;時鐘模塊:crit1024elkqF9.Dinrt1圖6VHDLE序LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;PORT(CLK:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR(
16、9DOWNTO0);END;ARCHITECTUREBHVOFCNT1024ISSIGNALQ1:STD_LOGIC_VECTOR(9DOWNTO0);BEGINPROCESS(CLK)BEGINIFCLKEVENTANDCLK=1THENQ1=Q1+1;ENDIF;ENDPROCESS;Q=Q1;END;正弦波產生模塊該模塊輸入信號由時鐘(clk)和復位信號(reset)構成,當信號發(fā)生器選擇信號(sel2.0)為4時,該模塊輸出端(q9.0)對外輸出。模塊振幅隨時鐘的變化階梯性遞增,輸出波形參數可以通過程序進行設定。VHDLW為:LIBRARYieee;USEieee.std_logic_
17、1164.all;LIBRARYaltera_mf;USEaltera_mf.all;ENTITYcyy_sinISPORT(address:INSTD_LOGIC_VECTOR(9DOWNTO0);clock:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(9DOWNTO0);ENDcyy_sin;ARCHITECTURESYNOFcyy_sinISSIGNALsub_wire0:STD_LOGIC_VECTOR(9DOWNTO0);COMPONENTaltsyncramGENERIC(clock_enable_input_a:STRING;clock_enable_ou
18、tput_a:STRING;init_file:STRING;intended_device_family:STRING;lpm_hint:STRING;lpm_type:STRING;numwords_a:NATURAL;operation_mode:STRING;outdata_aclr_a:STRING;outdata_reg_a:STRING;widthad_a:NATURAL;width_a:NATURAL;width_byteena_a:NATURAL);PORT(clock0:INSTD_LOGIC;address_a:INSTD_LOGIC_VECTOR(9DOWNTO0);q
19、_a:OUTSTD_LOGIC_VECTOR(9DOWNTO0);ENDCOMPONENT;BEGINqBYPASS,clock_enable_output_a=BYPASS,init_file=E:/wxm/wxm_sin.mif,intended_device_family=CycloneII,lpm_hint=ENABLE_RUNTIME_MOD=NO,lpm_type=altsyncram,numwords_a=1024,operation_mode=ROM,outdata_aclr_a=NONE,outdata_reg_a=CLOCK0,widthad_a=10,width_a=10
20、,width_byteena_a=1)PORTMAP(clock。=clock,address_a=address,q_a=sub_wire0);ENDSYN;仿真結果:_2. w ms工耳 at ns_m 一 、.勺業(yè)塢.羋 n.單也 so.世 如二2” 一一.雄一n . 一 總用嗎三角波廣生模塊該模塊輸入信號由時鐘(clk)和復位信號(reset)構成,當信號發(fā)生器選擇信號(sel2.0)為2時,該模塊輸出端(q9.0)對外輸出。模塊內計數器隨時鐘先遞增后遞減,波形隨之先遞增后遞減,輸出波形參數可以通過程序進行設定。VHDL1序LIBRARYieee;USEieee.std_logic_1
21、164.all;LIBRARYaltera_mf;USEaltera_mf.all;ENTITYcyy_sjISPORT(address:INSTD_LOGIC_VECTOR(9DOWNTO0);clock:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(9DOWNTO0);ENDcyy_sj;ARCHITECTURESYNOFcyy_sjISSIGNALsub_wire0:STD_LOGIC_VECTOR(9DOWNTO0);COMPONENTaltsyncramGENERIC(clock_enable_input_a:STRING;clock_enable_output
22、_a:STRING;init_file:STRING;intended_device_family:STRING;lpm_hint:STRING;lpm_type:STRING;numwords_a:NATURAL;operation_mode:STRING;outdata_aclr_a:STRING;outdata_reg_a:STRING;widthad_a:NATURAL;width_a:NATURAL;width_byteena_a:NATURAL);PORT(clock0:INSTD_LOGIC;address_a:INSTD_LOGIC_VECTOR(9DOWNTO0);q_a:O
23、UTSTD_LOGIC_VECTOR(9DOWNTO0);ENDCOMPONENT;BEGINqBYPASS,clock_enable_output_a=BYPASS,init_file=E:/wxm/wxm_sj.mif,intended_device_family=CycloneII,lpm_hint=ENABLE_RUNTIME_MOD=NO,lpm_type=altsyncram,numwords_a=1024,operation_mode=ROM,outdata_aclr_a=NONE,outdata_reg_a=CLOCK0,widthad_a=10,width_a=10,widt
24、h_byteena_a=1)PORTMAP(clock。=clock,address_a=address,q_a=sub_wire0);ENDSYN;仿真結果:-ndm 寸丁dk9 MEnwrnmmrrn-nn-Anr.r.rrnmirmmrvmmrnrrrrn-mrvmir,5ll蜉電口*e -九勺H心7*3包 r j i .而鑰門】 l.itfn】方波產生模塊該模塊輸入信號由時鐘(clk)和復位信號(reset)構成,當信號發(fā)生器選擇信號(sel2.0)為5時,該模塊/&出端(q9.0)對外輸出。模塊振幅隨時鐘的變化持續(xù)變?yōu)楦唠娖交虻碗娖?,輸出波形參數可以通過程序進行設定。VHLIBRAR
25、Yieee;USEieee.std_logic_1164.all;LIBRARYaltera_mf;USEaltera_mf.all;ENTITYcyy_squareISPORT(address:INSTD_LOGIC_VECTOR(9DOWNTO0);clock:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(9DOWNTO0);ENDcyy_square;ARCHITECTURESYNOFcyy_squareISSIGNALsub_wire0:STD_LOGIC_VECTOR(9DOWNTO0);COMPONENTaltsyncramGENERIC(clock_enab
26、le_input_a:STRING;clock_enable_output_a:STRING;init_file:STRING;intended_device_family:STRING;lpm_hint:STRING;lpm_type:STRING;numwords_a:NATURAL;operation_mode:STRING;outdata_aclr_a:STRING;outdata_reg_a:STRING;widthad_a:NATURAL;widtha:NATURAL;width_byteena_a:NATURAL);PORT(clock0:INSTD_LOGIC;address_
27、a:INSTD_LOGIC_VECTOR(9DOWNTO0);q_a:OUTSTD_LOGIC_VECTOR(9DOWNTO0);ENDCOMPONENTBEGINqBYPASS,clock_enable_output_a=BYPASS,init_file=E:/wxm/wxm_square.mif,intended_device_family=CycloneII,lpm_hint=ENABLE_RUNTIME_MOD=NO,lpm_type=altsyncram,numwords_a=1024,operation_mode=ROM,outdata_aclr_a=NONE,outdata_re
28、g_a=CLOCK0,widthad_a=10,width_a=10,width_byteena_a=1)PORTMAP(clock0=clock,address_a=address,q_a=sub_wire0);ENDSY;N仿真結果:鋸齒波產生模塊VHDLW:LIBRARYieee;USEieee.std_logic_1164.all;LIBRARYaltera_mf;USEaltera_mf.all;ENTITYcyy_jcISPORT(address:INSTD_LOGIC_VECTOR(9DOWNTO0);clock:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR
29、(9DOWNTO0);ENDcyy_jc;ARCHITECTURESYNOFcyy_jcISSIGNALsub_wire0:STD_LOGIC_VECTOR(9DOWNTO0);COMPONENTaltsyncramGENERIC(clock_enable_input_a:STRING;clock_enable_output_a:STRING;init_file:STRING;intended_device_family:STRING;lpm_hint:STRING;lpm_type:STRING;numwords_a:NATURAL;operation_mode:STRING;outdata_aclr_a:STRING;outdata_reg_a:STRING;widthad_a:NATURAL;width_a:NATURAL;width_byteena_a:NATURAL);PORT(clock0:INSTD_LOGIC;address_a:INSTD_LOGIC_VECTOR(9DOWNTO0);q_a:OUTSTD_LOGIC_VECTOR(9DOWNTO0);ENDCOMPONENT;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人商品住宅買賣合同標準范本4篇
- 2025年度綠色建筑個人勞務分包合同規(guī)范文本4篇
- 2025年度個人二手卡車買賣合同規(guī)范4篇
- 引水隧洞豎井施工方案
- 2025年度個人貸款合同范本集錦與利率調整機制3篇
- 2025年個人股權清算分配協議范本4篇
- 2024年中職學生教案模板(共8篇)
- 二零二五版美發(fā)企業(yè)股東股權變更與投資協議3篇
- 軋輥示熱處理課程設計
- 二零二五版美容院員工加班費計算合同樣本4篇
- 中國末端執(zhí)行器(靈巧手)行業(yè)市場發(fā)展態(tài)勢及前景戰(zhàn)略研判報告
- 北京離婚協議書(2篇)(2篇)
- Samsung三星SMARTCAMERANX2000(20-50mm)中文說明書200
- 2024年藥品質量信息管理制度(2篇)
- 2024年安徽省高考地理試卷真題(含答案逐題解析)
- 平面向量及其應用試題及答案
- 2024高考復習必背英語詞匯3500單詞
- 無人機應用平臺實施方案
- 2019年醫(yī)養(yǎng)結合項目商業(yè)計劃書
- 安全生產管理問題與對策探討
- 2024屆浙江寧波鎮(zhèn)海區(qū)中考生物全真模擬試題含解析
評論
0/150
提交評論