乒乓球游戲機EDA課程設(shè)計本_第1頁
乒乓球游戲機EDA課程設(shè)計本_第2頁
乒乓球游戲機EDA課程設(shè)計本_第3頁
乒乓球游戲機EDA課程設(shè)計本_第4頁
乒乓球游戲機EDA課程設(shè)計本_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

TOC\o"1-5"\h\z\o"CurrentDocument"1設(shè)計目的 1\o"CurrentDocument"2設(shè)計要求和任務(wù) 1\o"CurrentDocument"2.1設(shè)計任務(wù) 1\o"CurrentDocument"2.2設(shè)計要求 1\o"CurrentDocument"3總體設(shè)計思路及原理描述 1\o"CurrentDocument"4分層次方案設(shè)計及代碼描述 2\o"CurrentDocument"控制模塊的設(shè)計 2\o"CurrentDocument"cornal 模塊分析 2\o"CurrentDocument"cornal 模塊VHDL程序描述 3\o"CurrentDocument"4.2送數(shù)據(jù)模塊的設(shè)計 7\o"CurrentDocument"ch41a 模塊分析 7\o"CurrentDocument"ch41a模塊VHDL程序描述 7\o"CurrentDocument"4.3產(chǎn)生數(shù)碼管片選信號模塊的設(shè)計 8\o"CurrentDocument"sel模塊分析 8\o"CurrentDocument"sel模塊VHDL程序描述 9\o"CurrentDocument"4.4七段譯碼器模塊的設(shè)計 10\o"CurrentDocument"disp模塊分析 10\o"CurrentDocument"disp模塊VHDL程序描述 10\o"CurrentDocument"4.5頂層原理圖設(shè)計 11\o"CurrentDocument"5各模塊的時序仿真圖 12\o"CurrentDocument"總結(jié) 14\o"CurrentDocument"參考文獻(xiàn) 14乒乓游戲機1設(shè)計目的掌握熟悉的使用QuartusII9.1 軟件的原理圖繪制,程序的編寫,編譯以及仿真。體會使用EDA綜合過程中電路設(shè)計方法和設(shè)計思路的不同。掌握使用 EDA工具設(shè)計乒乓游戲機的的設(shè)計思路和設(shè)計方法。2設(shè)計要求和任務(wù)2.1設(shè)計任務(wù)設(shè)計一個乒乓球游戲機,該機模擬乒乓球比賽的基本過程和規(guī)則,并能自動裁判和幾分。2.2設(shè)計要求(1) 甲乙雙方各在不同的位置發(fā)球或擊球。(2)乒乓球的位置和移動方向由燈亮及依次點亮的方向決定, 球移動的速度為0.1-0.5秒移動一位。(3)11分為一局,甲乙雙方都應(yīng)設(shè)置各自的幾分牌,任何一方先記滿 11分,該方勝出。當(dāng)記分牌清零后,重新開始。3總體設(shè)計思路及原理描述由乒乓游戲機功能,用原理圖作為頂層模塊,再將底層劃分成四個小模塊來實現(xiàn):(1) cornal模塊:整個程序的核心,它實現(xiàn)了整個系統(tǒng)的全部邏輯功能;(2) ch41a模塊:在數(shù)碼的片選信號時,送出相應(yīng)的數(shù)據(jù);(3) sei模塊:產(chǎn)生數(shù)碼管的片選信號;(4) disp模塊:7段譯碼器。圖3.1結(jié)構(gòu)層次圖4分層次方案設(shè)計及代碼描述控制模塊的設(shè)計cornal 模塊分析a發(fā)球一、在范圍內(nèi)、b沒有接到球,a加1分,將燈光清零00000000、b接到了球,則燈光為0&【7位】二、在b方出界了1、如果b沒有接到球,則a加分2、如果b接到了球,則燈光為0&【7位】b發(fā)球一、在范圍內(nèi)1、 a沒有接到球,b加1分,并將燈光清零000000002、 a接到了球,則燈光計分為【7位】&0二、在a方出界了1、 a沒有接到球,則b加分2、 a接到了球,則燈光計分為【7位】&0表示球所af,aj,bf,bj分別為a方發(fā)球鍵和接球鍵,b方發(fā)球鍵和接球鍵,shift在的位置。表示球所1i -clr——3fah[3..O]——al[3..a]—i二=bfbh[J..O]——bj——elk3>*in—1h卅inirst"圖4.1conal模塊原理圖cornal模塊VHDL程序描述Libraryieee;Useieee.std」ogic_1164.all;Useieee.std_logic_unsigned.all;EntitycornalisPort(clr,af,aj,bf,bj,clk:instd」ogic;Shift:outstd」ogic_vector(7downto0);Ah,al,bh,bl:outstd」ogic_vector(3downto0);Awin,bwin:outstd_logic);Endcornal;ArchitecturebahaveofcornalisSignalamark,bmark:integer;BeginProcess(clr,clk)Variablea,b:std_logic;Variableshe:std」ogic_vector(7downto0);BeginIfclr='O'thena:='O';b:='O';she:=”O(jiān)OOOOOO0'amark<=0;bmark<=0;elsifclk'eventandclk='1'thenifa='0'andb='0'andaf='0'then--a方發(fā)球a:='1';she;=”10000000';elsifa='0'andb='0'thenbf='0'then--b方發(fā)球b:='1';she:=”00000001”elsifa='1'andb='0'then--a 方發(fā)球后ifshe>8thenifbj='0'then --b方過網(wǎng)擊球amark<=amark+1;--a 方^口一分a:='0';b:='0';she:=”00000000';elseshe:='0'&she(7downto1);--b 方?jīng)]有擊球endif;elsifshe=0then-- 球從b方出界amark<=amark+1;--a 方^口一分a:='0';b:='0';elseifbj='0'then--b 方正常擊球a:='0';b:='1';elseshe:='0'&she(7downto1);--b 方?jīng)]有擊球endif;endif;elsifa='O'andb='1'then--b方發(fā)球ifshe<16andshe/=Othenifaj='O'thenbmark<=bmark+1;TOC\o"1-5"\h\za:= 'O';b:= 'O';she:=”0000000O';elseshe:=she(6downto0)& 'O';endif;elsifshe=Othenbmark<=bmark+1;a:='O';b:='O';elseifaj='O'thena:='1';b:='O';elseshe:=she(6downto0)& 'O';endif;endif;endif;endif;shift<=she;endprocess;process(clk,clr,amark,bmark)variableaha,ala,bha,bla:std_logic_vector(3downto0);variabletmp1,tmp2:integer;variablet1,t2:std」ogic;beginifclr='0'then -- 清零aha:=”0000”;ala:=”0000”;bha:=”0000”;bla:=”0000”;tmp1:=0;tmp2:=0;t1:= '0';t2:= '0';elsifelk'eventandclk='1'thenifaha=”0001”andala=”0001”then--a方得分達(dá)到11分,則保持aha:=”0001”ala:=”0001”t1:='1';elsifbha=”0001”andbla=”0001”then--b 方得分達(dá)到11分,則保持bha:= ”0001”;bla:= ”0001”;t2:= '1';elsifamark>tmp1thenifala=”1001”thenala:=”0000”;aha:=aha+1;tmp1:=tmp1+1;elseala:=ala+1;tmp1:=tmp1+1;endif;elsifbmark>tmp2thenifbla=”1001”thenbla:=”0000”;bha:=bha+1;

tmp2:=tmp2+1;elsebla:=bla+1;tmp2:=tmp2+1;endif;endif;endif;al<=ala;bl<=bla;ah<=aha;bh<=bha;awinv=t1;bwinv=t2;endprocess;endbehave;4.2送數(shù)據(jù)模塊的設(shè)計ch41a 模塊分析100101000其它 ?do ?dl ?d2 ?d3f— O)—idi[3..0]L業(yè)口o]<ra[3..DJin^t圖4.2ch41a模塊分析及原理圖ch41a模塊VHDL程序描述LibraryIEEE;

UseIEEE.std_logic_1164.all;Entitych41aisPort(sel:instd_logic_vector(2downto0);D0,d1,d2,d3:instd_logic_vector(3downto0);Q:outstd_logic_vector(3downto0));Endch41a;Architecturebehaveofch41aisBeginProcess(sel)BeginCaseselisWhen”100”=>qv=dO;When”101”=>q<=d1;When”000”=>q<=d2;Whenothers=>qv=d3;Endcase;Endprocess;Endbehave;4.3產(chǎn)生數(shù)碼管片選信號模塊的設(shè)計sel模塊分析三三?三三?—1elk&ell[2.3]000—1―100―101圖4.3sel模塊分析及原理圖432sei模塊VHDL程序描述Libraryieee;Useieee.std」ogic_1164.all;Useieee.std_logic_unsigned.all;EntityselisPort(clk:instd_logic;Sell:outstd」ogic_vector(2downto0));Endsel;ArchitecturebehaveofselisBeginProcess(clk)Variabletmp:std_logic_vector(2downto0);BeginIfclk'eventandclk='1'thenIftmp= ”000”thenTmp:= ”001”;Elsiftmp=”001”thenTmp:=”100”;ElsifTmp=”100”thenTmp:=”101”;Elsiftmp=”101”thenTmp:=”000”;Endif;Endif;Sell<=tmp;Endprocess;Endbehave;

4.4 七段譯碼器模塊的設(shè)計i=isp—<14 43.01disp 模塊分析i=isp—<14 43.010 0000― 0111111L 0001— 0000110W10—k 10110110011—? 1M111L0100―11001100101― 11011010110― 1111101C111— 0100111圖4.4disp 模塊分析及原理disp模塊VHDL程序描述Libraryieee;Useieee.std」ogic_1164.all;EntitydispisPort(d:instd_logic_vector(3downto0);Q:outstd_logic_vector(6downto0));Enddisp;ArchitecturebehaveofdispisBeginProcess(d)BeginCasedisWhen0000”=>qv仝0111111”When0001"=>qv仝0000110'When0010”=>qv仝1011011”When0011”=>qv仝1001111”When0100”=>qv仝1100110'When0101”=>qv仝1101101”

When0110”=>qv仝1111101”When0111”=>qv仝0100111”When1000”=>qv仝1111111”Whenothers=>q<=”1101111”Endcase;Endprocess;Endbehave;4.5頂層原理圖設(shè)計Nad色Valuea,t15.08Nad色Valuea,t15.08m呼0clrAI呼】gfAL町kIM3b£AL巧AIIf*5dkAIselkIf10skiftH00SB田1H3F<>24awifiH005bwinMiO三承nrE mir-nnr?MasteilimeBar15.075nt十Pointer.2B0.E9msInerwM:2EQ.E9msStait:End.257.401ms287ns425.113 508.06 592.946ns676.832miI I ■ I II5各模塊的時序仿真圖圖5.1為A方兩次發(fā)球,B方?jīng)]有接到球,A方得到2分的仿真波形圖arLnnnnrLAnnnnnnn_nTmTLnLnrLrLn圖5.1仿真波形圖圖5.2所示為A方發(fā)球,B方提前擊球的情況,此時,A方得一分。圖中還顯示了A方發(fā)球,B方在規(guī)定的時刻沒有接到球的情況,此時, A方又得一分。

圖5.3所示為A方發(fā)球,在恰當(dāng)?shù)臅r候B方接到球,當(dāng)球回到A方時,A方又接到球,但B方再也沒有接到球的仿真波形。圖5.4所示為A方得分增加到11分的情況,此時awin輸出高電平,輸出分?jǐn)?shù)保持不變。當(dāng)清零信號按下時,得分清為零,awin輸出恢復(fù)低電平,又可以開始新的一局比賽。15075ns*Foihlef:¥s1iha15.08Iclr15075ns*Foihlef:¥s1iha15.08IclrA1El北A1ijA1bfA1W4bjA1elkA1sclkH10shiftKOO祁怡E)QIf3F0-24酬inHObvinHD。爼a諂iHD4nr IMasterlime&ar:1.3sStartErd殊1.332:哪5 】.忖"坪2^_rr_n"ToXTo—,-n_r^^LrT_TL_r-Lrx_n^^^^LTTTL^nnr圖5.4仿真波形圖6總結(jié)當(dāng)知道我做的這個設(shè)計是乒乓游戲機的時候,我完全沒有了頭緒,不知道這到底會是一個怎樣的設(shè)計

溫馨提示

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

評論

0/150

提交評論