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

正文內(nèi)容

基于fpga的直接數(shù)字合成器設(shè)計畢業(yè)論文-資料下載頁

2025-06-18 17:10本頁面
  

【正文】 只要對相位的量化值進(jìn)行簡單的累加運算,就可以得到正弦信號的當(dāng)前相位值,而用于累加的相位增量量化值BΔθ決定了信號的輸出頻率fout,并呈現(xiàn)簡單的線性關(guān)系。因此,通過調(diào)節(jié)輸入時鐘頻率和位寬就可以合成出任意頻率的信號。直接數(shù)字頻率合成器DDS就是根據(jù)上述原理而設(shè)計的數(shù)字控制頻率合成器。本設(shè)計采用N=32,fclk=50MHZ,設(shè)計的分辨率約為3HZ。 系統(tǒng)的實現(xiàn)  用Quartus II設(shè)計DDS系統(tǒng)數(shù)字部分最簡單的方法是采用原理圖輸入。本設(shè)計的實現(xiàn)如圖41~46所示。圖41 FPGA芯片引腳分配圖42 Quartus II中FPGA芯片使用報告 圖43 FPGA芯片下載程序圖44設(shè)計產(chǎn)生的3KHZ正弦波圖45設(shè)計產(chǎn)生的6KHZ正弦波圖46設(shè)計產(chǎn)生的30KHZ正弦波35結(jié) 論結(jié) 論直接數(shù)字合成器是科研及工程實踐中最重要的儀器之一,以往多使用硬件組成,隨著信息技術(shù)高速發(fā)展,集成電路的大規(guī)模使用,電子系統(tǒng)已經(jīng)進(jìn)入了一個高速發(fā)展的全新時段。特別是EDA技術(shù)的日趨成熟的今天,通過計算機輔助設(shè)計,可以很好地完成電子設(shè)計的自動化。在設(shè)計過程中,可根據(jù)需要隨時改變器件的內(nèi)部邏輯功能和管腳的信號方式,EDA技術(shù)借助于大規(guī)模集成的FPGA/CPLD和高效的設(shè)計軟件,用戶不僅可通過直接對芯片結(jié)構(gòu)的設(shè)計實行多種數(shù)字邏輯系統(tǒng)功能,而且由于管腳定義的靈活性,大大減輕了電路圖設(shè)計和電路板設(shè)計的工作量及難度,同時,這種基于可編程芯片的設(shè)計大大減少了系統(tǒng)芯片的數(shù)量,縮小了系統(tǒng)的體積,提高了系統(tǒng)的可靠性?;贒DS的信號發(fā)生器是最為理想的信號產(chǎn)生模型,DDS系統(tǒng)有著其他信號發(fā)生器所無法比擬的優(yōu)勢。今天DDS廣泛用于接受機本振、信號發(fā)生器、儀器、通信系統(tǒng)、雷達(dá)系統(tǒng)等,尤其適合跳頻無線電通信系統(tǒng)。基于FPGA的直接數(shù)字合成器結(jié)合了的EDA技術(shù)和DDS理論,在EDA技術(shù)高速、高效、高可靠性的前提下得到了更優(yōu)的設(shè)計效果。但是系統(tǒng)的功能還沒有得到完全利用,由于DDS技術(shù)是利用查表法來產(chǎn)生波形的,則在基于FPGA設(shè)計時只要把ROM改成RAM變可實現(xiàn)任意波形的產(chǎn)生。本次設(shè)計在總體上符合設(shè)計要求,能較好的實現(xiàn)設(shè)計功能。其中也存在有不足之處。第一,在累加器設(shè)計中,沒有采用流水先設(shè)計。因而累加器系統(tǒng)工作頻率沒能得到提高,性能不夠優(yōu)越。第二,設(shè)計波形ROM是沒有很好地利用正弦信號的對稱性來設(shè)計波形數(shù)據(jù),對系統(tǒng)輸出信號的精度有一定的影響。第三,外圍電路的設(shè)計鍵盤輸入模塊,操作不夠直觀靈活。以上的幾點不足,自己希望在今后的再次設(shè)計中都能得到完善的彌補。33參考文獻(xiàn)參考文獻(xiàn)[1] 鄭鳳濤,2003,38(1):25~30.[2] 徐志軍,:電子工業(yè)出版社,2002.[3] 黃正謹(jǐn),:電子工業(yè)出版社,2002.[4] 韓素敏,2003,19(4):8~10.[5] 陳新原,2005,(2):24~26. [6] 畢紅軍,(DDS).現(xiàn)代電子技術(shù),2002,(11):91~93. [7] 姜萍,28(5):43~47. [8] 邵正途,2005,(1): 82~84.[9] 譚建軍,:中央民族大學(xué)出版社,2002.[10] 周正干,2000(1):9~11.[11] 周峻峰,2003,(1):4~6. [12] 宋躍,2002,(1):29~31.[13] 陳輝,2001(12):24~27.[14] Technical Tutorial On Digital Signal Synthesis,1999:2~8.[15] IEEE Direct Digital synthesizer with Improved spectral performance. on munication,1991,39(7):16~20.[16] 傅玉朋,李明浩, 2004,6(3):46~47. [17] (2001).北京:北京理工大學(xué)出版社,2003:1~40.[18] ,2004,42~43.[19] analysis of the output spectrum of Direct Digital Frequency Synthesizers in the presence of phase accumulator truncation,IEEE AFCS,1999:495~502.[20] :清華大學(xué)出版社,2003.35參考文獻(xiàn)[21] Vankka reduction techniques in sine output direct digital synthesis,IEEE AFCS,2001:951~959.[22] Altera corporation, 2001:24~31.[23] ,1820.[24] 鄒軼才,2005,(2):79~80.35致 謝致 謝值此畢業(yè)論文完成之際,首先衷心感謝指導(dǎo)老師劉新月老師。劉老師以其淵博的學(xué)識、豐富的經(jīng)驗在本課題的開題、研究過程及論文撰寫各個階段給予了我悉心的指導(dǎo)。劉老師是不怕苦不怕累的人,是對人熱情關(guān)心他人的人,是工作嚴(yán)禁、踏實的人,是我們終身學(xué)習(xí)的榜樣。在這里還要特別感謝班主任劉芬老師。大學(xué)五年劉老師給予我們關(guān)心,教我們做人的道理與做事的方法,她改變了我的一生。劉老師善良,友好,熱情,典型的一個普通而不平凡的人,她的精神是我終身的動力。感謝各位同學(xué)給予畢業(yè)設(shè)計的關(guān)心和幫助以及在生活中給我的幫助。36附 錄附錄1:DDS頂層模塊圖 附錄2:源程序清單module dds(clock,fword,pword,rom_addr)。input clock。 //輸入時鐘input[31:0]fword。 //輸入頻率字input[11:0]pword。 //輸入相位字output[7:0]rom_addr。 //輸D/A數(shù)據(jù) reg[31:0]fword_r。 reg[11:0] pword_r。 reg[31:0]freq_count。 //頻率相位累加器reg[7:0]rom_addr。 //正弦波數(shù)據(jù)表地址 always @(posedge clock) //同步鎖存頻率字、相位字begin fword_r = fword。 pword_r = pword。endalways @(posedge clock) //頻率相位累加器begin freq_count = freq_count + fword_r。endalways @(posedge clock) //相位調(diào)制器begin rom_addr = freq_count[31:24] + pword_r。endendmodulemodule int_div(clock,clk_out)。input clock。 //輸入時鐘output clk_out。 //輸出時鐘reg clk_p_r。 //上升沿輸出時鐘reg clk_n_r。 //下降沿輸出時鐘reg[F_DIV_WIDTH 1:0] count_p。 //上升沿脈沖計數(shù)器reg[F_DIV_WIDTH 1:0] count_n。 //下降沿脈沖計數(shù)器parameter F_DIV = 50000000。 //分頻系數(shù)parameter F_DIV_WIDTH = 32。 //分頻計數(shù)器寬度wire full_div_p。 //上升沿計數(shù)滿標(biāo)志wire half_div_p。 //上升沿計數(shù)半滿標(biāo)志wire full_div_n。 //下降沿計數(shù)滿標(biāo)志wire half_div_n。 //下降沿計數(shù)半滿標(biāo)志assign full_div_p = (count_p F_DIV 1)。assign half_div_p = (count_p (F_DIV1) 1)。assign full_div_n = (count_n F_DIV 1)。assign half_div_n = (count_n (F_DIV1) 1)。assign clk_out = (F_DIV == 1) ? clock : (F_DIV[0] ? (clk_p_r amp。 clk_n_r) : clk_p_r)。 //上升沿脈沖計數(shù)always @(posedge clock)begin if(full_div_p) begin count_p = count_p + 139。b1。 if(half_div_p) clk_p_r = 139。b0。 else clk_p_r = 139。b1。 end else begin count_p = 0。 clk_p_r = 139。b0。 end endalways @(negedge clock)begin if(full_div_n) begin count_n = count_n + 139。b1。 if(half_div_n) clk_n_r = 139。b0。 else clk_n_r = 139。b1。endelsebegin count_n = 0。 clk_n_r = 139。b0。endendendmodulemodule tlc5602(clk,data_in,da_clk,data_out)。input clk。input[7:0] data_in。 output[7:0] data_out。output da_clk。reg[7:0] data_out_r。reg da_clk_r。assign data_out=data_out_r。assign da_clk=clk。always @(posedge clk)begin data_out_r=data_in。endendmodulemodule dds_led(clock,key,da_data,seg,dig)。input clock。 //系統(tǒng)時鐘(50MHz)input[7:0] key。 //按鍵輸入(KEY1~KEY8)output[31:0] da_data。 //要發(fā)送的數(shù)據(jù)output[7:0] seg。 //數(shù)碼管段碼輸出output[7:0] dig。 //數(shù)碼管位碼輸出//I/O寄存器reg[31:0] da_xian。reg[31:0] da_data。reg[31:0] da_d。 reg[7:0] seg_r。 //定義數(shù)碼管輸出寄存器reg[7:0] dig_r。 //定義數(shù)碼管選擇輸出寄存器 //內(nèi)部寄存器reg[7:0]dout1,dout2,dout3,dout4,dout5,dout6,dout7,dout8。 //消抖寄存器reg[7:0]buff。 //邊沿檢測寄存器reg[2:0] t。 //數(shù)碼管掃描計數(shù)器 reg[7:0]disp_dat。 //數(shù)碼管掃描顯存 wire[7:0] key_edge。assign dig = dig_r。 //輸出數(shù)碼管選擇assign seg = seg_r。 //輸出數(shù)碼管譯碼結(jié)果//按鍵消抖部分always @(posedge clock)begin begin dout1 = key。 dout2 = dout1。 dout3 = dout2。 dout4 = dout3。 dout5 = dout4。 dout6 = dout5。 dout7 = dout6。 dout8 = dout7。 end end//按鍵邊沿檢測部分always @(posedge clock)begin buff = dout1 | dout2 | dout3 | dout4 | dout5 | dout6 | dout7 | dout8。endassign key_edge = ~(dout1 | dout2 | dout3 | dout4 | dout5 | dout6 | dout7 | dout8) amp。 buff。always @(posedge clock) //按鍵1begin if(key_edge[1]) //下降沿檢測 begin if(da_data[3:0] == 439。b1111) begin da_data[3:0] = 439。b0000。 da_data[7:4] = da_data[7:4]
點擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1