基于EDA的智力搶答器的課程設(shè)計(jì)說明書_第1頁
基于EDA的智力搶答器的課程設(shè)計(jì)說明書_第2頁
基于EDA的智力搶答器的課程設(shè)計(jì)說明書_第3頁
基于EDA的智力搶答器的課程設(shè)計(jì)說明書_第4頁
基于EDA的智力搶答器的課程設(shè)計(jì)說明書_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、基于EDA的智力搶答器的課程設(shè)計(jì)說明書目錄摘要1、課程設(shè)計(jì)目的與要求12、課程設(shè)計(jì)原理13、 課程設(shè)計(jì)容.23.1軟件整體設(shè)計(jì)33.2總體設(shè)計(jì)電路33.3模塊設(shè)計(jì)和相應(yīng)模塊程序43.3.1搶答鑒別模塊43.3.2計(jì)時(shí)模塊.73.3.3數(shù)據(jù)選擇模塊和譯碼模塊.9 3.3.4仿真與仿真結(jié)果分析.11結(jié)論與致12參考文獻(xiàn)13附錄.14摘 要 搶答器是為智力競賽參賽者答題時(shí)進(jìn)行搶答而設(shè)計(jì)的一種優(yōu)先判決器電路,競賽者可以分為若干組,搶答時(shí)各組對(duì)主持人提出的問題要在最短的時(shí)間做出判斷,并按下?lián)尨鸢存I回答問題。當(dāng)?shù)谝粋€(gè)人按下按鍵后,則在顯示器上顯示該組的,同時(shí)電路將其他各組按鍵封鎖,使其不起作用。若搶答時(shí)間

2、無人搶答,警報(bào)器發(fā)出警報(bào)?;卮鹜陠栴}后,由主持人將所有按鍵恢復(fù),重新開始下一輪搶答。 因此要完成搶答器的邏輯功能,該電路至少應(yīng)包括搶答鑒別模塊、計(jì)時(shí)模塊、選擇模塊和報(bào)警模塊組成。關(guān)鍵詞:搶答鑒別 封鎖 計(jì)時(shí) 報(bào)警 Verilog HDL24 / 271、課程設(shè)計(jì)目的與要求根據(jù)設(shè)計(jì)要求分析智力搶答器的功能,掌握設(shè)計(jì)中所涉與到搶答鎖存;搶答計(jì)時(shí);數(shù)據(jù)選擇;譯碼顯示、Verilog HDL語言的編程技術(shù),闡明設(shè)計(jì)原理。設(shè)計(jì)供4個(gè)代表隊(duì)比賽用的智力搶答器,技術(shù)參數(shù)和設(shè)計(jì)要求:(1)系統(tǒng)復(fù)位和搶答控制開關(guān)。由主持人控制。(2) 復(fù)位后,主持人宣讀試題,按下開始鍵,發(fā)動(dòng)開始搶答命令,啟動(dòng)搶答限時(shí)計(jì)數(shù)器。若

3、在按下開始按鍵前有人搶答,犯規(guī)電路將發(fā)出聲光提示,顯示犯規(guī)組號(hào)。(3) 搶答器具有鎖存與顯示功能。在限時(shí),選手按動(dòng)按鈕,鎖存相應(yīng)的編號(hào),并在LED數(shù)碼管上顯示。若限時(shí)到,則聲光顯示。(4)搶答器具有定時(shí)搶答功能。如果定時(shí)時(shí)間已到,無人搶答,本次搶答無效,系統(tǒng)報(bào)警并禁止搶答,定時(shí)顯示器上顯示00。2、 課程設(shè)計(jì)原理2.1功能分析 搶答器具有第一信號(hào)鑒別和鎖存功能,使除第一搶答者外的按鈕無效;設(shè)置一個(gè)主持人“復(fù)位”按鈕,主持人復(fù)位后,開始搶答,第一信號(hào)鑒別鎖存電路得到信號(hào)后,用LED數(shù)碼管顯示搶答組別,蜂鳴器發(fā)出23s的音響。2.2設(shè)計(jì)思路此設(shè)計(jì)問題可分為第一信號(hào)鑒別、鎖存模塊、答題計(jì)時(shí)電路模塊、

4、計(jì)分電路模塊和掃描顯示模塊四個(gè)模塊構(gòu)成。此設(shè)計(jì)問題的關(guān)鍵是準(zhǔn)確判斷出第一搶答者并將其鎖存,實(shí)現(xiàn)的方法可使用觸發(fā)器或鎖存器,在得到第一信號(hào)后將輸入封鎖,使其它組的搶答信號(hào)無效。形成第一搶答信號(hào)后,用編碼、譯碼與數(shù)碼顯示電路顯示第一搶答者的組別,用第一搶答信號(hào)控制一個(gè)具有2種工作頻率交替變化的音頻振蕩器工作,推動(dòng)揚(yáng)聲器發(fā)出2種笛音音響。計(jì)分電路采用十進(jìn)制加減計(jì)數(shù)器、數(shù)碼管顯示,由于每次都是加減10分,所以個(gè)位始終為零,只要十位、百位進(jìn)行加減運(yùn)算即可。其流程圖如下:K1K2K3數(shù)碼管片選信號(hào)倒計(jì)時(shí)模塊數(shù)碼管譯碼電路蜂鳴器同步信號(hào)數(shù)碼管顯示模塊鎖存電路按鍵1按鍵2轉(zhuǎn)換 K4圖2.2 四路搶答器原理3、

5、 課程設(shè)計(jì)容3.1軟件整體設(shè)計(jì)開始搶答? Y答題時(shí)間到?進(jìn)行答題計(jì)時(shí)已有人搶? Y N報(bào)警后,計(jì)時(shí)清零搶答重新開始 N Y 判斷是幾號(hào)選手搶答,并將對(duì)應(yīng)的LED燈點(diǎn)亮,蜂鳴提示。搶答時(shí)間計(jì)時(shí)內(nèi)無人則重新開始。圖3.1 軟件設(shè)計(jì)整體框架3.2總體設(shè)計(jì)電路3.3模塊設(shè)計(jì)和相應(yīng)模塊程序第一信號(hào)鑒別鎖存模塊的原理: 在得到第一信號(hào)后,準(zhǔn)確判斷出第一搶答者并將其鎖存; 將輸入端封鎖,使其他組的搶答信號(hào)無效。采用鎖存器74175實(shí)現(xiàn),如右圖所示。3.3.1搶答鑒別模塊信號(hào)鎖存電路信號(hào)定義:CLK:時(shí)鐘信號(hào);K1、K2、K3、K4:搶答按鈕信號(hào);out1、out2、out3、out4:搶答LED顯示信號(hào);j

6、udge:裁判員搶答開始信號(hào);buzzout:示警輸出信號(hào);flag:答題是否超時(shí)的標(biāo)志;module sel(clk,k1,k2,k3,k4,judge, seg,sl,out1,out2,out3,out4,out5,buzzout);input clk,k1,k2,k3,k4,judge;output out1,out2,out3,out4,out5,buzzout;reg out1,out2,out3,out4,out5,block,buzzout;output7:0 seg;output3:0 sl;reg32:0 count;reg27:0 counter;reg7:0 seg_r

7、eg;reg3:0 sl_reg;reg flag;always(posedge clk)begincounter=counter+1;/裁判員發(fā)開始搶答信號(hào),初始化指示燈為滅、搶答的互斥量為0,蜂鳴器禁聲if(!judge) beginout1,out2,out3,out4,out5,block<=6'b111110;count<=0;flag=0;endelsebeginif(!k1)/第一組別按鍵是否按下beginif(!block)beginout1=0;block=1;/封鎖別組搶答信號(hào)count=1;/第一組已按下按鈕,可啟動(dòng)答題計(jì)時(shí)器endendelse if

8、(!k4)/第四組別按鍵是否按下beginif(!block)beginout4=0;block=1;count=1;endendseg_reg=8'hc0;if(count!=0)beginif(!out1)seg_reg=8'hf9;if(!out2)seg_reg=8'ha4;if(!out3)seg_reg=8'hb0;if(!out4)seg_reg=8'h99;endsl_reg =4'b0111;if(count!=0)beginif(count=32'h608f3d00) /如果答題時(shí)間到了30s,亮犯規(guī)燈begincou

9、nt=0;out5=0;flag=1'b1; /置蜂鳴器發(fā)聲標(biāo)志endelsebegincount=count+1;endendendend/蜂鳴器發(fā)聲always(counter7)if(flag=1) buzzout=!(counter11&counter22&counter27);else buzzout=1'b0;assign seg=seg_reg;assign sl=sl_reg;endmodule搶答鑒別模塊圖搶答鑒別模塊用來準(zhǔn)確直觀地判斷K1,K2,K3,K4四組搶答者誰最先按下按鈕,并為顯示端送出信號(hào),通過數(shù)顯和蜂鳴等途徑使觀眾能夠清楚地知道是

10、哪一組搶答成功,是整個(gè)系統(tǒng)的核心部分。同時(shí)組別顯示端為下一模塊輸入信號(hào),以方便主持人為該組搶答成功者進(jìn)行加減分的操作。3.3.2計(jì)時(shí)模塊module jsq(out,clk,reset); output out;reg 3:0 qh;reg 3:0 ql;reg out;input clk,reset;always (posedge clk or negedge reset)beginout<=0;if(reset)qh,ql<=0;else begin if(qh,ql=8'h03) beginqh,ql<=0;out<=1; end else begin i

11、f(out) begin if(ql=9) begin ql<=0;qh<=qh+1; end else begin ql<=ql+1; end end end end endendmodule計(jì)時(shí)模塊圖在這個(gè)模塊中主要實(shí)現(xiàn)搶答過程中的計(jì)時(shí)功能,在有搶答開始后進(jìn)行30秒的倒計(jì)時(shí),并且在30秒倒計(jì)時(shí)后無人搶答顯示超時(shí)并報(bào)警。系統(tǒng)復(fù)位信號(hào)reset; 3.3.3數(shù)據(jù)選擇模塊和譯碼模塊module sell(in1,in2,in3,in4,in5,in6,in7,in8,clk,ms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g);input

12、 clk;input 3:0 in1,in2,in3,in4,in5,in6,in7,in8;output ms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g;reg ms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g;reg 3:0 temp,flag;always(posedge clk)beginms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8=8'b00000000;flag=flag+1;case(flag)0:begin temp=in1;ms1=1;end1:begin temp

13、=in2;ms2=1;end2:begin temp=in3;ms3=1;end3:begin temp=in4;ms4=1;end4:begin temp=in5;ms5=1;end5:begin temp=in6;ms6=1;end6:begin temp=in7;ms7=1;end7:begin temp=in8;ms8=1;endendcasecase(temp)4'd0:a,b,c,d,e,f,g=7'b1111110;4'd1:a,b,c,d,e,f,g=7'b0110000;4'd2:a,b,c,d,e,f,g=7'b1101101

14、;4'd3:a,b,c,d,e,f,g=7'b1111001;4'd4:a,b,c,d,e,f,g=7'b0110011;4'd5:a,b,c,d,e,f,g=7'b1011011;4'd6:a,b,c,d,e,f,g=7'b1011111;4'd7:a,b,c,d,e,f,g=7'b1110000;4'd8:a,b,c,d,e,f,g=7'b1111111;4'd9:a,b,c,d,e,f,g=7'b1111011;default:a,b,c,d,e,f,g=7'b1111

15、110;endcaseendendmodule在這個(gè)模塊中主要實(shí)現(xiàn)搶答過程中將BCD碼轉(zhuǎn)換成7段的功能。3.4仿真與仿真結(jié)果分析搶答鑒別計(jì)時(shí)在這個(gè)模塊中主要實(shí)現(xiàn)搶答過程中的計(jì)時(shí)功能,在有搶答開始后進(jìn)行30秒的倒計(jì)時(shí),并且在30秒倒計(jì)時(shí)后無人搶答顯示超時(shí)并報(bào)警。其中有搶答時(shí)鐘信號(hào)clk2;系統(tǒng)復(fù)位信號(hào)rst;搶答使能信號(hào)s;搶答狀態(tài)顯示信號(hào)states;無人搶答警報(bào)信號(hào)warn;計(jì)時(shí)中止信號(hào)stop;計(jì)時(shí)十位和個(gè)位信號(hào)tb,ta。報(bào)警在這個(gè)模塊中主要實(shí)現(xiàn)搶答過程中的報(bào)警功能,當(dāng)主持人按下控制鍵,有限時(shí)間如果人搶答或是計(jì)數(shù)到時(shí)蜂鳴器開始報(bào)警,有效電平輸入信號(hào)i;狀態(tài)輸出信號(hào)q;計(jì)數(shù)脈沖clk。譯碼

16、在這個(gè)模塊中主要實(shí)現(xiàn)搶答過程中將BCD碼轉(zhuǎn)換成7段的功能。5、結(jié)論與致這次EDA課程設(shè)計(jì)讓我加深理解了VHDL程序設(shè)計(jì)的步驟和原理。我們的題目是四路搶答器設(shè)計(jì),剛開始一頭霧水,通過查資料和借鑒前輩的作品,我一步一步從迷茫到困惑再到柳暗花明,我發(fā)現(xiàn)做學(xué)問要知其然知其所以然,靜下心來,仔細(xì)研究,才能有所發(fā)現(xiàn)。總的來說,這次設(shè)計(jì)的搶答器還是比較成功的,在設(shè)計(jì)中遇到了很多問題,最后在老師的辛勤的指導(dǎo)下,終于迎刃而解,有點(diǎn)小小的成就感,終于覺得平時(shí)所學(xué)的知識(shí)有了實(shí)用的價(jià)值,達(dá)到了理論與實(shí)際相結(jié)合的目的,不僅學(xué)到了不少知識(shí),而且鍛煉了自己的能力。 參考文獻(xiàn)1 黃仁欣EDA技術(shù)實(shí)用教程:清華大學(xué),20062

17、 松,黃繼業(yè)EDA技術(shù)與VHDL:清華大學(xué),20093 江國強(qiáng)編著EDA技術(shù)與應(yīng)用(第三版).:電子工業(yè),20104 夏宇聞編著Verilog HDL數(shù)字系統(tǒng)設(shè)計(jì)教程.:航空航天大學(xué),20085 周祖成,程曉軍,馬卓釗編著數(shù)字電路與系統(tǒng)教學(xué)實(shí)驗(yàn)教程:科學(xué),20106 周潤景,良碧基于Quartus II 的數(shù)字系統(tǒng)Verilog HDL設(shè)計(jì)實(shí)例詳解:電子工業(yè),20107 (美國)Sanir Palnitkar 譯者:夏宇聞 胡燕祥 刁嵐松Verilog HDL數(shù)字設(shè)計(jì)與綜合(第2版):電子工業(yè),20098 云創(chuàng)工作室Verilog HDL程序設(shè)計(jì)與實(shí)踐:人民郵電,20099 福奇,波Veril

18、og HDL應(yīng)用程序設(shè)計(jì)實(shí)例精講:電子工業(yè),200910 延偉,金巖,愛學(xué)verilog hdl程序設(shè)計(jì)實(shí)例詳解:人民郵電,2008附 錄附錄一:系統(tǒng)設(shè)計(jì)程序/=智力搶答器=/= /函數(shù)定義module sel(clk,k1,k2,k3,k4,judge, seg,sl,out1,out2,out3,out4,out5,buzzout);input clk,k1,k2,k3,k4,judge;output out1,out2,out3,out4,out5,buzzout;reg out1,out2,out3,out4,out5,block,buzzout;output7:0 seg;outpu

19、t3:0 sl;reg32:0 count;reg27:0 counter;reg7:0 seg_reg;reg3:0 sl_reg;reg flag;always(posedge clk)begincounter=counter+1;/裁判員發(fā)開始搶答信號(hào),初始化指示燈為滅、搶答的互斥量為0,蜂鳴器禁聲if(!judge) beginout1,out2,out3,out4,out5,block<=6'b111110;count<=0;flag=0;endelsebeginif(!k1)/第一組別按鍵是否按下beginif(!block)beginout1=0;block=

20、1;/封鎖別組搶答信號(hào)count=1;/第一組已按下按鈕,可啟動(dòng)答題計(jì)時(shí)器endendelse if(!k2)/第二組別按鍵是否按下beginif(!block)beginout2=0;block=1;count=1;endendelse if(!k3)/第三組別按鍵是否按下beginif(!block)beginout3=0;block=1;count=1;endendelse if(!k4)/第四組別按鍵是否按下beginif(!block)beginout4=0;block=1;count=1;endendseg_reg=8'hc0;if(count!=0)beginif(!ou

21、t1)seg_reg=8'hf9;if(!out2)seg_reg=8'ha4;if(!out3)seg_reg=8'hb0;if(!out4)seg_reg=8'h99;endsl_reg =4'b0111;if(count!=0)beginif(count=32'h608f3d00) /如果答題時(shí)間到了30s,亮犯規(guī)燈begincount=0;out5=0;flag=1'b1; /置蜂鳴器發(fā)聲標(biāo)志endelsebegincount=count+1;endendendend/蜂鳴器發(fā)聲always(counter7)if(flag=1)

22、 buzzout=!(counter11&counter22&counter27);else buzzout=1'b0;assign seg=seg_reg;assign sl=sl_reg;endmodule/答題計(jì)時(shí)電路模塊module jsq(out,clk,reset); output out;reg 3:0 qh;reg 3:0 ql;reg out;input clk,reset;always (posedge clk or negedge reset)beginout<=0;if(reset)qh,ql<=0;else beginif(qh,q

23、l=8'h03)beginqh,ql<=0;out<=1;endelse beginif(out)begin if(ql=9)begin ql<=0;qh<=qh+1;endelse beginql<=ql+1;end endendendendendmodule/計(jì)分電路模塊和掃描顯示模塊module jfq(clk,qd1,qd2,qd3,qd4,yes,no,reset,df1l,df1h,df2l,df2h,df3l,df3h,df4l,df4h);input clk,qd1,qd2,qd3,qd4,yes,no,reset;output3:0df1

24、l,df1h,df2l,df2h,df3l,df3h,df4l,df4h;reg3:0df1l,df1h,df2l,df2h,df3l,df3h,df4l,df4h;always(posedge clk)if(reset)df1l,df1h,df2l,df2h,df3l,df3h,df4l,df4h=32'h10101010;else if(yes)begin/if(qd1)beginif(df1l=9)begindf1l=0;if(df1h=9)df1h=0;elsedf1h=df1h+1;endelsedf1l=df1l+1;end/if(qd2)beginif(df2l=9)be

25、gindf2l=0;if(df2h=9)df2h=0;elsedf2h=df2h+1;endelsedf2l=df2l+1;end/if(qd3)beginif(df3l=9)begindf3l=0;if(df3h=9)df3h=0;elsedf3h=df3h+1;endelsedf3l=df3l+1;end/if(qd4)beginif(df4l=9)begindf4l=0;if(df4h=9)df4h=0;elsedf4h=df4h+1;endelsedf4l=df4l+1;end/endelse if(no)begin/if(qd1)beginif(df1l!=4'b0000)d

26、f1l=df1l-1;else if(df1h!=4'b0000)begindf1h=df1h-1;df1l=9;endend/if(qd2)beginif(df2l!=4'b0000)df2l=df2l-1;else if(df2h!=4'b0000)begindf2h=df2h-1;df2l=9;endend/if(qd3)beginif(df3l!=4'b0000)df3l=df3l-1;else if(df3h!=4'b0000)begindf3h=df3h-1;df3l=9;endend/if(qd4)beginif(df4l!=4'b0000)df4l=df4l-1;else if(df4h!=4'b0000)begindf4h=df4h-1;df4l=9;endend/endendmodule/選擇模塊modulesel(in1,in2,in3,in4,in5,in6,in7,in8,clk,ms1,ms2,ms3,ms4,ms5,ms6,ms7,ms8,a,b,c,d,e,f,g);input clk;input 3:0 in1,in2,in3,in4,i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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)論