EDA課程設(shè)計基于FPGA的任意波形發(fā)生器_第1頁
EDA課程設(shè)計基于FPGA的任意波形發(fā)生器_第2頁
EDA課程設(shè)計基于FPGA的任意波形發(fā)生器_第3頁
EDA課程設(shè)計基于FPGA的任意波形發(fā)生器_第4頁
EDA課程設(shè)計基于FPGA的任意波形發(fā)生器_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、edaeda 課程設(shè)計課程設(shè)計 _基于基于 fpgafpga 的任意波形發(fā)生器的任意波形發(fā)生器 學(xué)院:學(xué)院: 通信與電子工程學(xué)院通信與電子工程學(xué)院 綜合實踐綜合實踐 i 摘 要 本文主要探索了應(yīng)用 fpga 靈活可重復(fù)編程和方便在系統(tǒng)重構(gòu)的特性,以 verilog hdl 為設(shè)計語言,運用 quarrtusii 軟件,將硬件功能以軟件設(shè)計來描 述,提高了產(chǎn)品的集成度,縮短開發(fā)周期。所設(shè)計的波形發(fā)生器可產(chǎn)生正弦波 (sina_wave) 、鋸齒波(swat_wave) 、矩形波(squr_wave) 、三角波 (trig_wave)四種信號,能夠?qū)崿F(xiàn)信號的轉(zhuǎn)換并且頻率可調(diào); 關(guān)鍵字關(guān)鍵字:任意波

2、形發(fā)生器 fpga verilog hdl quartusii 綜合實踐綜合實踐 ii abstract this paper explored the application of flexible and reprogrammable fpga and convenience features in the system reconfiguration to verilog hdl design language, the hardware functions to software design to describe and improve the integration of pro

3、ducts and shorten the development cycle. waveform generator designed to produce sine wave (sina_wave), ramp (swat_wave), rectangular wave (squr_wave), triangular wave (trig_wave) four signals, to achieve signal conversion and frequency adjustable; keywords:keywords: arbitrary waveform generator fpga

4、 verilog hdl quartusii 綜合實踐綜合實踐 iii 目錄 摘摘 要要.i i abstractabstract.iiii 目錄目錄.iiiiii 第第 1 1 章章 緒論緒論 .1 1 1.1 概述 .1 1.2 任意波形發(fā)生器的功能 .1 1.3 國內(nèi)外發(fā)展現(xiàn)狀 .2 第第 2 2 章章 波形發(fā)生器的基本理論波形發(fā)生器的基本理論.4 4 2.1 fpga 簡介 .4 4 2.2 verilog 語言簡介 .4 2.2.1 verilog 語言概述.4 2.2.2veriloghdl 基本結(jié)構(gòu) .5 2.3 quarrtusii 概述 .6 第第 3 3 章章 方案設(shè)計方案

5、設(shè)計.8 8 3.1 系統(tǒng)介紹.8 8 3.2 波形發(fā)生器各個模塊設(shè)計 .9 3.2.1 wave_gen 模塊 .9 3.2.2 波形數(shù)據(jù)存儲 rom 模塊 .9 第第 4 4 章章 波形發(fā)生器軟件仿真波形發(fā)生器軟件仿真.1111 4.1 設(shè)計平臺及仿真工具 .11 4.2 仿真過程 .11 結(jié)論結(jié)論.1414 附錄附錄.1616 綜合實踐綜合實踐 1 第 1 章 緒論 1.1 概述 波形發(fā)生器是一種常用的信號源,廣泛應(yīng)用于電子電路,自動控制系統(tǒng), 教學(xué)實驗等領(lǐng)域,目前使用出現(xiàn)了大量能夠產(chǎn)生多種波形且性能穩(wěn)定的任 意波形發(fā)生器,但大多數(shù)方案都是基于串行或并行總線進行數(shù)據(jù)的傳輸, 這種方案雖然

6、成本較低,但系統(tǒng)的實時性較差,難以滿足復(fù)雜波形的大數(shù) 據(jù)量的傳輸要求。我們設(shè)計了一種基于 fpga 芯片的任意波形發(fā)生器,充 分利用了 fpga 強大的邏輯功能,實現(xiàn)了利用單片 fpga 芯片控制整個系 統(tǒng)的方案。 1.2 任意波形發(fā)生器的功能 任意波形發(fā)生器既具有其他信號源的信號生成能力,又可以通過各種編輯 手段生成任意的波形采樣數(shù)據(jù),方便地合成其他信號源所不能生成的任意波形, 從而滿足測試和仿真實驗的要求。任意波形發(fā)生器的主要功能包括: (1)函數(shù)發(fā)生功能 基礎(chǔ)實驗中,為了驗證電路功能、穩(wěn)定性和可靠性,需要給它施加理想 波形,任意波形發(fā)生器能替代函數(shù)發(fā)生器提供正弦波、方波、三角波、鋸齒波

7、等波形,還具有各種調(diào)制和掃頻能力。利用任意波形發(fā)生器的這一基礎(chǔ)功能就 能滿足一般實驗的信號需求。 (2)任意波形生成 運行在實際電子環(huán)境中的設(shè)備,由于各種干擾的存在以及環(huán)境的變化,實際 電路中往往存在各種信號缺陷和瞬變信號,例如過脈沖、尖峰、阻尼瞬變、頻 率突變等。任意波形發(fā)生器可以模擬這些特殊信號,以測試系統(tǒng)的實際性能。 (3)信號還原功能 在一些軍事、航空等領(lǐng)域,有些電路運行環(huán)境很難估計,在設(shè)計完成之后, 在現(xiàn)實環(huán)境中還需要更進一步的實驗驗證,而有些實驗的成本很高或者風(fēng)險性 很大(如飛機試飛時發(fā)動機的運行情況) ,人們不可能重復(fù)作實驗來判斷所設(shè)計 綜合實踐綜合實踐 2 產(chǎn)品的可行性和穩(wěn)定性

8、。此時,可以利用任意波形發(fā)生器的信號還原功能。在 做一些高耗費、高風(fēng)險實驗時,可以通過數(shù)字示波器把實際中用到的實際波形 記錄下來,再通過計算機接口下載到任意波形發(fā)生器,通過任意波形發(fā)生器還 原實驗中的實際波形并加到設(shè)計電路中,做進一步的實驗驗證工作。 1.3 國內(nèi)外發(fā)展現(xiàn)狀 采用可變時鐘和計數(shù)器尋址波形存儲器的任意波形發(fā)生器在一段時期內(nèi)曾 得到廣泛的應(yīng)用,其取樣時鐘頻率較高且可調(diào)節(jié),但其對硬件要求比較高,需 要高性能的鎖相環(huán)和截止頻率可調(diào)的低通濾波器(或者多個低通濾波器) ,且頻 率分辨率低,頻率切換速度較慢,已經(jīng)逐步退出市場。 目前市場上的任意波形發(fā)生器主要采用直接數(shù)字合成(direct d

9、igital synthesuzer,dds)技術(shù),這種波形發(fā)生器不僅可以產(chǎn)生可變頻的載頻信號、 各種調(diào)制信號,同時還能和計算機配合產(chǎn)生用戶自定義的有限帶寬的任意信號, 可以為多種領(lǐng)域的測試提供寬帶寬、高分辨率的測試信號1。 任意波形發(fā)生器發(fā)展到今天,從產(chǎn)品結(jié)構(gòu)形式來劃分,主要包含三種: (1)獨立儀器結(jié)構(gòu)形式 獨立儀器結(jié)構(gòu)形式是把任意波形發(fā)生器設(shè)計成單臺儀器的形式,其優(yōu) 點是精度高,可獨立工作。 (2)pc 總線式 pc(personal computer)總線式是將任意波形發(fā)生器板卡直接插在 pc 機 的總線擴展槽或通過外部接口連接到 pc 總線上,利用 pc 機來控制任意波形發(fā) 生器的工

10、作狀態(tài),其優(yōu)點是可以充分利用 pc 機的軟硬件資源,在波形數(shù)據(jù)處理、 波形參數(shù)修改方面,計算機有明顯的優(yōu)勢。 (3)vxi 模塊式 vxi 模塊是一種新型的模塊化儀器,它必須插在 vxi 總線機箱上才能使用, vxi 總線機箱通過 gpib 或者 rs-232c 等接口與計算機相連,vxi 模塊儀器對組 成自動測試系統(tǒng)特別有用,各個公司的 vxi 卡式儀器模塊可以自由組合使用。 從發(fā)展?fàn)顩r來看,國外任意波形發(fā)生器的研制及生產(chǎn)技術(shù)已經(jīng)較為成熟。 以安捷倫(agilent)和泰克(tektronix)為代表的國際電子測量儀器公司在 此領(lǐng)域進行了卓有成效的研究和開發(fā),其產(chǎn)品無論在技術(shù)上還是市場占有率

11、方 面在國際上都享有盛譽,但其價格也是相當(dāng)昂貴,高端型號每臺價格都在幾萬 美金左右,低端的也要幾萬人民幣。tektronix 公司的獨立結(jié)構(gòu)任意波形發(fā)生 器 afg3000 系列功能完善,人機界面友好,操作方便,可以以多種方式連接到 pc 機上,其最高采樣率能達到 2gs/s,輸出信號最高頻率為 240mhz,任意波頻 綜合實踐綜合實踐 3 率 50mhz,并配備的強大的波形編輯軟件 arbexpress,用戶可以方面地創(chuàng)建和 編輯自己的波形。agilent 公司的 pxi 模塊任意波形發(fā)生器采樣率已經(jīng)能達到 1.25gs/s,最高輸出頻率 500mhz。我國研制任意波形發(fā)生器是從上世紀(jì) 90

12、 年 代開始的,近年來有一批本土廠商奮起直追,并取得了可喜的成果。例如南京 盛普科技電子有限公司的 spf120 型信號發(fā)生器的主波輸出頻率達到了 120mhz,任意波最高頻率為 100khz;北京普源精電科技有限公司(rigol)生 產(chǎn)的 dg1000/2000/3000 系列任意波形發(fā)生器,在性能上已經(jīng)大略相當(dāng)于國外中 低端產(chǎn)品。 以 fpga 自身資源為基礎(chǔ),制作一個簡易綜合電子實驗儀,具有信號源、測 量儀表等功能。 綜合實踐綜合實踐 4 第 2 章波形發(fā)生器的基本理論 2.1 fpga 簡介 fpga 由可編程邏輯單元陣列、布線資源和可編程的io 單元陣列構(gòu)成, 一個 fpga 包含豐

13、富的邏輯門、寄存器和 io 資源。一片 fpga 芯片就可以 實現(xiàn)數(shù)百片甚至更多個標(biāo)準(zhǔn)數(shù)字集成電路所實現(xiàn)的系統(tǒng)。 fpga 的結(jié)構(gòu)靈活,其邏輯單元、可編程內(nèi)部連線和io 單元都可以由 用戶編程,可以實現(xiàn)任何邏輯功能,滿足各種設(shè)計需求。其速度快,功耗低, 通用性強,特別適用于復(fù)雜系統(tǒng)的設(shè)計。使用fpga 還可以實現(xiàn)動態(tài)配置、 在線系統(tǒng)重構(gòu)(可以在系統(tǒng)運行的不同時刻,按需要改變電路的功能,使系 統(tǒng)具備多種空間相關(guān)或時間相關(guān)的任務(wù))及硬件軟化、軟件硬化等功能。 鑒于高頻疲勞試驗機控制器控制規(guī)模比較大,功能復(fù)雜,故我們在研制過 程中,在傳統(tǒng)試驗機控制器的基礎(chǔ)上,通過fpga 技術(shù)及微機技術(shù)兩者的結(jié) 合

14、,來全面提升控制器系統(tǒng)的性能,使整機的工作效率、控制精度和電氣系 統(tǒng)可靠性得到了提高,且操作方便而又不乏技術(shù)的先進性。 2.2 verilog 語言簡介 2.2.1 verilog 語言概述 verilog hdl 是一種硬件描述語言 (hardware description language),為 了制作數(shù)字電路而用來描述 asics 和 fpga 的設(shè)計之用 2。verilog hdl 可以用來進行各種層次的邏輯設(shè)計,也可以進行 數(shù)字系統(tǒng)的邏輯綜合,仿 真驗證和時序分析 ,verilog hdl 進行設(shè)計最大的優(yōu)點是其工藝無關(guān)性這 使得工程師在功能設(shè)計,邏輯驗證階段可以不必過多考慮門級及

15、工藝實現(xiàn)的 具體細節(jié),只需根據(jù)系統(tǒng)設(shè)計的要求施加不同的約束條件,即可設(shè)計出實際 電路 verilog 是由 en:gateway design automation 公司于大約 1984 年開始發(fā) 展。gateway design automation 公司后來被 cadence design systems 于 1990 年所購并?,F(xiàn)在 cadence 對于 gateway 公司的 verilog 和 綜合實踐綜合實踐 5 verilog-xl 模擬器擁有全部的財產(chǎn)權(quán)。 2.2.2veriloghdl 基本結(jié)構(gòu) (1)基本邏輯門,例如 and 、or 和 nand 等都內(nèi)置在語言中。 (2)

16、 用戶定義原語( udp )創(chuàng)建的靈活性。用戶定義的原語既可以是 組合邏輯 原語,也可以是時序邏輯原語。 (3)開關(guān)級基本結(jié)構(gòu)模型,例如 pmos 和 nmos 等也被內(nèi)置在語言中。 (4)提供顯式語言結(jié)構(gòu)指定設(shè)計中的端口到端口的時延及路徑時延和設(shè)計 的時序檢查。 (5) 可采用三種不同方式或混合方式對設(shè)計建模。這些方式包括: 行為 描述方式 使用過程化結(jié)構(gòu)建模;數(shù)據(jù)流方式 使用連續(xù)賦值語句方式建 模;結(jié)構(gòu)化方式 使用門和模塊實例語句描述建模。 * verilog hdl 中有兩類數(shù)據(jù)類型:線網(wǎng)數(shù)據(jù)類型和寄存器數(shù)據(jù)類型。線 網(wǎng)類型表 示構(gòu)件間的物理連線,而寄存器類型表示抽象的數(shù)據(jù)存儲元件。 *

17、 能夠描述層次設(shè)計,可使用模塊實例結(jié)構(gòu)描述任何層次。 * 設(shè)計的規(guī)模可以是任意的;語言不對設(shè)計的規(guī)模(大?。┦┘尤魏蜗拗?。 * verilog hdl 不再是某些公司的專有語言而是 ieee 標(biāo)準(zhǔn)。 * 人和機器都可閱讀 verilog 語言,因此它可作為 eda 的工具和設(shè)計者 之間的交 互語言。 * verilog hdl 語言的描述能力能夠通過使用編程語言接口( pli )機制 進一步擴展。 pli 是允許外部函數(shù)訪問 verilog 模塊內(nèi)信息、允許設(shè)計者與模 擬器交互的例 程集合。 * 設(shè)計能夠在多個層次上加以描述,從開關(guān)級、門級、寄存器傳送級( rtl )到算法級,包括進程和隊列級

18、。 * 能夠使用內(nèi)置開關(guān)級原語在開關(guān)級對設(shè)計完整建模。 綜合實踐綜合實踐 6 * 同一語言可用于生成模擬激勵和指定測試的驗證約束條件,例如輸入值 的指定。 * verilog hdl 能夠監(jiān)控模擬驗證的執(zhí)行,即模擬驗證執(zhí)行過程中設(shè)計的 值能夠被監(jiān)控 和顯示。這些值也能夠用于與期望值比較,在不匹配的情況下, 打印報告消息。 * 在行為級描述中, verilog hdl 不僅能夠在 rtl 級上進行設(shè)計描述, 而且能夠在體 系結(jié)構(gòu)級描述及其算法級行為上進行設(shè)計描述。 * 能夠使用門和模塊實例化語句在結(jié)構(gòu)級進行結(jié)構(gòu)描述。 * verilog hdl 的混合方式建模能力,即在一個設(shè)計中每個模塊均可以在

19、 不同設(shè)計層次 上建模。 * verilog hdl 還具有內(nèi)置邏輯函數(shù),例如 output8:0address; /輸出控制 rom 的地址 inputinclk; /系統(tǒng)始終,時間應(yīng)該保證 d/a 能轉(zhuǎn)換完畢 input1:0select; /波形選擇,具體值代表的波形見下面定義 input3:0freq; /控制輸出波形的頻率 reg7:0qout; reg8:0address; reg7:0k,m; parametersina_wave=2b00,swat_wave=2b01, squr_wave=2b10,trig_wave=2b11; always (posedge inclk)

20、begin case(select) sina_wave:begin if(select=1) address=128; if(select=2) address=256; if(select=3) address=127) address=0; else address=address+1; end else begin k=127/freq; m=m) address=0; else address=address+freq; end end swat_wave:begin if(select=0) address=0; if(select=2) address=256; if(select=3) address=384; if

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論