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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

TOC\o"1-5"\h\z\o"CurrentDocument"1設計目的 1\o"CurrentDocument"2設計要求和任務 1\o"CurrentDocument"2.1設計任務 1\o"CurrentDocument"2.2設計要求 1\o"CurrentDocument"3總體設計思路及原理描述 1\o"CurrentDocument"4分層次方案設計及代碼描述 2\o"CurrentDocument"控制模塊的設計 2\o"CurrentDocument"cornal 模塊分析 2\o"CurrentDocument"cornal 模塊VHDL程序描述 3\o"CurrentDocument"4.2送數據模塊的設計 7\o"CurrentDocument"ch41a 模塊分析 7\o"CurrentDocument"ch41a模塊VHDL程序描述 7\o"CurrentDocument"4.3產生數碼管片選信號模塊的設計 8\o"CurrentDocument"sel模塊分析 8\o"CurrentDocument"sel模塊VHDL程序描述 9\o"CurrentDocument"4.4七段譯碼器模塊的設計 10\o"CurrentDocument"disp模塊分析 10\o"CurrentDocument"disp模塊VHDL程序描述 10\o"CurrentDocument"4.5頂層原理圖設計 11\o"CurrentDocument"5各模塊的時序仿真圖 12\o"CurrentDocument"總結 14\o"CurrentDocument"參考文獻 14乒乓游戲機1設計目的掌握熟悉的使用QuartusII9.1 軟件的原理圖繪制,程序的編寫,編譯以及仿真。體會使用EDA綜合過程中電路設計方法和設計思路的不同。掌握使用 EDA工具設計乒乓游戲機的的設計思路和設計方法。2設計要求和任務2.1設計任務設計一個乒乓球游戲機,該機模擬乒乓球比賽的基本過程和規則,并能自動裁判和幾分。2.2設計要求(1) 甲乙雙方各在不同的位置發球或擊球。(2)乒乓球的位置和移動方向由燈亮及依次點亮的方向決定, 球移動的速度為0.1-0.5秒移動一位。(3)11分為一局,甲乙雙方都應設置各自的幾分牌,任何一方先記滿 11分,該方勝出。當記分牌清零后,重新開始。3總體設計思路及原理描述由乒乓游戲機功能,用原理圖作為頂層模塊,再將底層劃分成四個小模塊來實現:(1) cornal模塊:整個程序的核心,它實現了整個系統的全部邏輯功能;(2) ch41a模塊:在數碼的片選信號時,送出相應的數據;(3) sei模塊:產生數碼管的片選信號;(4) disp模塊:7段譯碼器。圖3.1結構層次圖4分層次方案設計及代碼描述控制模塊的設計cornal 模塊分析a發球一、在范圍內、b沒有接到球,a加1分,將燈光清零00000000、b接到了球,則燈光為0&【7位】二、在b方出界了1、如果b沒有接到球,則a加分2、如果b接到了球,則燈光為0&【7位】b發球一、在范圍內1、 a沒有接到球,b加1分,并將燈光清零000000002、 a接到了球,則燈光計分為【7位】&0二、在a方出界了1、 a沒有接到球,則b加分2、 a接到了球,則燈光計分為【7位】&0表示球所af,aj,bf,bj分別為a方發球鍵和接球鍵,b方發球鍵和接球鍵,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:=”OOOOOOO0'amark<=0;bmark<=0;elsifclk'eventandclk='1'thenifa='0'andb='0'andaf='0'then--a方發球a:='1';she;=”10000000';elsifa='0'andb='0'thenbf='0'then--b方發球b:='1';she:=”00000001”elsifa='1'andb='0'then--a 方發球后ifshe>8thenifbj='0'then --b方過網擊球amark<=amark+1;--a 方^口一分a:='0';b:='0';she:=”00000000';elseshe:='0'&she(7downto1);--b 方沒有擊球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 方沒有擊球endif;endif;elsifa='O'andb='1'then--b方發球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方得分達到11分,則保持aha:=”0001”ala:=”0001”t1:='1';elsifbha=”0001”andbla=”0001”then--b 方得分達到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送數據模塊的設計ch41a 模塊分析100101000其它 ?do ?dl ?d2 ?d3f— O)—idi[3..0]L業口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產生數碼管片選信號模塊的設計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 七段譯碼器模塊的設計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頂層原理圖設計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方兩次發球,B方沒有接到球,A方得到2分的仿真波形圖arLnnnnrLAnnnnnnn_nTmTLnLnrLrLn圖5.1仿真波形圖圖5.2所示為A方發球,B方提前擊球的情況,此時,A方得一分。圖中還顯示了A方發球,B方在規定的時刻沒有接到球的情況,此時, A方又得一分。

圖5.3所示為A方發球,在恰當的時候B方接到球,當球回到A方時,A方又接到球,但B方再也沒有接到球的仿真波形。圖5.4所示為A方得分增加到11分的情況,此時awin輸出高電平,輸出分數保持不變。當清零信號按下時,得分清為零,awin輸出恢復低電平,又可以開始新的一局比賽。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總結當知道我做的這個設計是乒乓游戲機的時候,我完全沒有了頭緒,不知道這到底會是一個怎樣的設計

溫馨提示

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

評論

0/150

提交評論