資源描述:
《(VerilogHDL)數(shù)字時(shí)鐘設(shè)計(jì).doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、實(shí)驗(yàn)報(bào)告課程名稱:可編程邏輯器件與數(shù)字系統(tǒng)設(shè)計(jì)實(shí)驗(yàn)項(xiàng)目:數(shù)字時(shí)鐘設(shè)計(jì)專業(yè)班級(jí):姓名:學(xué)號(hào):實(shí)驗(yàn)室號(hào):實(shí)驗(yàn)組號(hào):實(shí)驗(yàn)時(shí)間:批閱時(shí)間:指導(dǎo)教師:成績(jī):沈陽(yáng)工業(yè)大學(xué)實(shí)驗(yàn)報(bào)告專業(yè)班級(jí):學(xué)號(hào):姓名:實(shí)驗(yàn)名稱:數(shù)字時(shí)鐘設(shè)計(jì)1.實(shí)驗(yàn)?zāi)康模菏煜uartusII6.0運(yùn)行環(huán)境,掌握基本使用方法;學(xué)會(huì)使用QuartusII編寫程序,進(jìn)行下載驗(yàn)證。2.實(shí)驗(yàn)內(nèi)容:(1)60進(jìn)制計(jì)數(shù)器;(2)24進(jìn)制計(jì)數(shù)器;(3)調(diào)用24進(jìn)制和60進(jìn)制計(jì)數(shù)器制作數(shù)字時(shí)鐘。3.實(shí)驗(yàn)方案(1)編寫題目要求的程序;(2)按照要求將相關(guān)程序進(jìn)行檢測(cè)和調(diào)試,運(yùn)行正確的程序;(3)程序完成后,將其與實(shí)驗(yàn)箱連接,并打開電源;(4)下載
2、程序到芯片內(nèi);(5)觀察程序功能是否成功實(shí)現(xiàn)。4.實(shí)驗(yàn)步驟或程序詳細(xì)過(guò)程見(jiàn)附錄。5.程序運(yùn)行結(jié)果運(yùn)行結(jié)果如下圖所示:24進(jìn)制計(jì)數(shù)器60進(jìn)制計(jì)數(shù)器6.出現(xiàn)的問(wèn)題及解決方法首次運(yùn)行程序時(shí),沒(méi)有任何出錯(cuò)狀況;而在下載后,發(fā)現(xiàn)24進(jìn)制計(jì)數(shù)器中的頻率有些快,只要把頻率的短路針調(diào)到1Hz即可,沒(méi)有其他問(wèn)題。附錄A(24進(jìn)制計(jì)數(shù)器)1、功能實(shí)現(xiàn)與程序選擇24進(jìn)制計(jì)數(shù)器是實(shí)現(xiàn)從0到23的計(jì)數(shù)。由此可以運(yùn)用VerilogHDL語(yǔ)言將此功能實(shí)現(xiàn)。2、程序運(yùn)行與調(diào)試modulecount24(Rd,EN,CLK,Qh,Ql,C);inputRd,EN,CLK;output[3:0]Qh,Ql;outpu
3、tC;reg[3:0]Qh,Ql;regC;initialbeginQh=4'd0;Ql=4'd0;C=0;endalways@(posedgeCLK)beginif(EN==1)beginif(Rd==0)beginQh=4'd0;Ql=4'd0;C=0;endelseif(Qh<4'd2&&Ql<4'd9)Ql=Ql+1;elseif(Qh<4'd2&&Ql==4'd9)beginQh=Qh+1;Ql=4'd0;endelseif(Qh==4'd2&&Ql<4'd3)Ql=Ql+1;elsebeginQh=4'd0;Ql=4'd0;C=0;endif(Qh==4'd2&&Ql=
4、=4'd3)C=1;endendendmodule3、保存一個(gè)名稱,建立一個(gè)和module模塊的名稱一致的工程并進(jìn)行調(diào)試。4、新建一個(gè)波形文件,并且把各變量都輸入到里面,繪制出波形。波形同上面的程序運(yùn)行結(jié)果相同。附錄B(60進(jìn)制計(jì)數(shù)器)1、功能實(shí)現(xiàn)與程序選擇60進(jìn)制計(jì)數(shù)器是實(shí)現(xiàn)從0到59的計(jì)數(shù)。由此可以運(yùn)用VerilogHDL語(yǔ)言將此功能實(shí)現(xiàn)。2、程序運(yùn)行與調(diào)試modulecount60(Rd,EN,CLK,Qh,Ql,C);inputRd,EN,CLK;output[3:0]Qh,Ql;outputC;reg[3:0]Qh,Ql;regC;initialbeginQh=4'd0;
5、Ql=4'd0;C=0;endalways@(posedgeCLK)beginif(EN==1)if(Rd==0)beginQh=4'd0;Ql=4'd0;C=0;endelseif(Ql<4'd9)Ql=Ql+1;elseif(Qh<4'd5&&Ql==4'd9)beginQh=Qh+1;Ql=4'd0;endelsebeginQh=4'd0;Ql=4'd0;C=0;endif(Qh==4'd5&&Ql==4'd9)C=1;endendmodule3、保存一個(gè)名稱,建立一個(gè)和module模塊的名稱一致的工程并進(jìn)行調(diào)試。4、新建一個(gè)波形文件,并且把各變量都輸入到里面,繪制出波形。波
6、形同上面的程序運(yùn)行結(jié)果相同。附錄C(數(shù)字時(shí)鐘)1、功能實(shí)現(xiàn)與程序選擇數(shù)字時(shí)鐘是實(shí)現(xiàn)從一天24小時(shí)的顯示,精確到秒。(需要調(diào)用前面24進(jìn)制計(jì)數(shù)器和60進(jìn)制計(jì)數(shù)器的程序)由此可以運(yùn)用VerilogHDL語(yǔ)言將此功能實(shí)現(xiàn)。2、程序運(yùn)行與調(diào)試moduleclock(Rd,EN,CLK,Qhh,Qhl,Qmh,Qml,Qsh,Qsl);inputRd,EN,CLK;output[3:0]Qhh,Qhl,Qmh,Qml,Qsh,Qsl;count60A1(Rd,EN,CLK,Qsh,Qsl,Cs);count60A2(Rd,EN,nCs,Qmh,Qml,Cm);count24A3(Rd,EN,
7、nCm,Qhh,Qhl);notA4(nCs,Cs);notA5(nCm,Cm);endmodule3、保存一個(gè)名稱,建立一個(gè)和module模塊的名稱一致的工程并進(jìn)行調(diào)試。4、輸入管腳,查表對(duì)應(yīng)輸入。保存后再調(diào)試,沒(méi)有錯(cuò)誤后,就可以下載到試驗(yàn)箱了。5、下載到實(shí)驗(yàn)箱觀察程序結(jié)果是否如預(yù)期一樣。