版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2023秋《可編程邏輯器件》課程設(shè)計(jì)報(bào)告報(bào)告題目:數(shù)字鐘實(shí)驗(yàn)報(bào)告姓名學(xué)號(hào)郵箱成績(jī)組長(zhǎng)成員?設(shè)計(jì)內(nèi)容概述功能概述:一個(gè)具有計(jì)秒、計(jì)分、復(fù)位的數(shù)字鐘,數(shù)字鐘從0開始計(jì)時(shí),計(jì)滿60秒后自動(dòng)清零,分鐘加1,最大計(jì)時(shí)顯示59分59秒。用A7按鍵作為系統(tǒng)時(shí)鐘復(fù)位,復(fù)位后所有顯示0000,重新開始計(jì)時(shí)。1.2輸入輸出接口:NET"clk"LOC="B8";NET"dula[0]"LOC="L14";NET"dula[1]"LOC="H12";NET"dula[2]"LOC="N14";NET"dula[3]"LOC="N11";NET"dula[4]"LOC="P12";NET"dula[5]"LOC="L13";NET"dula[6]"LOC="M12";NET"dula[7]"LOC="N13";NET"rst"LOC="A7";NET"wela[0]"LOC="F12";NET"wela[1]"LOC="J12";NET"wela[2]"LOC="M13";NET"wela[3]"LOC="K14";系統(tǒng)框圖及模塊劃分采用自頂向下分層設(shè)計(jì)思想的大約設(shè)計(jì)示意圖如下:計(jì)時(shí)器秒計(jì)數(shù) 分計(jì)數(shù)動(dòng)態(tài)顯示60進(jìn)制成員任務(wù)劃分 1:負(fù)責(zé)本課題的開展,組織,協(xié)調(diào)及任務(wù)分派與安排問題,查找課題相關(guān)資料,完畢主程序,及接口控制文獻(xiàn)的編寫。2:完畢分頻器模塊的程序編寫,以及最后的報(bào)告整理。3:查找課題相關(guān)資料,參與子程序計(jì)數(shù)器模塊的編寫。4:完畢數(shù)碼管部分程序的編寫,并完畢程序的仿真及測(cè)試。張?各模塊具體設(shè)計(jì)模塊1:分頻器功能:分頻器,能將高頻脈沖變換為低頻脈沖,它可由觸發(fā)器以及計(jì)數(shù)器來完畢。由于一個(gè)觸發(fā)器就是一個(gè)二分頻器,N個(gè)觸發(fā)器就是2N個(gè)分頻器。假如用計(jì)數(shù)器作分頻器,就要按進(jìn)制數(shù)進(jìn)行分頻。例如十進(jìn)制計(jì)數(shù)器就是十分頻器,M進(jìn)制計(jì)數(shù)器就為M分頻器。一般使用的石英晶體振蕩器頻率為32768HZ,要想用該振蕩器得到一個(gè)頻率為1HZ的秒脈沖信號(hào),就需要用分頻器進(jìn)行分頻,分頻器的個(gè)數(shù)為2N=32768HZ,N=15即有15個(gè)分頻器。這樣就將一個(gè)頻率為32768HZ的振蕩信號(hào)減少為1HZ的計(jì)時(shí)信號(hào),這樣就滿足了計(jì)時(shí)規(guī)律的需求:60秒=1分鐘,60分=1小時(shí)。輸入輸出接口定義模塊1輸入輸出接口定義信號(hào)名稱方向位寬說明rclkin1系統(tǒng)時(shí)鐘rstin1系統(tǒng)復(fù)位信號(hào),低有效dclkout1分頻輸出模塊具體設(shè)計(jì)思緒:分頻器模塊用verilog語(yǔ)言實(shí)現(xiàn)采用“計(jì)數(shù)-翻轉(zhuǎn)”的方法。在模塊中,當(dāng)計(jì)數(shù)變量計(jì)數(shù)至某一值n時(shí)輸出信號(hào)翻轉(zhuǎn)一次,如此循環(huán),便可以輸出占空比為50%的方波信號(hào),設(shè)計(jì)程序?yàn)?moduleDIV_FRE( ?rclk,??dclk,? rst); inputrclk; inputrst;?outputdclk; regdclk; parameterDIV=50; reg[25:0]buff=26'd0; always@(posedgerclkorposedgerst) begin? if(rst)? begin?? buff<=0;?? dclk<=0; end??else ?begin ??if(buff==DIV-1) begin buff<=0;? ??dclk<=1; ??end ? else begin? ?dclk<=0;????buff<=buff+1; ?end end endEndmodule模塊2:計(jì)數(shù)器功能:計(jì)時(shí)器涉及分計(jì)數(shù)、秒計(jì)數(shù),其中秒計(jì)數(shù)變化的頻率和1Hz時(shí)鐘信號(hào)的頻率是同樣的。在時(shí)鐘運(yùn)營(yíng)的過程中有幾個(gè)時(shí)間節(jié)點(diǎn)是需要特別注意的:59秒、59分59秒,這兩個(gè)時(shí)刻將會(huì)產(chǎn)生進(jìn)位,59分59秒這個(gè)時(shí)刻時(shí)間將會(huì)歸零,只要注意這幾個(gè)時(shí)刻的判斷并采用相應(yīng)的措施便可完畢正常的計(jì)數(shù)。模塊2輸入輸出接口定義信號(hào)名稱方向位寬說明clkin1系統(tǒng)時(shí)鐘rstin1系統(tǒng)復(fù)位信號(hào),低有效numout1計(jì)數(shù)輸出模塊具體設(shè)計(jì)思緒:本設(shè)計(jì)中計(jì)時(shí)器模塊完全采用verilog語(yǔ)言描述,計(jì)時(shí)器的基本原理是運(yùn)用兩個(gè)模60計(jì)數(shù)器,串連工作,同時(shí)采用一個(gè)時(shí)鐘統(tǒng)一控制。其程序如下:modulecounter_num(? clk,? num, ?rst); inputclk;?inputrst; output[3:0]num;?reg[3:0]num=4'd0; parameterCOUNTER=10;??initial?begin?num=4'd0;?end ?always@(posedgeclkorposedgerst)?begin? if(rst) begin num<=4'd0;??end ?else ?begin? ?if(num==COUNTER-1)???num<=4'd0; else ??num<=num+1;? end endEndmodule模塊3:數(shù)碼管功能:動(dòng)態(tài)顯示時(shí)間數(shù)據(jù),前兩位表達(dá)分,后兩位表達(dá)秒。4.3.2設(shè)計(jì)思緒:動(dòng)態(tài)顯示4位數(shù)據(jù)時(shí),需要一個(gè)4選1數(shù)據(jù)選擇器、一個(gè)16選4數(shù)據(jù)選擇器,和一個(gè)7段顯示譯碼器協(xié)調(diào)工作。4選1數(shù)據(jù)選擇器的作用是選擇點(diǎn)亮的數(shù)碼管,16選4數(shù)據(jù)選擇器的作用是選擇相應(yīng)數(shù)碼管應(yīng)當(dāng)輸出的數(shù)據(jù),7段顯示譯碼器的作用是對(duì)BCD碼進(jìn)行譯碼,便于數(shù)碼管顯示。分為控制部分和計(jì)數(shù)部分??刂颇K:moduledigit_num_fluid_display_4bit(? clk, num0,? num1, num2,??num3, ?wela, dula, rst); inputclk;?inputrst;?input[3:0]num0;?input[3:0]num1; input[3:0]num2; input[3:0]num3;?output[3:0]wela;?output[7:0]dula;?wire[3:0]num; reg[3:0]num_buff; wire[1:0]pos; reg[1:0]pos_buff; reg[1:0]i=2'b0; ?assignnum=num_buff; assignpos=pos_buff;??digit_led_display_1bitled_display(.clk(clk),.num(num),.pos(pos),.dula(dula),.wela(wela)); always@(posedgeclkorposedgerst) begin??if(rst) ?begin???i<=2'b00; pos_buff<=2'b00; ?num_buff<=0; ?end??else? begin ? case(i)? 2'b00:??? begin???? pos_buff<=2'b00;? ??num_buff<=num0;?? ?end ???2'b01: ???begin?? pos_buff<=2'b01; ? num_buff<=num1; ???end ???2'b10:? ??begin ? pos_buff<=2'b10;? num_buff<=num2; ???end 2'b11: ?begin?????pos_buff<=2'b11; num_buff<=num3;? ??end ?endcase? i<=i+1; end endendmodule計(jì)數(shù)模塊:moduledigit_led_display_1bit(//displaydigitled1bit?clk,//clkofrefresh?num,//thenumtodisplay?pos,//theposition?dula,//duanbianma wela);?inputclk;?input[3:0]num; input[1:0]pos;?output[7:0]dula; output[3:0]wela;?reg[7:0]dula=8'b1111_1111;?reg[3:0]wela=4'b1111;?parameter[7:0]num_0=8'b1100_0000, ? ? num_1=8'b1111_1001, ?? num_2=8'b1010_0100,? num_3=8'b1011_0000, ????num_4=8'b1001_1001, ?num_5=8'b1001_0010,? ????num_6=8'b1000_0010, ? num_7=8'b1111_1000, ?? ?num_8=8'b1000_0000,?? ??num_9=8'b1001_0000; always@(posedgeclk) begin ?case(pos) ??2'b00:wela<=4'b1110; ? 2'b01:wela<=4'b1101;? ?2'b10:wela<=4'b1011; 2'b11:wela<=4'b0111; endcase ?case(num) ??4'b0000:dula<=num_0; ? 4'b0001:dula<=num_1;? ?4'b0010:dula<=num_2; ?4'b0011:dula<=num_3;???4'b0100:dula<=num_4;? 4'b0101:dula<=num_5; ? 4'b0110:dula<=num_6;?? 4'b0111:dula<=num_7;?? 4'b1000:dula<=num_8;?? 4'b1001:dula<=num_9; ?endcase endEndmodule仿真與測(cè)試及實(shí)驗(yàn)結(jié)果:測(cè)試文獻(xiàn):moduletestclock;?//Inputs regclk; regrst;?//Outputs?wire[7:0]dula;?wire[3:0]wela; //InstantiatetheUnitUnderTest(UUT)?clockuut(? .clk(clk),? .dula(dula), ?.wela(wela), ?.rst(rst));?initialbegin ?//InitializeInputs clk=0;??rst=1;? //Wait100nsforglobalresettofinish #100;??rst=1'b0; //Addstimulushere end?always#5clk=~clk;endmodule仿真時(shí)序圖:實(shí)驗(yàn)結(jié)果:在實(shí)驗(yàn)板上顯示如下:59分08秒:0分1秒:18分04秒:課程設(shè)計(jì)總結(jié)及設(shè)計(jì)心得通過本次設(shè)計(jì),學(xué)習(xí)了FPGA的知識(shí),對(duì)FPGA的應(yīng)用有了一定的結(jié)識(shí),本次設(shè)計(jì)的重要工作和成果如下1、在學(xué)習(xí)了verilong語(yǔ)言的基礎(chǔ)上,能地運(yùn)用verilong語(yǔ)言進(jìn)行電路設(shè)計(jì)。2、運(yùn)用自頂向下的設(shè)計(jì)思想,對(duì)計(jì)時(shí)器各個(gè)功能模塊進(jìn)行分解設(shè)計(jì)。3、進(jìn)行仿真驗(yàn)證了整個(gè)模塊功能的對(duì)的性。4、將各個(gè)模塊連接,組成一個(gè)系統(tǒng),并在不斷調(diào)試中發(fā)現(xiàn)問題,并及時(shí)解決。5、在實(shí)驗(yàn)板上形成計(jì)時(shí)器的完整作品。個(gè)人心得:1:在本次實(shí)驗(yàn)的過程中我也有過挫折有不太清楚明了的地方,但是我并沒有氣餒,碰到困難我總是先自己尋找失敗的因素,仔細(xì)的檢查分析,請(qǐng)教同學(xué)、請(qǐng)教老師。在這一過程中我對(duì)FPGA的掌握有了更進(jìn)一步的見解,我和我的成員分工合作,各自完畢自己的模塊,大家互相學(xué)習(xí),互相提高。我相信自己定能在以后的實(shí)驗(yàn)課中能學(xué)到更多方面的知識(shí),成為一個(gè)全面發(fā)展的學(xué)踐型學(xué)生。2:通過參與這次實(shí)驗(yàn),我學(xué)到了很多東西,一方面我通過聽老師講述、查閱書本、網(wǎng)絡(luò)等多種渠道學(xué)習(xí)了FPGA的知識(shí)。在學(xué)習(xí)的過程中,我既體會(huì)到了學(xué)習(xí)的樂趣,又提高了合作能力,還懂得了對(duì)于我們?cè)谧鍪逻^程中發(fā)現(xiàn)的問題要冷靜的思考,不要盲目的進(jìn)行。在這次設(shè)計(jì)過程中所得到的體會(huì),在過去是沒有過的,在書本中是也是無法找到的。我以后將更努力的學(xué)習(xí)這方面的知識(shí)。3:在學(xué)習(xí)FPGA的整個(gè)過程中,我建立起對(duì)FPGA學(xué)習(xí)的愛好,碰到困難時(shí)要敢于面對(duì)它,并想辦法解決。要對(duì)數(shù)字系統(tǒng)設(shè)計(jì)有比較全面的把握,如寄存器、內(nèi)存、計(jì)數(shù)器、DSP等,盡力拓寬自己的知識(shí)面,比如數(shù)字電路、高速時(shí)鐘系統(tǒng)、電路工藝方面及系統(tǒng)設(shè)計(jì)等。結(jié)合具體項(xiàng)目進(jìn)行設(shè)計(jì)開發(fā)應(yīng)用,這樣才干有一個(gè)明確的進(jìn)步方向。嘗
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年汽車租賃與共享出行服務(wù)合同2篇
- 2025投資公司借款合同范本
- 2025年度金融資產(chǎn)委托代理合同補(bǔ)充協(xié)議(證券業(yè)務(wù))3篇
- 2025信息查詢技術(shù)服務(wù)合同范本
- 2025年度鐵路信號(hào)維護(hù)施工合同范本3篇
- 個(gè)人與公司2024年度物流運(yùn)輸服務(wù)合同3篇
- 2025借款合同甲方乙方模板
- 家具行業(yè)試用期合同簽訂指南
- 電信公司寬帶安裝施工合同
- 22024版股權(quán)投資合同范本:某投資公司與初創(chuàng)企業(yè)股權(quán)投資協(xié)議
- 第二章 運(yùn)營(yíng)管理戰(zhàn)略
- 《三本白皮書》全文內(nèi)容及應(yīng)知應(yīng)會(huì)知識(shí)點(diǎn)
- 專題14 思想方法專題:線段與角計(jì)算中的思想方法壓軸題四種模型全攻略(解析版)
- 醫(yī)院外來器械及植入物管理制度(4篇)
- 港口與港口工程概論
- 《念珠菌感染的治療》課件
- 門店裝修設(shè)計(jì)手冊(cè)
- 考研計(jì)算機(jī)學(xué)科專業(yè)基礎(chǔ)(408)研究生考試試卷與參考答案(2025年)
- 2024護(hù)理個(gè)人年終總結(jié)
- 海南省申論真題2020年(縣級(jí)及以上)
- 蛇年金蛇賀歲
評(píng)論
0/150
提交評(píng)論