freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

大學(xué)學(xué)士學(xué)位論文基于dds的數(shù)字移相信號(hào)發(fā)生器-資料下載頁(yè)

2025-07-27 03:55本頁(yè)面
  

【正文】 B PORT MAP(DOUT=D32B,DIN=DIN32B,LOAD=CLK)。u3:SIN_ROM PORT MAP(address=SIN10B,q=FOUT,inclock=CLK)。u4:ADDER10B PORT MAP(A=P10B,B=D32B(31 DOWNTO 22),S=LIN10B)。u5:REG10B PORT MAP(DOUT=SIN10B,DIN=LIN10B,LOAD=CLK)。u6:SIN_ROM PORT MAP(address=D32B(31DOWNTO22),q=POUT,inclock= CLK)。END。 頂層文件能夠使FPGA芯片完成正弦信號(hào)發(fā)生器的功能。其中數(shù)據(jù)輸入線FWORD[7…0]和PWORD[7…0]分別用于提供波形發(fā)生器的頻率控制字和初相控制字。數(shù)據(jù)輸出線POUT[9...0]和FOUT[9...0]分別輸出參考信號(hào)和移相正弦信號(hào)。CLK為系統(tǒng)時(shí)鐘信號(hào)。 FPGA的模塊從圖 41 中可以看出,相位累加器由32位全加器ADDER32B和32位寄存器REG32B級(jí)聯(lián)而成,對(duì)8位頻率控制字FWORD[7...0]進(jìn)行累加運(yùn)算,是典型的反饋電路。在每個(gè)系統(tǒng)時(shí)鐘CLK上升沿的控制下,32位加法器將頻率控制字FWORD[7...0]與累加寄存器輸出的相位數(shù)據(jù)相加,把相加后的結(jié)果再送至累加寄存器。累加寄存器中新的相位數(shù)據(jù)既反饋到前一級(jí)加法器的輸入端,以使加法器在下一個(gè)CLK時(shí)鐘周期中繼續(xù)與頻率控制字相加,同時(shí)累加寄存器將相位數(shù)據(jù)輸出到下一級(jí)加法器,以便與8位初相控制字PWORD[7...0]相加。最終下一級(jí)加法器將相加結(jié)果的10位數(shù)據(jù)LIN10B送到寄存器REG10B之中,REG10B的輸出SIN10B作為查詢ROM表取樣數(shù)據(jù)的地址值輸出。ADDER32B、ADDER10B、REG32B以及REG10B的程序設(shè)計(jì)、模塊和時(shí)序仿真分別如下所示:LIBRARY IEEE。32位加法器USE 。USE 。ENTITY ADDER32B IS PORT(A:IN STD_LOGIC_VECTOR(31 DOWNTO 0)。 B:IN STD_LOGIC_VECTOR(31 DOWNTO 0)。 S:OUT STD_LOGIC_VECTOR(31 DOWNTO 0))。END ADDER32B。ARCHITECTURE behav OF ADDER32B ISBEGINS=A+B。END behav。圖 42 32位加法器的模塊圖 43 32位加法器的時(shí)序仿真LIBRARY IEEE。10位加法器USE 。USE 。ENTITY ADDER10B IS PORT(A:IN STD_LOGIC_VECTOR(9 DOWNTO 0)。 B:IN STD_LOGIC_VECTOR(9 DOWNTO 0)。 S:OUT STD_LOGIC_VECTOR(9 DOWNTO 0))。END ADDER10B。ARCHITECTURE behav OF ADDER10B ISBEGINS=A+B。END behav。圖 44 10位加法器的模塊圖 45 10位加法器的時(shí)序仿真 ADDER32B與ADDER10B有相同的工作原理。加法器是為了實(shí)現(xiàn)加法的。即是產(chǎn)生數(shù)的和的裝置。加數(shù)和被加數(shù)為輸入,和數(shù)與進(jìn)位為輸出的裝置為半加器。若加數(shù)、被加數(shù)與低位的進(jìn)位數(shù)為輸入,而和數(shù)與進(jìn)位為輸出則為全加器。常用作計(jì)算機(jī)算術(shù)邏輯部件,執(zhí)行邏輯操作、移位與指令調(diào)用。在此系統(tǒng)中,加法器與鎖存器組成相位累加器。由圖 43和圖 45所示,ADDER32B與ADDER10B能夠?qū)崿F(xiàn)A+B=S,滿足設(shè)計(jì)的要求。LIBRARY IEEE。32位鎖存器USE 。ENTITY REG32B ISPORT (LOAD:IN STD_LOGIC。 DIN:IN STD_LOGIC_VECTOR(31 DOWNTO 0)。 DOUT:OUT STD_LOGIC_VECTOR(31 DOWNTO 0))。END REG32B。ARCHITECTURE behav OF REG32B ISBEGIN PROCESS(LOAD,DIN) BEGIN IF LOAD39。EVENT AND LOAD=39。139。 THEN DOUT=DIN。 END IF。 END PROCESS。END behav。圖 46 32位鎖存器的模塊圖 47 32位鎖存器的時(shí)序仿真LIBRARY IEEE。10位鎖存器USE 。ENTITY REG10B ISPORT (LOAD:IN STD_LOGIC。 DIN:IN STD_LOGIC_VECTOR(9 DOWNTO 0)。 DOUT:OUT STD_LOGIC_VECTOR(9 DOWNTO 0))。END REG10B。ARCHITECTURE behav OF REG10B ISBEGIN PROCESS(LOAD,DIN) BEGIN IF LOAD39。EVENT AND LOAD=39。139。 THEN DOUT=DIN。 END IF。 END PROCESS。END behav。圖 48 10位鎖存器的模塊圖 49 10位鎖存器的時(shí)序仿真REG10B與REG32B有相同的工作原理。鎖存器是一種對(duì)脈沖電平敏感的存儲(chǔ)單元電路,它們可以在特定輸入脈沖電平作用下改變狀態(tài),輸出端的狀態(tài)不會(huì)隨輸入端的狀態(tài)變化而變化,只有在有鎖存信號(hào)時(shí)輸入的狀態(tài)被保存到輸出,直到下一個(gè)鎖存信號(hào)。通常只有0和1兩個(gè)值。典型的邏輯電路是D觸發(fā)器。由若干個(gè)鐘控D觸發(fā)器構(gòu)成的一次能存儲(chǔ)多位二進(jìn)制代碼的時(shí)序邏輯電路,叫鎖存器件。如圖 47和圖49所示,REG10B與REG32B能夠?qū)崿F(xiàn)鎖存功能。 ROM表中包含了產(chǎn)生波形需要的幅值序列,是產(chǎn)生波形的核心模塊。ROM表的設(shè)計(jì)方式有2種。第一種是連續(xù)型的,第二種是間隔型的。不同的ROM表結(jié)構(gòu)需要采用不同的查表方式,所以ROM表的設(shè)計(jì)方式?jīng)Q定了相位累加器的構(gòu)成。本設(shè)計(jì)采用了連續(xù)式的存儲(chǔ)方式,并存儲(chǔ)了產(chǎn)生正弦波數(shù)據(jù)[18]。表 41 采用連續(xù)式的設(shè)計(jì)W11W12W13……W21W22W23……表 42 采用間隔式的設(shè)計(jì)W11W21W12W22W13W23……其中W11表示第一種波形的第一個(gè)相位幅值地址,W12表示第一種波形的第二個(gè)相位幅值地址。W2表示第2種波形。第一種設(shè)計(jì)采用連續(xù)方式:在波形ROM表中先連續(xù)存放第一種波形對(duì)應(yīng)相位的所有幅值數(shù)據(jù),然后接下來(lái)是第二種波形的所有幅值數(shù)據(jù),依此類推。二種設(shè)計(jì)采用的是間隔式的方式:在波形ROM表中首先存放的是所有波形第一個(gè)相位的幅值數(shù)據(jù),然后是所有波形第二個(gè)相位的幅值數(shù)據(jù),依此類推。第二種方法采用間隔式存儲(chǔ),不能連續(xù)讀取某種波形的相位。要獲得某種波形的連續(xù)相位。只需在第一種的基礎(chǔ)上乘以2(左移1位),第1種波形的第N個(gè)相位為:2N,第二種波形的第N個(gè)相位地址表示為:2N+1。正弦信號(hào)數(shù)據(jù)ROM查詢表是用MATLAB以及QuartusⅡ共同實(shí)現(xiàn)的。,用MATLAB將這1024個(gè)點(diǎn)的取值乘以500,加500,取整,算出每個(gè)點(diǎn)對(duì)應(yīng)的取值。Ⅱ中選擇ROM數(shù)據(jù)文件編輯窗口,即在File菜單中選擇New,并在New窗中選擇Other files頁(yè),再選擇Memory Initialization File項(xiàng)。產(chǎn)生ROM數(shù)據(jù)文件大小選擇窗口。根據(jù)本系統(tǒng)的SIN_ROM10地址線、10數(shù)據(jù)線的情況,可選ROM的數(shù)據(jù)數(shù)Number為1024,數(shù)據(jù)寬度Word size取10位。然后將出現(xiàn)空的mif數(shù)據(jù)表格,將(1)中MATLAB生成的1024個(gè)整數(shù)值粘貼到表格中即可。Ⅱ中的MegaWizard PlugIn Manager制定正弦信號(hào)數(shù)據(jù)ROM宏功能塊,并將以上的波形數(shù)據(jù)加載于此ROM中。這樣本系統(tǒng)所需要的正弦信號(hào)數(shù)據(jù)ROM查詢表就制作完成了。正弦信號(hào)數(shù)據(jù)ROM查詢表的模塊如圖 410 所示。圖 410 正弦信號(hào)數(shù)據(jù)ROM查詢表的模塊 FPGA的編輯及下載利用硬件描述語(yǔ)言完成電路設(shè)計(jì)后,必須借助于EDA工具中的綜合器、適配器、時(shí)序仿真器和編程器等工具進(jìn)行相應(yīng)的處理,才能使此項(xiàng)設(shè)計(jì)在FPGA上完成硬件實(shí)現(xiàn)并得到硬件測(cè)試。FPGA的硬件實(shí)現(xiàn)過(guò)程如下:1)打開(kāi)建立新工程管理窗口。選擇File→New Preject Wizard命令,即彈出工程對(duì)話框,單擊此對(duì)話框最上一欄右側(cè)的“…”找到文件夾,,再單擊“開(kāi)始”按鈕。2)將設(shè)計(jì)文件加入工程中。單擊下方的NEXT按鈕,在彈出的對(duì)話框中單擊File欄的按鈕,單擊“Add…”按鈕,從工程目錄中選擇相關(guān)的VHDL文件。3)選擇目標(biāo)芯片。單擊NEXT按鈕,在Family欄選芯片系列,在此選擇Cyclone系列,具體芯片選擇EP2C20Q240C8,在Pin count欄選擇240。編譯前首先選擇Processing菜單的Start Compilation項(xiàng),啟動(dòng)全程編譯,如果工程中的文件有錯(cuò)誤,啟動(dòng)編譯后在下方的Processing處理欄中會(huì)顯示出來(lái),改正錯(cuò)誤,再次編譯直至排除所有錯(cuò)誤。1)通過(guò)查閱附錄有關(guān)芯片引腳對(duì)照表,確定引腳。2)選擇Assignments菜單中的Assignment Editor項(xiàng),進(jìn)入編輯窗口,在Category欄中選擇Pin。3)雙擊“TO”欄的《new》,在出現(xiàn)的下拉欄中分別選擇本工程要鎖定的端口信號(hào)名;然后雙擊對(duì)應(yīng)的Location欄的《new》,在出現(xiàn)的下拉欄中選擇對(duì)應(yīng)端口信號(hào)名的器件引腳。4)最后存儲(chǔ)這些引腳鎖定的信息后,必須再編譯一次,才能將引腳鎖定信息編譯進(jìn)編程下載文件中。1)打開(kāi)編成窗和配置文件。首先將試驗(yàn)系統(tǒng)和并口通信線連好,打開(kāi)電源。在編程模式Mode中選JTAG,并選中打勾下載文件右側(cè)的第一小方框。2)設(shè)置編程器。單擊Hardware Setup按鈕,在彈出的對(duì)話框中選擇Hardware Settings頁(yè),再雙此頁(yè)中的選項(xiàng),之后單擊Close即可。3)單擊下載標(biāo)符Start按鈕,即進(jìn)入對(duì)目標(biāo)器件FPGA的配置下載操作。當(dāng)Progress顯示出100%,以及在底部的處理欄中出現(xiàn)“Configuration Succeeded”時(shí),表示編程成功[19]。 系統(tǒng)的測(cè)試在系統(tǒng)的硬件和軟件完成以后,我們需要進(jìn)行測(cè)試來(lái)了解系統(tǒng)的工作情況。系統(tǒng)的測(cè)試可分為時(shí)序仿真,嵌入式邏輯分析儀的使用和硬件的測(cè)試。 時(shí)序仿真對(duì)工程編譯完成后,必須對(duì)其功能和時(shí)序性質(zhì)進(jìn)行仿真測(cè)試,以了解設(shè)計(jì)結(jié)果是否滿足原設(shè)計(jì)要求。將程序編譯好后,進(jìn)入仿真功能模式下,將時(shí)鐘信號(hào)和輸入信號(hào)設(shè)置好,然后觀察輸出的波形,輸出的波形為數(shù)字量的形式的輸出。本系統(tǒng)的時(shí)序仿真波形如圖 411 所示。圖411 時(shí)序仿真的波形圖由圖411所示,在控制時(shí)鐘CLK、頻率控制字FWORD和相位控制字PWORD的共同作用下,F(xiàn)OUT和POUT輸出波形。輸入的頻率控制量為5,相位控制字為3,輸出的數(shù)字量符合ROM數(shù)據(jù)查詢表的地址所對(duì)應(yīng)的數(shù)據(jù)。 嵌入式邏輯分析儀的使用隨著邏輯設(shè)計(jì)復(fù)雜性的不斷增加,僅依賴于軟件方式的仿真測(cè)試來(lái)了解設(shè)計(jì)系統(tǒng)的硬件功能已遠(yuǎn)遠(yuǎn)不夠了,而需要重復(fù)進(jìn)行的硬件系統(tǒng)的測(cè)試也變的更為困難。為了解決這些問(wèn)題,設(shè)計(jì)者可以一種高效的硬件測(cè)試手段和傳統(tǒng)的系統(tǒng)測(cè)試方法相結(jié)合。這就是嵌入式邏輯分析儀的使用。它可以隨設(shè)計(jì)文件一并下載于目標(biāo)芯片中,用以撲捉目標(biāo)芯片內(nèi)部信號(hào)節(jié)點(diǎn)處的信息,而又不影響原硬件系統(tǒng)的正常工作。這就是QuartusⅡ中SignalTapⅡ的目的。在實(shí)際檢測(cè)中,SignalTapⅡ?qū)y(cè)得的樣本信號(hào)暫存于目標(biāo)器件的嵌入式RAM(如ESB、M4K)中,然后通過(guò)器件的JTAG端口將才得的信息傳出,送入計(jì)算機(jī)進(jìn)行顯示和分析。嵌入式邏輯分析儀SignalTapⅡ允許對(duì)設(shè)計(jì)中的所有層次的模塊的信號(hào)節(jié)點(diǎn)進(jìn)行測(cè)試,可以使用多時(shí)鐘驅(qū)動(dòng),而且還能通過(guò)設(shè)置以確定前后觸發(fā)撲捉信號(hào)信息的比例 [20]。本系統(tǒng)僅使用嵌入式邏輯分析儀測(cè)試FPGA輸出端口的數(shù)據(jù)是否正確,可以通過(guò)調(diào)試將輸出的數(shù)字量用連續(xù)正弦波來(lái)表示。測(cè)試得到的波形如圖 412 所示。圖412 嵌入式邏輯分析儀測(cè)試的結(jié)果圖412中顯示的是輸出的正弦波波形??梢钥闯霾ㄐ螡M足了正弦波的波形要求,沒(méi)有產(chǎn)生失真。其中POUT為原始的信號(hào),POUT為移相后的信號(hào),可以明顯的看出輸出的相位產(chǎn)生了變化。實(shí)現(xiàn)了信號(hào)移相的功能。 硬件的測(cè)試硬件的測(cè)試是在將系統(tǒng)的所有硬件全部連接好后的測(cè)試,測(cè)試的結(jié)果應(yīng)為系統(tǒng)最終能否合格的根本標(biāo)準(zhǔn)。硬件測(cè)試時(shí),使用的是示波器,其圖形如圖 413 所示。圖413顯示的波形是硬件測(cè)試的輸出,其顯示的是移相后的波形輸出。輸出的波形沒(méi)有明顯的失真,其頻率控制字為1,相位控制字為8,,基本滿足了信號(hào)發(fā)生器的輸出要求。 本章小結(jié)本章了闡述FPGA芯片內(nèi)部的程序結(jié)構(gòu)、功能和各個(gè)模塊的產(chǎn)生方法以及FPGA芯片的應(yīng)用,即如何將設(shè)置好的模塊和功能應(yīng)用FPGA芯片實(shí)現(xiàn)。最后使用了FPGA芯片的一些測(cè)試方法,將設(shè)計(jì)好的數(shù)字移相信號(hào)發(fā)生器進(jìn)行了測(cè)試。測(cè)試結(jié)果表明,本系統(tǒng)基本符合設(shè)計(jì)的要求。圖413 示波器顯示的測(cè)試結(jié)果千萬(wàn)不要?jiǎng)h除行尾的分節(jié)符,此行不會(huì)被打印。“結(jié)論”以前的所有正文內(nèi)容都要編寫在此行之前。 51 結(jié)論本文是基于DDS的數(shù)字移相信號(hào)發(fā)生器的設(shè)計(jì)。從理論
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)教案相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1