




已閱讀5頁,還剩12頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
數字信號處理實驗報告實驗1 正弦信號發生器實驗2 AM系統學院:學院班級:學號:姓名: 2012.6.2實驗一 正弦信號發生器一、實驗儀器:PC機一臺,JQ-SOPC-2C35實驗箱一臺及輔助軟件(DSP Builder、Matlab/Simulink、Quartus II、Modelsim)。二、實驗目的:1.初步了解JQ-NIOS-2C35實驗箱的基本結構;2。學習和熟悉基于DSP Builder開發數字信號處理實驗的流程。三、實驗原理:正弦波是一種基本信號,任何復雜信號都可由許多頻率、幅度各不相同的正弦波復合而成。已知正弦波存在如下的關系: 由以上公式可知,正弦波存在周期性,本實驗就是根據正弦波的這一特性進行正弦波發生。在Altera DSP Builder庫中,有一名為Increment Decrement的模塊,根據參數設置的不同,Increment Decrement會不斷從0計數到設定值,然后清0,接著又從0開始計數。圖3-1顯示的是Increment Decrement的參數設置界面,以圖中參數為例,number of bits設置為6,即從0開始計數到26,然后清0,接著又從0開始計數。在LUT(Look Up Table)查找表模塊中事先存入一個周期的正弦波的抽樣值,利用Increment Decrement模塊不斷計數,根據計數值找到查找表的地址取出里面的值進行輸出,因為Increment Decrement模塊的輸出具有周期性,則從LUT的輸出也具有了周期性,這樣,就產生了正弦波。四、實驗步驟: 本實驗的操作步驟如下:1點擊桌面上的Matlab圖標,進入Matlab主界面,并將工作目錄設為Matlab安裝目錄下的work文件夾,如圖1所示:2點擊菜單欄中的File-New-Model,新建一個模型,在Matlab命令窗口中輸入simulink命令,調出simulink工具欄,如圖2所示: 3雙擊simulink工具欄中的Altera DSP Builder中的Arithmetic庫,找到Increment Decrement模塊,選中它并按住鼠標左鍵將其拖到新建的模型文件中。 4雙擊模型文件中的Increment Decrement模塊,打開模塊參數對話框,將Bus Type設為Signed Integer,number of bits設為6,保持其他參數不變,點擊【OK】按鈕確認。點擊模塊下面的文本,將其重命名為IncCount。 5雙擊simulink工具欄中的Altera DSP Builder中的Storage庫,找到LUT模塊,選中它并按住鼠標左鍵將其拖到新建的模型文件中。雙擊模型文件中的LUT模塊,打開模塊參數對話框,將Data Type設為Signed Integer,Address Width設為6,number of bits設為8,MATLAB Array設為127*sin( 0:2*pi/(26):2*pi )。保持其他參數不變,點擊【OK】按鈕確認。點擊模塊下面的文本,將其重命名為SinLut。 6雙擊simulink工具欄中的Altera DSP Builder中的Storage庫,找到Delay模塊,選中它并按住鼠標左鍵將其拖到新建的模型文件中。 7雙擊simulink工具欄中的Altera DSP Builder中的Arithmetic庫,找到其中的Product模塊,選中它并按住鼠標左鍵將其拖到新建的模型文件中,雙擊該模塊,打開模塊參數對話框,在Optional ports and settings中的Use LPM選項前打勾。保持其他參數不變,點擊【OK】按鈕確認。 8雙擊simulink工具欄中的Altera DSP Builder中的IO&Bus庫,找到其中的Input和Output模塊,選中它們并按住鼠標左鍵將其拖到新建的模型文件中,雙擊Input模塊,打開模塊參數設置界面,將Bus Type設為Single Bit,保持其他參數不變,點擊【OK】按鈕確認。雙擊Output模塊,打開模塊參數設置界面,Bus Type設為Signed Integer,number of bits設為8,保持其他參數不變,點擊【OK】按鈕確認。 9雙擊simulink工具欄中的Simulink中的Sinks庫,找到Scope模塊,選中它并按住鼠標左鍵將其拖到新建的模型文件中,雙擊Scope模塊,打開模塊參數設置界面,點擊菜單欄中的Parameters,將number of axes 設為2。點擊【OK】確認,關閉模塊參數設置界面。 10雙擊simulink工具欄中的Simulink中的Source庫,找到Step模塊,選中它并按住鼠標左鍵將其拖到新建的模型文件中,雙擊Step模塊,打開模塊參數界面,將Step time 設為50,Initial value設為50,Final time 設為1,Sample time 設為1。保持其他參數不變,點擊【OK】確認。 11連接模塊,連接后的模型如圖4所示:圖4 正弦發生器模型 12雙擊simulink工具欄中的Altera DSP Builder中的AltLab庫,找到其中的Signal Compiler和TestBenchOn模塊,選中它們并按住鼠標左鍵將其拖到新建的模型文件中,執行File-Save 保存文件,將其命名為sinwave.mdl。 13執行Simulation-Configuration Parameters,將solver設為discrete,Type設為Fixed-step,Stop Time設為500。 14點擊菜單欄中的黑色小三角,啟動simulation,simulation結束后,雙擊Scope模塊,打開波形觀察界面,在波形上點擊鼠標右鍵,選擇Autoscale,即可觀察simulation后的正弦波形。 15點擊TestBenchOn模塊,打開模塊參數界面,在Advanced選項卡中,點選Lauch GUI,并依次點擊Generate HDL,Run Simulink和Run Modelsim,啟動RTL級仿真。 16隨后顯示的界面即為Modelsim RTL級仿真的波形圖。選中tb_sinwave/dut/output信號,點擊鼠標右鍵,選中Propertyties選項,選擇Format為analog,將Height設為100,Scale設為0.4,點擊【OK】確認。 17在信號上點擊鼠標右鍵,選擇Zoom Full,即可看到RTL級仿真波形。 18點擊Signal Compiler模塊,打開參數設置頁面,器件系列選擇cylone II,點擊compile,結束后,關閉該頁面。 19點擊桌面上的 Quartus 圖標,執行File-New Project Wizard,創建新的工程,將工程路徑設置成模型文件所在路徑,對project命名為sinwave。 20點擊next,添加文件,將.tcl和.vhd文件添加進工程中,點擊next,在器件family中選擇Cyclone ,選擇下拉菜單中的EP2C35F672C6.,點擊finish。 21點擊菜單欄中的紫色小三角,對創建的文件進行編譯。 22編譯成功后執行File-New-Vector Waveform File,點擊【OK】確認。 23執行Edit-Insert-Time Node or Bus,在彈出的對話框中選擇Node Finder,再點擊List,從左邊彈出的管腳名中選擇Clock,aclr,Input和Output添加到右邊,點擊【OK】確認。 24選中aclr信號,選擇左邊工具欄的圖標,選中Input信號,同樣設為。通過執行菜單欄Edit-End Time設置仿真結束時間為1毫秒。選中Clock信號,點擊,將周期設為20,單位納秒,仿真結束時間為1毫秒,點擊【OK】確認。保存該文件,將其命名為sinwave。 25執行Assignmets-Settings,選擇Simulator Settings,Simulation mode選為Functional,在右邊的對話框中將保存的波形文件添加到Simulation Input中,點擊【OK】確認。執行菜單欄的Processing-Generate Functional Simulation Netlists進行功能仿真。 26執行菜單欄Assignmets-Settings,選擇Simulator Settings,Simulation mode選為Timing,在右邊的對話框中將保存的波形文件添加到Simulation Input中,點擊【OK】確認。點擊菜單工具欄中的圖標,對工程進行時序仿真。仿真完成后,選中Output信號,單擊鼠標右鍵,選擇Display Format中的Analog Waveform,若彈出對話框詢問是否覆蓋原文件,選擇Yes。再次選中Output信號,單擊鼠標右鍵,選擇Display Format中的Analog Waveform,將Display Style設為Step,Display Height設為4,點擊【OK】確認。即可觀察到時序仿真波形。 27執行Assignmets-Assignment Editor,將Category設為Pin,并按照下圖對Pin進行設置:圖5 管腳設置按照實驗箱中的用戶指南28頁中的圖4-5所示將aclr、Input分配給開關PIN_AE14,PIN_AF14,按照37頁圖4-8將Clock分配為PIN_N2管腳,按照52頁圖4-10將Output總管腳及其如Output0Output7的分管腳進行分配,并保存。 28執行Tools-SignalTap Logic Analyzer,在Data窗口中的空白處雙擊,在彈出的對話框中將Fiter設為all®isters:post fittings,點擊List,將Output添加至右邊的窗口中,點擊【OK】確認。29在右邊的對話框中將Clock設為Clock信號,Sample depth設為1K,點選Trigger in,Source設為Clock信號,Pattern設為Rising edge。保存,若彈出對話框詢問是否將文件添加至工程,選擇Yes。點擊菜單欄中的,重新對工程進行編譯。30打開實驗箱,接入電源,用USB Blaster線將電腦和實驗箱連接起來,選擇菜單欄中的圖標。31點擊Hardware Setup,選擇USB-0,點擊【OK】確認。選中sinwave.sof文件,點擊Start,將文件下載到實驗板上。在Signaltap II界面點擊Hardware右邊的Setup,將其設為USB-BlasterUSB-0。 32將實驗箱上的開關SW3和SW4撥至高電平,點擊工具欄的圖標,啟動數據采集,一段時間后點擊圖標停止數據采集,點擊SignalTap中的data窗口,即可看到硬件實現的波形。五、實驗結果:matlab Scope 波形:Modelsim RTL級仿真的波形:Quartus功能仿真時序仿真波形。硬件實現的波形實驗二 AM系統一、實驗儀器:PC機一臺,JQ-NIOS-2C35實驗箱一臺及輔助軟件(DSP Builder、Matlab/Simulink、Quartus II、Modelsim)二、實驗目的:1、初步了解JQ-NIOS-2C35實驗箱的基本結構。2、學習和熟悉基于DSP Builder開發數字信號處理實驗的流程。3、理解AM系統設計的原理和方法。3、 實驗原理: 在常規雙邊帶調幅中,輸出已調制的信號的包絡與輸入調制信號成正比,其時間波形可表達為: (4-11)式中,為外加的直流分量。為調制信號,它可以是確知信號,也可以是隨機信號,但通常認為平均值為0。為載波信號的頻率。為載波信號的起始相位。對于幅度調制信號,在波形上,它的幅度隨基帶信號規律而變化。 由于頻譜的搬移是線性的,因此幅度調制通常又稱為線性調制。四、實驗步驟: 本實驗的操作步驟如下:1、 點擊桌面上的Matlab圖標,進入Matlab主界面,并將工作目錄設為Matlab安裝目錄下的work文件夾。2、點擊菜單欄中的File-New-Model,新建一個模型,在Matlab命令窗口中輸入simulink命令,調出simulink工具欄,并執行File-Save 保存文件,將其命名為AM。 3、在Altera DSP Builder Blockset中的IO&Bus下選擇Altbus模塊將其添加到文件中。打開模塊參數對話框,將Bus Type設置為Signed Integer,number of Bits設置為16,然后單擊【OK】按鈕確認。4、在Altera DSP Builder Blockset中的Arithmetic下選擇Pipelined Adder模塊將其添加到文件中。設置Bus Type為Signed Integer;number of bits.為16;Number of Pipeline Stages為2。單擊【OK】確認。點擊模塊下文本,將其重命名為“Pipelined Adder3”。5、在Altera DSP Builder Blockset中的Storage下選擇Delay模塊將其添加到文件中。6、在Altera DSP Builder Blockset中的IO&Bus下選擇Bus conversion模塊將其添加到文件中。打開模塊對話框,將Bus Type設置為Signed Integer,Input設置為16,output設置為8,Input Bit Connected to Output LSB設置為8,然后點擊【OK】確認。7、在Altera DSP Builder Blockset中的Storage下選擇LUT模塊將其添加到文件中。將Data Type設置為Signed Integer;number of bits設置為8;LUT Address Width設置為8;MATLAB Array查找表中存儲數據的內容,設置為127*sin(0:2*pi/(28):2*pi),然后點擊【OK】確認。8、在Altera DSP Builder Blockset中的IO&Bus下選擇Constant模塊將其添加到文件中。打開模塊參數對話框,設置Constant Value為100;將Bus Type設置為Signed Integer;number of bits設置為8;其它參數設置保持不變,然后點擊【OK】確認。9、按照圖2-1連接模塊。10、將圖2-1的所有模塊選中,單擊鼠標右鍵,點擊Creat Subsystem,點擊子系統下文本,將其重命名為“DDS”。11、重復步驟3-10,將AltBus的number of Bits設置為32;Constant模塊的Constant Value為88234567,number of Bits設為32;Bus conversion的Input設置為32,output設置為10,Input Bit Connected to Output LSB設置為22;LUT模塊的Data Type設置為Signed Integer;number of bits設置為10;LUT Address Width設置為10;MATLAB Array查找表中存儲數據的內容,設置為511*sin(0:2*pi/(210):2*pi),同樣創建為子系統,然后點擊子系統的文本,將其命名為“DDS1”12(為后面準備)、在Altera DSP Builder Blockset中的IO&Bus下選擇Input添加到模型文件中。設置Bus Type為Unsigned Integer;設置number of bits.為3;勾選Specify Clock,并在Clock下寫入Clock;然后點擊【OK】確認。13(為后面準備)、在Altera DSP Builder Blockset中的IO&Bus下選擇Output添加到模型文件中。設置Bus Type為Signed Integer;設置number of bits.為10;其它參數設置不變;然后點擊【OK】確認。14、在Altera DSP Builder Blockset中的Gate&Control下選擇Multiplexer添加到模型文件中。將其Number of Input Data Lines設置為8,然后點擊【OK】確認。如圖2-2所示連接,并建立子系統。圖2-2 Mux子系統連接圖Constant5的設置如圖2-3所示。圖2-3 Constant5參數對話框Constant6Constant12的Constant Value分別為:0.79688,0.69922,0.59766,0.5,0.39844,0.19824,0.097656。其它設置如圖2-3保持不變。15、 在Altera DSP Builder Blockset中的Arithmetic下選擇兩個Product模塊添加到模型文件中分別命名為Product和Product1,bus type 設為Inferred。16、 在Altera DSP Builder Blockset中的IO&Bus下選擇兩個Constant模塊將其添加到文件中分別命名為Constant1和Constant2。打開模塊參數對話框,設置Constant1 Value為1;將Bus Type設置為Signed Integer;number of bits設置為8;其它參數設置保持不變,然后點擊【OK】確認,Constant2Value為1;將Bus Type設置為Signed Integer;number of bits設置為10;其它參數設置保持不變,然后點擊【OK】確認。17、在Altera DSP Builder Blockset中的Arithmetic下選擇兩個Pipelined Adder模塊將其添加到文件中分別命名為Pipelined Adder和Pipelined Adder1。對Pipelined Adder設置Bus Type為Signed Integer;number of bits.為8;Number of Pipeline Stages為2。單擊【OK】確認。對Pipelined Adder1設置Bus Type為Signed Integer;number of bits.為10;Number of Pipeline Stages為2。單擊【OK】確認。18、在Altera DSP Builder Blockset中的IO&Bus下選擇Bus conversion模塊將其添加到文件中。打開模塊對話框,將Bus Type設置為Signed Integer,Input設置為18,output設置為10,Input Bit Connected to Output LSB設置為8,然后點下面的文本,將其命名為“Bus conversion1”,然后點擊【OK】確認。19、在Altera DSP Builder Blockset中的Rate Change下選擇Clock模塊將其添加到文件中。將Simulink Sample Time設置為2e-8,其它參數保持不變,然后點擊【OK】確認。20、在Altera DSP Builder Blockset中的AltLab下選擇Signal Compiler模塊和TestBench模塊將其添加到文件中。21、在Simulink中的Sinks下選擇Scope模塊添加到文件中。22、在Simulink中的Sources下選擇Constant模塊添加到文件中。23、按照圖2-4連接AM系統。 24、執行Simulation-Configuration Parameters,將solver設為discrete,Type設為Fixed-step,Tasking mode for periodic sample times設為:Single Tasking,Stop Time設為1e-4。Fixed-steptime設為auto。 25、點擊菜單欄中的黑色小三角,啟動simulation,simulation結束后,雙擊Scope模塊,打開波形觀察界面,在波形上點擊鼠標右鍵,選擇Autoscale,即可觀察simulation后的幅度調制的仿真波形。 26、點擊Signal Compiler模塊,打開參數設置頁面,將器件family設置成Cylone II,點擊compile,結束后,關閉該頁面。 27、點擊TestBenchOn模塊,打開模塊參數界面,在Advanced選項卡中,點選Lauch GUI,并依次點擊Generate HDL,Run Simulink和Run Modelsim,啟動RTL級仿真。 28、隨后顯示的界面即為Modelsim RTL級仿真的波形圖。點擊wave-default中的unlock 按鈕選中tb_am/dut/output信號,點擊鼠標右鍵,選中Propertyties選項,選擇Format的Analog,將Height設為100,Scale設為0.2,點擊【OK】確認。 29、在信號上點擊鼠標右鍵,選擇Zoom Full,即可看到RTL級仿真波形。30、點擊桌面上的 Quartus 圖標,執行File-New Project Wizard,創建新的工程,將工程路徑設置成模型文件所在路徑,對project命名為AM。31、點擊next,將.tcl和.vhd文件添加至工程中,點擊next,在器件family中選擇Cyclone ,選擇下拉菜單中的EP2C35F672C6.,點擊Finish。32、點擊菜單欄中的紫色小三角,對創建的文件進行編譯。33、編譯成功后執行File-New-Vector Waveform File,點擊【OK】確認。34、執行Edit-Insert-Time Node or Bus,在彈出的對話框中選擇Node Finder,再點擊List,從左邊彈出的管腳名中選擇Clock,aclr,Input和Output添加到右邊,點擊【OK】確認。35、選中aclr信號,選擇左邊工具欄的圖標;選中Clock信號,點擊,將周期設置為20ns,然后對彈出的對話框點擊【OK】確認;同時在EditEnd Time設置為100us,點擊【OK】確認;右鍵選中信號Input,選擇property-radix為unsigned decimal;右鍵選中信號Input,選擇value-count value,start value 設為0,increcment by設為1,設置Timing選項點選at absolute times,count every 設為10us;最后保存該文件,將其命名為AM。36、執行Assignmets-Settings,選擇Simulator Settings,在右邊的對話框中將保存的波形文件添加到Simulation Input中,點擊【OK】確認。37、點擊菜單工具欄中的圖標,對工程進行時序仿真。仿真完成后,選中Output信號,單擊鼠標右鍵,選擇Display Format中的Analog Waveform,若彈出對話框詢問是否覆蓋原文件,選擇Yes。再次選中Output信號,單擊鼠標右鍵,選擇Display Format中的Analog Waveform,將Display Style設為Step,Display Height設為10,點擊【OK】確認。再次單擊鼠標右鍵在ZoomFit in Window,即可觀察到時序仿真波形。38、執行AssignmetsPin Planner,用Zoom Tool放大引腳分配圖,可以選擇需要分配的引腳,拖拽到對應引腳分配圖上。按照表2-1對引腳進行設置,并保存。 39、執行Assignmets-Assignment Editor,在To欄中雙擊空白格,在下拉菜單中
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 植物組織培養技術在植物生物材料加工中的應用前景報告
- 統計初級考試試題及答案
- 智能網聯汽車的市場前景試題及答案
- 社交媒體對家具設計的影響研究試題及答案
- 智能物流在農村電商中的應用試題及答案
- 班組長履職報告
- 泰安英語考編試題及答案
- 水利工程與土木的關系試題及答案
- 文化產業發展專項資金2025年申請與政策環境分析報告
- 礦洞游戲測試題及答案
- 網絡傳播法規(自考14339)復習必備題庫(含答案)
- Django 3 Web應用開發實戰(下篇)
- 學會感恩說課課件
- 大學生志愿服務西部計劃考試復習題庫(筆試、面試題)
- 《建筑制圖與識圖》課程標準
- 箱涵工程監理實施細則
- 公路養護的高級工復習題
- 三人合伙經營協議書 doc 三人合伙經營協議書實用版(六篇)
- JJF 1793-2020海水營養鹽測量儀校準規范
- GB/T 20080-2017液壓濾芯技術條件
- 超音速流動與燃燒的大渦模擬基礎課件
評論
0/150
提交評論