可編程邏輯器件實(shí)驗(yàn)報(bào)告完整版_第1頁(yè)
可編程邏輯器件實(shí)驗(yàn)報(bào)告完整版_第2頁(yè)
可編程邏輯器件實(shí)驗(yàn)報(bào)告完整版_第3頁(yè)
可編程邏輯器件實(shí)驗(yàn)報(bào)告完整版_第4頁(yè)
可編程邏輯器件實(shí)驗(yàn)報(bào)告完整版_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、2012秋可編程邏輯器件課程設(shè)計(jì)報(bào)告2012秋可編程邏輯器件課程設(shè)計(jì)報(bào)告報(bào)告題目:數(shù)字鐘實(shí)驗(yàn)報(bào)告 姓名學(xué)號(hào)郵箱成績(jī)組長(zhǎng)組員1 設(shè)計(jì)內(nèi)容概述1.1 功能概述: 一個(gè)具有計(jì)秒、計(jì)分、復(fù)位的數(shù)字鐘,數(shù)字鐘從0開始計(jì)時(shí),計(jì)滿60秒后自動(dòng)清零,分鐘加1,最大計(jì)時(shí)顯示59分59秒。用A7按鍵作為系統(tǒng)時(shí)鐘復(fù)位,復(fù)位后全部顯示00 00,重新開始計(jì)時(shí)。1.2 輸入輸出接口:NET clk LOC = B8 ; NET dula0 LOC = L14 ; NET dula1 LOC = H12 ; NET dula2 LOC = N14 ; NET dula3 LOC = N11 ; NET dula4 LOC

2、 = P12 ; NET dula5 LOC = L13 ;NET dula6 LOC = M12 ; NET dula7 LOC = N13 ; NET rst LOC = A7 ;NET wela0 LOC = F12 ; NET wela1 LOC = J12 ; NET wela2 LOC = M13 ; NET wela3 LOC = K14 ; 2 系統(tǒng)框圖及模塊劃分 采用自頂向下分層設(shè)計(jì)思想的大概設(shè)計(jì)示意圖如下:計(jì)時(shí)器 秒計(jì)數(shù) 分計(jì)數(shù) 動(dòng)態(tài)顯示 60進(jìn)制3 組員任務(wù)劃分 1:負(fù)責(zé)本課題的開展,組織,協(xié)調(diào)及任務(wù)分配與安排問(wèn)題,查找課題相關(guān)資料,完成主程序,及接口控制文件的編寫。 2

3、:完成分頻器模塊的程序編寫,以及最后的報(bào)告整理。 3:查找課題相關(guān)資料,參與子程序計(jì)數(shù)器模塊的編寫。 4:完成數(shù)碼管部分程序的編寫,并完成程序的仿真及測(cè)試。張4 各模塊詳細(xì)設(shè)計(jì)4.1 模塊1:分頻器4.1.1 功能: 分頻器,能將高頻脈沖變換為低頻脈沖,它可由觸發(fā)器以及計(jì)數(shù)器來(lái)完成。由于一個(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

4、,N =15 即有15個(gè)分頻器。這樣就將一個(gè)頻率為32768HZ的振蕩信號(hào)降低為1HZ的計(jì)時(shí)信號(hào),這樣就滿足了計(jì)時(shí)規(guī)律的需求:60秒=1分鐘,60分=1小時(shí)。 輸入輸出接口定義表1 模塊1輸入輸出接口定義信號(hào)名稱方向位寬說(shuō)明rclkin1系統(tǒng)時(shí)鐘rstin1系統(tǒng)復(fù)位信號(hào),低有效dclkout1分頻輸出4.1.2 模塊詳細(xì)設(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)椋簃odule DIV_FRE(rclk,dclk,rst);input rclk;input

5、rst;output dclk;reg dclk;parameter DIV=50;reg25:0 buff=26d0;always (posedge rclk or posedge rst)beginif(rst)beginbuff=0;dclk=0;endelsebeginif(buff=DIV-1)beginbuff=0;dclk=1;endelsebegindclk=0;buff=buff+1;endendendEndmodule4.2 模塊2:計(jì)數(shù)器4.2.1 功能:4.2.2 計(jì)時(shí)器包括分計(jì)數(shù)、秒計(jì)數(shù),其中秒計(jì)數(shù)變化的頻率和1Hz時(shí)鐘信號(hào)的頻率是一樣的。在時(shí)鐘運(yùn)行的過(guò)程中有幾個(gè)時(shí)間

6、節(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 模塊2輸入輸出接口定義信號(hào)名稱方向位寬說(shuō)明clkin1系統(tǒng)時(shí)鐘rstin1系統(tǒng)復(fù)位信號(hào),低有效numout1計(jì)數(shù)輸出4.2.3 模塊詳細(xì)設(shè)計(jì)思路: 本設(shè)計(jì)中計(jì)時(shí)器模塊完全采用verilog語(yǔ)言描述,計(jì)時(shí)器的基本原理是利用兩個(gè)模60計(jì)數(shù)器,串連工作,同時(shí)采用一個(gè)時(shí)鐘統(tǒng)一控制。其程序如下: module counter_num(clk,num,rst);input clk;input rst;output3:0 num;reg3:0

7、 num=4d0;parameter COUNTER=10;initial beginnum=4d0;endalways (posedge clk or posedge rst)beginif(rst)beginnum=4d0;endelsebeginif(num=COUNTER-1)num=4d0;else num=num+1;endendEndmodule4.3 模塊3:數(shù)碼管4.3.1 功能: 動(dòng)態(tài)顯示時(shí)間數(shù)據(jù),前兩位表示分,后兩位表示秒。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ù)選擇器的作用是選

8、擇點(diǎn)亮的數(shù)碼管,16選4數(shù)據(jù)選擇器的作用是選擇對(duì)應(yīng)數(shù)碼管應(yīng)該輸出的數(shù)據(jù),7段顯示譯碼器的作用是對(duì)BCD碼進(jìn)行譯碼,便于數(shù)碼管顯示。分為控制部分和計(jì)數(shù)部分??刂颇K:module digit_num_fluid_display_4bit(clk,num0,num1,num2,num3,wela,dula,rst ); input clk; input rst; input3:0 num0; input3:0 num1; input3:0 num2; input3:0 num3; output3:0 wela; output7:0 dula; wire3:0 num; reg3:0 num_buf

9、f; wire1:0 pos; reg1:0 pos_buff; reg1:0 i=2b0; assign num=num_buff; assign pos=pos_buff; digit_led_display_1bit led_display ( .clk(clk), .num(num), .pos(pos), .dula(dula), .wela(wela) ); always(posedge clk or posedge rst) beginif(rst)begini=2b00;pos_buff=2b00;num_buff=0;endelsebegincase(i)2b00: begi

10、n pos_buff=2b00;num_buff=num0;end2b01:begin pos_buff=2b01;num_buff=num1;end2b10:begin pos_buff=2b10;num_buff=num2;end2b11: begin pos_buff=2b11;num_buff=num3;endendcasei=i+1;end endendmodule計(jì)數(shù)模塊:module digit_led_display_1bit( /display digit led 1bit clk, /clk of refresh num, /the num to display pos,

11、/the position dula, /duan bianma wela); input clk; input3:0 num; input1:0 pos; output7:0 dula; output3:0 wela; reg7:0 dula=8b1111_1111; reg3:0 wela=4b1111; parameter7:0 num_0=8b1100_0000, num_1=8b1111_1001, num_2=8b1010_0100, num_3=8b1011_0000, num_4=8b1001_1001, num_5=8b1001_0010, num_6=8b1000_0010

12、, num_7=8b1111_1000, num_8=8b1000_0000, num_9=8b1001_0000 ;always(posedge clk)begincase(pos)2b00: wela=4b1110;2b01: wela=4b1101;2b10: wela=4b1011;2b11: wela=4b0111;endcasecase(num)4b0000: dula=num_0;4b0001: dula=num_1;4b0010: dula=num_2;4b0011: dula=num_3;4b0100: dula=num_4;4b0101: dula=num_5;4b0110

13、: dula=num_6;4b0111: dula=num_7;4b1000: dula=num_8;4b1001: dula=num_9;endcaseendEndmodule5 仿真與測(cè)試及實(shí)驗(yàn)結(jié)果: 測(cè)試文件: module testclock;/ Inputsreg clk;reg rst;/ Outputswire 7:0 dula;wire 3:0 wela;/ Instantiate the Unit Under Test (UUT)clock uut (.clk(clk), .dula(dula), .wela(wela), .rst(rst);initial begin/ I

14、nitialize Inputsclk = 0;rst = 1;/ Wait 100 ns for global reset to finish#100;rst = 1b0; / Add stimulus hereend always #5 clk = clk; endmodule仿真時(shí)序圖:實(shí)驗(yàn)結(jié)果:在實(shí)驗(yàn)板上顯示如下:59分08秒:0分1秒:18分04秒:6 課程設(shè)計(jì)總結(jié)及設(shè)計(jì)心得 通過(guò)本次設(shè)計(jì),學(xué)習(xí)了FPGA的知識(shí),對(duì)FPGA的應(yīng)用有了一定的認(rèn)識(shí),本次設(shè)計(jì)的主要工作和成果如下 1、在學(xué)習(xí)了verilong語(yǔ)言的基礎(chǔ)上,能地運(yùn)用verilong語(yǔ)言進(jìn)行電路設(shè)計(jì)。 2、運(yùn)用自頂向下的設(shè)計(jì)思想

15、,對(duì)計(jì)時(shí)器各個(gè)功能模塊進(jìn)行分解設(shè)計(jì)。 3、進(jìn)行仿真驗(yàn)證了整個(gè)模塊功能的正確性。 4、將各個(gè)模塊連接,組成一個(gè)系統(tǒng),并在不斷調(diào)試中發(fā)現(xiàn)問(wèn)題,并及時(shí)解決。 5、在實(shí)驗(yàn)板上形成計(jì)時(shí)器的完整作品。個(gè)人心得: 1: 在此次實(shí)驗(yàn)的過(guò)程中我也有過(guò)挫折有不太清楚明了的地方,但是我并沒(méi)有氣餒,遇到困難我總是先自己尋找失敗的原因,仔細(xì)的檢查分析,請(qǐng)教同學(xué)、請(qǐng)教老師。在這一過(guò)程中我對(duì)FPGA的掌握有了更進(jìn)一步的見(jiàn)解, 我和我的組員分工合作,各自完成自己的模塊,大家相互學(xué)習(xí),相互提高。我相信自己定能在以后的實(shí)驗(yàn)課中能學(xué)到更多方面的知識(shí),成為一個(gè)全面發(fā)展的學(xué)踐型學(xué)生。2:通過(guò)參加這次實(shí)驗(yàn),我學(xué)到了很多東西,首先我通過(guò)聽

16、老師講述、查閱書本、網(wǎng)絡(luò)等多種渠道學(xué)習(xí)了FPGA的知識(shí)。在學(xué)習(xí)的過(guò)程中,我既體會(huì)到了學(xué)習(xí)的樂(lè)趣,又提高了合作能力,還懂得了對(duì)于我們?cè)谧鍪逻^(guò)程中發(fā)現(xiàn)的問(wèn)題要冷靜的思考,不要盲目的進(jìn)行。在這次設(shè)計(jì)過(guò)程中所得到的體會(huì),在過(guò)去是沒(méi)有過(guò)的,在書本中是也是無(wú)法找到的。我以后將更努力的學(xué)習(xí)這方面的知識(shí)。3: 在學(xué)習(xí)FPGA的整個(gè)過(guò)程中,我建立起對(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)步方向。嘗試著從硬件底層起進(jìn)行一些開發(fā)和設(shè)計(jì)。多動(dòng)手,增加實(shí)踐經(jīng)驗(yàn)。多借用成功者的經(jīng)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論