Verilog24小時計數(shù)器(共7頁)_第1頁
Verilog24小時計數(shù)器(共7頁)_第2頁
Verilog24小時計數(shù)器(共7頁)_第3頁
Verilog24小時計數(shù)器(共7頁)_第4頁
Verilog24小時計數(shù)器(共7頁)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、VERILOG24小時多功能數(shù)字鐘的設計班級:自動化 學生:XXXXX 學號:XXXXXX1 設計目標 掌握可編程邏輯器件的應用開發(fā)技術(shù)設計輸入、編譯、仿真和器件編程;熟悉一種EDA軟件使用與實驗系統(tǒng)介紹 ;掌握Verilog HDL設計方法,設計一個多功能數(shù)字鐘,滿足以下要求: 能顯示小時、分鐘、秒鐘(小時以24進制,時、分用顯示器,秒用LED); 能調(diào)整小時、分鐘的時間; 復位;2 實驗裝置586計算機,MAX+plus 10.2軟件,專用編程電纜,EDA Pro2K數(shù)字實驗裝置等。3 設計步驟和要求 在MAX+plus 10.2軟件中,輸入設計的原理圖,采用Verilog HDL輸入方式

2、,采用分層模塊的設計方法設計電路 對電路進行仿真分析; 選擇器件,分配引腳,重新對設計項目進行編譯和邏輯綜合; 對EDA Pro2K數(shù)字實驗裝置中的FPGA器件進行在系統(tǒng)編程,并實際測試電路的邏輯功能(用實驗板上的譯碼顯示電路顯示結(jié)果);4 具體步驟4.1 建立 Quartus 工程; 1.打開 Quartus II 工作環(huán)境 2.點擊菜單項 File-New Project Wizard 幫助新建工程 3.輸入工程工作路徑、工程文件名以及頂層實體名 4.添加設計文件 5.選擇設計所用器件 6.設置EDA工具 7.查看新建工程總結(jié) 在完成新建后,Quartus II 界面中 Project N

3、avigator 的 Hierarchy 標簽欄中會出現(xiàn)用戶正在設計的工程名以及所選用的器件型號4.2 使用 Verilog HDL 完成設計輸入 代碼如下: (1)數(shù)字鐘頂層模塊:/*timeclock top block(top_clock.v)*module clock_24(CLK,CP,nCR,EN,Adj_Min,Adj_Hour,SEG7_1,SEG7_2,SEG7_3,SEG7_4);input CLK,nCR,EN,Adj_Min,Adj_Hour;/定義輸入端口變量output7:0SEG7_1,SEG7_2,SEG7_3,SEG7_4;output CP;wire CP;

4、wire7:0Hour,Minute,Second;/說明變量的類型supply1 Vdd;wire MinL_EN,MinH_EN,Hour_EN;/定義中間變量freqDiv UO(CLK,CP);counter10 U1(Second3:0,nCR,EN,CP); /秒計數(shù)器個位counter6 U2(Second7:4,nCR,(Second3:0=4h9),CP); /秒計數(shù)器十位assign MinL_EN=Adj_Min?Vdd:(Second=8h59);assignMinH_EN=(Adj_Min&(Minute3:0=4h9)|(Minute3:0=4h9)&(Second

5、=8h59);counter10 U3(Minute3:0,nCR,MinL_EN,CP); /分計數(shù)器個位counter6 U4(Minute7:4,nCR,MinH_EN,CP); /分計數(shù)器十位/產(chǎn)生小時計數(shù)器使能信號。Adj_Hour=1,校正小時;Adj_Hour=0,小時正常計時assign Hour_EN=Adj_Hour?Vdd:(Minute=8h59)&(Second=8h59);/24進制小時計數(shù)器:調(diào)用24進制底層模塊構(gòu)成counter24 U5(Hour7:4,Hour3:0,nCR,Hour_EN,CP);/小時計數(shù)器SEG7_LUT U6(SEG7_1,Hour7

6、:4);SEG7_LUT U7(SEG7_2,Hour3:0);SEG7_LUT U8(SEG7_3,Minute7:4);SEG7_LUT U9(SEG7_4,Minute3:0);endmodule(2)十進制計數(shù)器模塊:/*counter10.v(BCD:05)*module counter10(Q,nCR,EN,CP);input CP,nCR,EN;output3:0Q;reg 3:0 Q;always(posedge CP or negedge nCR)beginif(nCR)Q=4b0000;/nCR=0,計數(shù)器被異步清零else if(EN)Q=Q;/EN=0,暫停計數(shù)else

7、 if(Q=4b1001)Q=4b0000;else Q=Q+1b1;/計數(shù)器增1計數(shù)endendmodule(3)六進制計數(shù)器模塊:/*counter6.v(BCD:05)*module counter6(Q,nCR,EN,CP);input CP,nCR,EN;output3:0Q;reg 3:0 Q;always(posedge CP or negedge nCR)beginif(nCR)Q=4b0000;/nCR=0,計數(shù)器被異步清零else if(EN)Q=Q;/EN=0,暫停計數(shù)else if(Q=4b0101)Q=4b0000;else Q=Q+1b1;/計數(shù)器增1計數(shù)enden

8、dmodule(4)24進制計數(shù)器模塊:/*counter24.v(BCD:023)*module counter24(CntH,CntL,nCR,EN,CP);input CP,nCR,EN;output3:0CntH,CntL;reg 3:0 CntH,CntL;always(posedge CP or negedge nCR)beginif(nCR)CntH,CntL=8h00;else if(EN)CntH,CntL2)|(CntL9)|(CntH=2)&(CntL=3)CntH,CntL=8h00;else if(CntH=2)&(CntL3)beginCntH=CntH; CntL

9、=CntL+1b1;endelse if(CntL=9)beginCntH=CntH+1b1; CntL=4b0000;endelsebeginCntH=CntH; CntL=CntL+1b1;endendendmodule(5)分頻模塊:/*freqDiv.v*module freqDiv(in_50MHz,out_1Hz);input in_50MHz;output out_1Hz;reg out_1Hz;reg 25:0cnt; always(posedge in_50MHz) begin cnt = cnt + 1B1;if(cnt 26d24999999)out_1Hz = 26d5

10、0000000)cnt = 26b0; else out_1Hz Generate Functional Simulation Netlist,產(chǎn)生功能仿真網(wǎng)表 點擊菜單項Processing-Start Simulation 啟動功能仿真4.5 器件的編程下載 下載程序:在Programmer界面 中 ,將.sof 文件列表中Program/Configure 屬性勾上 再點擊Start 按鈕,開始下載程序。完成后,下載程序顯示100% 最終調(diào)試,在 DE0 實驗板上,扳動 SW2,SW1 和 SW0 開關(guān),可以看到譯碼之后的 LEDR7-LEDR0 紅色 LED 發(fā)光輸出。例如:扳動 SW1 和SW0時僅有 LEDR3 亮。6 實驗總結(jié) 多功能數(shù)字鐘的設計解除了一種全新的分層次的電路設計方法:自頂向下和自頂向上的方法,在本次試驗中運用的是自頂向下的方法,先定義頂層模塊,然后再定義頂層模塊所應用的子模塊; 24小時計數(shù)器電路的整體能被認作為頂層模塊,他的3個子模塊包含小時計數(shù)器模塊,分計數(shù)器模塊,秒計數(shù)器模塊,分秒的模塊由十進制和六進制計數(shù)器組成,整個電路分三個層次 模塊化的設計方法在這次試驗中有非常重要的作用,能讓條理清晰,功能分工明確,便于設計,也有助于仿真的查看波形和編譯時檢查錯誤; 這也是一種學習方法,學習也要分清模塊

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論