版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、深 圳 大 學(xué) 實(shí) 驗(yàn) 報(bào) 告 課程名稱: 數(shù)字系統(tǒng)設(shè)計(jì) 實(shí)驗(yàn)項(xiàng)目名稱: verilog秒表設(shè)計(jì) 學(xué)院: 信息工程學(xué)院 專業(yè): 電子信息工程 指導(dǎo)教師: 鄧小鶯 報(bào)告人: 陳耀省 學(xué)號:2010130267 班級: 電子三班 實(shí)驗(yàn)時(shí)間: 2012年11月 實(shí)驗(yàn)報(bào)告提交時(shí)間: 2012年11月28日 教務(wù)部制一、實(shí)驗(yàn)?zāi)康?、進(jìn)一步熟悉ise軟件的使用,熟悉fpga開發(fā)流程;2、掌握編寫verilog代碼的步驟,學(xué)會(huì)繪制asm圖;3、學(xué)會(huì)自頂向下的設(shè)計(jì)方法,使用不同的模塊實(shí)現(xiàn)系統(tǒng)的設(shè)計(jì)。二、實(shí)驗(yàn)設(shè)備 1、裝有ise軟件的pc機(jī)一臺(tái);2、nexys3開發(fā)板一塊。三、實(shí)驗(yàn)內(nèi)容與要求設(shè)計(jì)一個(gè)秒表它具有計(jì)
2、時(shí)功能。此秒表有兩個(gè)按鍵(reset, start)按下reset鍵后,秒表清零。開始默認(rèn)秒表計(jì)時(shí),按下start鍵后,停止計(jì)時(shí),再次按下start鍵后,又開始計(jì)時(shí),如此反復(fù)。 用fpga開發(fā)板上的兩個(gè)七段數(shù)碼管顯示時(shí)間(以秒為單位),計(jì)時(shí)由0 到 59 循環(huán)。三、實(shí)驗(yàn)步驟 1、設(shè)計(jì)系統(tǒng)框圖,設(shè)計(jì)采取自頂向下的設(shè)計(jì)方案,整個(gè)秒表系統(tǒng)的原理圖如下所示。主要包括五個(gè)模塊按鍵消抖模塊、分頻模塊、按鍵功能控制模塊、計(jì)數(shù)模塊、數(shù)碼管驅(qū)動(dòng)顯示模塊。2、根據(jù)系統(tǒng)的原理圖,畫出各個(gè)模塊的asm圖。(1)利用d觸發(fā)器對按鍵進(jìn)行消抖處理,其電路圖如下。利用下面這個(gè)電路即可實(shí)現(xiàn)對start鍵和reset鍵的消抖。只
3、有連續(xù)輸入三個(gè)周期的高電平時(shí),按鍵才有效。(2)分頻模塊的asm圖。此asm圖將100mhz的信號分頻為100hz的信號,用于計(jì)數(shù)和數(shù)碼管的掃描。(3)start鍵與reset鍵功能控制模塊的asm圖。圖中rst為復(fù)位信號,sta為計(jì)時(shí)信號。利用狀態(tài)機(jī)實(shí)現(xiàn)不同狀態(tài)之間的轉(zhuǎn)換并輸出復(fù)位信號與計(jì)時(shí)信號。默認(rèn)狀態(tài)是start_time,即計(jì)時(shí)狀態(tài)。(4)計(jì)數(shù)模塊的asm圖。輸入100hz的時(shí)鐘用于計(jì)數(shù),當(dāng)復(fù)位信號有效時(shí),將所有的數(shù)全部置0。否則sta信號有效時(shí)開始計(jì)數(shù)。最后輸出秒位與十秒位。(5)數(shù)碼管驅(qū)動(dòng)模塊的asm圖。使用100hz的信號掃描數(shù)碼管,并將對應(yīng)的數(shù)字以十進(jìn)制形式顯示在數(shù)碼管上。因?yàn)?/p>
4、只用到兩個(gè)數(shù)碼管,所以前兩個(gè)數(shù)碼管置1,即保持不亮,只點(diǎn)亮后兩個(gè)數(shù)碼管。3、根據(jù)所繪制各個(gè)模塊的asm圖和系統(tǒng)的原理圖,編寫verilog代碼。所編寫的代碼如下。/*秒表頂層模塊*/module stopwatch(clk,reset,start,led,outdata);input clk,reset,start;output led;output outdata;wire clk_100,freset,fstart,rst,sta;wire 3:0data_s,data_g;wire 3:0led;wire 6:0outdata;xiaodou m1(.reset(reset),.star
5、t(start),.clk(clk),.freset(freset),.fstart(fstart);fenpin m2(.clk(clk),.clk_100(clk_100);f_start m3(.clk(clk),.reset(reset),.start(start),.freset(freset),.fstart(fstart),.rst(rst),.sta(sta);jishu m4(.clk_100(clk_100),.rst(rst),.sta(sta),.data_s(data_s),.data_g(data_g);qudong m5(.clk_100(clk_100),.da
6、ta_s(data_s),.data_g(data_g),.outdata(outdata),.led(led);endmodule/*/*分頻模塊*/module fenpin(clk,clk_100);input clk;output clk_100;reg clk_100=0;reg 18:0temp=0;always (posedge clk)beginif (temp=499999)begintemp=0;clk_100=clk_100;endelse begintemp=temp+1;end endendmodule/*/*按鍵消抖*/module xiaodou(reset,st
7、art,clk,freset,fstart);input reset,start,clk;output freset,fstart;wire freset,fstart;reg flag_reset,flag_start;reg reseta,starta, resetb,startb;assign freset=(reseta & resetb & flag_reset); assign fstart=(starta & startb & flag_start);always ( posedge clk)beginreseta=reset; starta=start;resetb=reset
8、a; startb=starta;flag_reset=resetb; flag_start=startb;endendmodule/*/*start與reset鍵功能控制*/module f_start(clk,reset,start,freset,fstart,rst,sta);input clk,reset,start,freset,fstart;output rst,sta;reg 1:0state=2b01; /默認(rèn)是計(jì)時(shí)狀態(tài),即start_timereg rst=1;reg sta=0;parameter reset_time =2b00, start_time =2b01, st
9、op_time =2b10;always (posedge clk) if (freset & !reset) /按鍵按下放開后的第一個(gè)時(shí)鐘周期有效 begin state=reset_time; rst=0; end else case (state) reset_time: if (fstart & !start) begin state=start_time; rst=1; sta=0; end else begin state=reset_time; rst=0; end start_time: if (fstart & !start) begin state=stop_time; r
10、st=1; sta=1; end else begin state=start_time; rst=1; sta=0; end stop_time: if (fstart & !start) begin state=start_time; rst=1; sta=0; end else begin state=stop_time; rst=1; sta=1; end default: state=2bxx;endcase endmodule/*/*計(jì)數(shù)模塊*/module jishu(clk_100,rst,sta,data_s,data_g);input clk_100,rst,sta;out
11、put 3:0data_s,data_g;reg 3:0data_s=4b0000;reg 3:0data_g=4b0000;reg 3:0temp1=4b0000;reg 3:0temp2=4b0000;always (posedge clk_100)if (!rst)begintemp1=4b0000; temp2=4b0000;data_s=4b0000; data_g=4b0000;endelse if (!sta) begin if(temp1=9) begin temp1=0; if(temp2=9) begin temp2=0;if(data_g=9) begin data_g=
12、0;if(data_s=5)begindata_s=0; endelse begin data_s=data_s+1; end endelsebegindata_g=data_g+1; end endelsebegintemp2=temp2+1;end end else begin temp1=temp1+1; end endendmodule/*/*數(shù)碼管掃描與顯示模塊*/module qudong(clk_100,data_s,data_g,outdata,led);input clk_100; input 3:0data_s,data_g;output outdata,led;reg 3
13、:0data,led;reg count=0;reg 6:0outdata;always (posedge clk_100)if (count)begincount=0;endelsebegincount=count+1;endalways (count)case (count)0: led=4b1110;1: led=4b1101;default : led=4b1111;endcasealways (count)case (count)0: data=data_g;1: data=data_s;default: data=4b1111;endcasealways (data)case (d
14、ata)4b0000: outdata=7b0000001;4b0001: outdata=7b1001111;4b0010: outdata=7b0010010;4b0011: outdata=7b0000110;4b0100: outdata=7b1001100;4b0101: outdata=7b0100100;4b0110: outdata=7b0100000;4b0111: outdata=7b0001111;4b1000: outdata=7b0000000;4b1001: outdata=7b0000100;default: outdata=7b1111111;endcaseen
15、dmodule/*/4、將所編寫的代碼進(jìn)行綜合,綜合無誤后對代碼進(jìn)行功能仿真。仿真結(jié)果圖與仿真分析如下。將代碼進(jìn)行綜合后所得的電路結(jié)構(gòu)圖如下所示,系統(tǒng)由五個(gè)模塊組成,與所寫的代碼完全吻合。仿真結(jié)果與分析:開始時(shí)默認(rèn)計(jì)時(shí),所以到1000ms時(shí)數(shù)碼管顯示01秒,如下圖所示。下面兩幅圖,第一幅圖中start鍵第一次按下,即按下了停止鍵,所以計(jì)時(shí)停止,到3000多ms時(shí)數(shù)碼管的顯示依舊停在01秒,如第二幅圖所示。按下reset鍵后,秒表復(fù)位,數(shù)碼管變?yōu)轱@示00秒,如下圖。在復(fù)位狀態(tài)下按下start鍵,開始計(jì)時(shí),所以按下start鍵1秒后數(shù)碼管顯示又由00秒變?yōu)?1秒,如下圖。 由以上的仿真結(jié)果可以看出
16、,所編寫的代碼能實(shí)現(xiàn)秒表的計(jì)時(shí)功能,且秒表的各個(gè)按鍵的功能都正確,所編寫的代碼正確。5、進(jìn)行完功能仿真驗(yàn)證代碼無誤后,進(jìn)行管腳分配,編寫ucf文件。ucf文件如下。net clk loc = v10;net led0 loc = n16;net led1 loc = n15;net led2 loc = p18;net led3 loc = p17;net outdata6 loc = t17;net outdata5 loc = t18;net outdata4 loc = u17;net outdata3 loc = u18;net outdata2 loc = m14;net outda
17、ta1 loc = n14;net outdata0 loc = l14;net reset loc = a8;net start loc = b8;6、管腳分配結(jié)束之后,對程序進(jìn)行綜合,運(yùn)行,并進(jìn)行布局布線。以下是布局布線后的報(bào)告,從報(bào)告中可以看出所用資源的情況,且布局布線后沒有錯(cuò)誤和警告。device utilization summary:slice logic utilization: number of slice registers: 47 out of 18,224 1% number used as flip flops: 47 number of slice luts: 82
18、 out of 9,112 1% number used as logic: 81 out of 9,112 1% number using o6 output only: 58 number using o5 output only: 17 number using o5 and o6: 6 number used exclusively as route-thrus: 1 number with same-slice carry load: 1slice logic distribution: number of occupied slices: 33 out of 2,278 1% nu
19、mber of lut flip flop pairs used: 85 number with an unused flip flop: 42 out of 85 49% number with an unused lut: 3 out of 85 3% number of fully used lut-ff pairs: 40 out of 85 47%io utilization: number of bonded iobs: 14 out of 232 6% number of loced iobs: 14 out of 14 100%specific feature utilization: number of bufg/bufgmuxs: 1 out of 16 6% number used as bufgs: 1generating pad report.all sig
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度智能安防系統(tǒng)設(shè)備維修與升級合同3篇
- 二零二五年度鄉(xiāng)村旅游開發(fā)農(nóng)村房屋買賣合同協(xié)議書2篇
- 2025年度企業(yè)公務(wù)車借用與車輛保險(xiǎn)理賠協(xié)議范本3篇
- 二零二五年度農(nóng)機(jī)維修配件進(jìn)出口貿(mào)易合同模板3篇
- 二零二五年度農(nóng)村宅基地房屋買賣及農(nóng)村社會(huì)保障體系建設(shè)合同
- 2025年度農(nóng)村農(nóng)業(yè)勞務(wù)用工合同范本(含勞動(dòng)爭議調(diào)解)
- 二零二五年度新能源實(shí)驗(yàn)室儲(chǔ)能技術(shù)研究合同3篇
- 二零二五年度汽車維修兼職技師雇傭合同3篇
- 2025年度XX能源公司二零二五年度綠色貸款合同3篇
- 2025年度商業(yè)綜合體寫字樓租賃管理服務(wù)協(xié)議3篇
- 護(hù)理查房深靜脈置管
- 計(jì)算與人工智能概論知到智慧樹章節(jié)測試課后答案2024年秋湖南大學(xué)
- 2024年度油漆涂料生產(chǎn)線租賃合同3篇
- 2024-2024年上海市高考英語試題及答案
- 慶祝澳門回歸25周年主題班會(huì) 課件 (共22張)
- 《藥事管理與法規(guī)》期末考試復(fù)習(xí)題及答案
- 血液病染色體
- 幼兒園膳食管理委員會(huì)組織結(jié)構(gòu)概述
- 介入治療的臨床應(yīng)用
- 第四章 牛頓運(yùn)動(dòng)定律 章末檢測題(基礎(chǔ)卷)(含答案)2024-2025學(xué)年高一上學(xué)期物理人教版(2019)必修第一冊
- 華中師范大學(xué)《高等代數(shù)與解析幾何》2023-2024學(xué)年第一學(xué)期期末試卷
評論
0/150
提交評論