freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于vhdl的乒乓球游戲電路(參考版)

2024-12-10 01:18本頁面
  

【正文】 139。139。) then if(qqout0010)THEN qqout=0000。event and clk=39。039。) then qqout=0000。 begin process(clr,clk) 36 begin if(clr=39。 end cou4。 cout:out std_logic。 use 。 失球計數(shù)器的高位計數(shù)模塊 (COU4)設(shè)計 失球計數(shù)器的高位計數(shù)模塊 圖 數(shù)器高位計數(shù)模塊圖 CLK 為系統(tǒng)的時鐘脈沖 CLR 為系統(tǒng)復(fù)位信號 COUT 為進(jìn)位信號 QOUT 為四進(jìn)制計數(shù)器 失球計數(shù)器的高位計數(shù)模塊 VHDL 程序 文件名: 四進(jìn)制計數(shù)器用來做失球高位計數(shù) library ieee。當(dāng) clr=0 時,系統(tǒng)開始計數(shù),當(dāng)計數(shù)到九個上升沿后系統(tǒng)又開始從零開始計數(shù),相當(dāng)于一個十進(jìn)制加法計數(shù)器。 失球計數(shù)器的低位計數(shù)模塊程序仿真圖 圖 ? 仿真結(jié)果分析 打開波形仿真編 輯器:根據(jù) cou10 程序可知, clk 為系統(tǒng)的時鐘脈沖, clr 為系統(tǒng)復(fù)位信號。 end process。 end if。039。139。139。) then if(qqout1000)THEN qqout=0000。event and clk=39。039。) then qqout=0000。 begin process(clr,clk) begin if(clr=39。 end cou10。 cout:out std_logic。 use 。 失球計數(shù)器的低位計數(shù)模塊 (COU10)設(shè)計 失球計數(shù)器的低位計數(shù)模塊 圖 CLK 為系統(tǒng)的時鐘脈沖 CLR 為系統(tǒng)復(fù)位信號 COUT 為進(jìn)位信號 QOUT 為 失球計數(shù)器 失球計數(shù)器的低位計數(shù)模塊 VHDL 程序 文件名: 十進(jìn)制計數(shù)器用來做失球低位計數(shù) library ieee。當(dāng)我們對 ball, , bclk 和 serve 設(shè)置好適當(dāng)?shù)牟ㄐ魏?,進(jìn)行仿真,從圖中我們可以清楚的看到:當(dāng) =?1?時 ,即左拍或右拍處在發(fā)球成功狀態(tài)時且乒乓球過中點, counclk 和 serclk 復(fù)位,此時對方處在接球狀態(tài),當(dāng)乒乓球剛好落在接球點上時,接球成功 serclk=?1?,否則 serclk=?0?且失球計數(shù)時鐘信號 couclk=?1?。 end。 end if。 end if。couclk=39。乒乓球剛落在接球點上,接球成功 else serclk=39。)then serclk=39。系統(tǒng)處于發(fā)球狀態(tài)時,發(fā)球成功 else系 統(tǒng)處于接球狀態(tài) if(ball=39。)then serclk=39。)then球拍接球時 if(serve=39。event and bclk=39。039。039。139。正確接球信號,接到球為 ?1? end board。發(fā)球信號 couclk:out std_logic。 乒乓球燈的中點,乒乓球過中點時,counclk,serclk 復(fù)位 bclk:in std_logic。 entity board is port (ball:in std_logic。 乒乓球板接球控制模塊 (BOARD)的設(shè)計 乒乓球板接球控制 模塊 圖 BALL 為接球點,也就是乒乓球燈的末端 NET 為乒乓球燈的中點 BCLK 為球拍接球信號 SERVE 為發(fā)球信號 COUCLK 為失球計數(shù)時鐘信號 SERCLK 正確接球信號 乒乓球板接球控制 模塊 的 VHDL 程序 文件名: 乒乓拍模塊 library ieee。設(shè)置好適當(dāng)?shù)牟ㄐ魏?,進(jìn)行仿真,從圖中我們可以清楚的看到:當(dāng) clk=?1?時,乒乓球燈清零,當(dāng)使能允許后,乒乓球燈處在乒乓球燈前進(jìn)時鐘上升沿時且乒乓球燈前進(jìn)方向向右 31 時,乒乓球燈右移,否則,乒乓球燈左移。 end。 ballout=lamp(8 downto 1)。 end if。 lamp(9)=39。039。) then乒乓球燈右移 lamp(9 downto 1)=lamp(8 downto 0)。) then使能允許,乒乓球 燈前進(jìn)時鐘上升沿 if(way=39。event and clk=39。039。) then清零 lamp=1000000001。 begin process(clk,clr,en) 30 begin if(clr=39。乒乓球燈 end ball。乒乓球燈前進(jìn)方向 en:in std_logic。乒乓球燈前進(jìn)時鐘 clr:in std_logic。 use 。 29 乒乓球行徑的發(fā)光管亮燈控制模塊 (BALL)設(shè)計 乒乓球燈模塊 圖 CLK 為乒乓球燈前進(jìn)時鐘 CLR 為乒乓球燈清零脈沖 WAY 為乒乓球燈前進(jìn)方向 EN 為乒乓球燈使能 BALLOUT 為乒乓球燈 乒乓球燈模塊 的 VHDL 程序 文件名: 乒乓球燈模塊 library ieee。當(dāng)我們對 clk, clr, bain, bbin, serclka 和 serclkb,設(shè)置好適當(dāng)?shù)牟ㄐ魏螅M(jìn)行仿真,從圖中我們可以清楚的看到:當(dāng) clr=?1?時,乒乓球燈清零,系統(tǒng) 處在發(fā)球狀態(tài),當(dāng)發(fā)球成功后,左球拍或右球拍準(zhǔn)確接球此時乒乓球燈使能允許,沒發(fā)球或接球時乒乓球燈不清零。 end。 end if。039。 系統(tǒng)處在發(fā)球狀態(tài) end if。 乒乓球燈被禁止 serve=39。 系統(tǒng)處在接球狀態(tài) else 接球失敗 ballen=39。乒乓球燈使能允許 serve=39。) then球拍發(fā)球或準(zhǔn)確接球 ballen=39。 乒乓球燈清零 if(ser=39。)then 球拍發(fā)球或接球時 ballclr=39。 乒乓球燈清零 else 系統(tǒng)正常 if(bd=39。 系統(tǒng)處在發(fā)球狀態(tài) ballclr=39。 ) then 系統(tǒng)復(fù)位 serve=39。球拍接球脈沖 process(clr,clk,bd) begin if(clr=39。 serclk=ser。 begin bd=bain or bbin。 architecture ful of ballctrl is signal bd:std_logic。乒乓球燈清零信號 ballen:out std_logic)。發(fā)球狀態(tài)信號 serclk:out std_logic。乒乓球燈移動時鐘 bdout:out std_logic。左拍準(zhǔn)確接球或發(fā)球 serclkb:in std_logic。左球拍 bbin:in std_logic。 entity ballctrl is port(clr:in std_logic。 總控制模塊 (BALLCTRL)的設(shè)計 總控制 模塊 圖 CLR 為系統(tǒng)復(fù)位信號 BAIN 為左球拍 26 BBIN 為右球拍 SERCLKA 為左拍準(zhǔn)確接球或發(fā)球信號 SERCLKB 為右拍準(zhǔn)確接球或發(fā)球信號 CLK 為乒乓球燈移動時鐘 BDOUT 為球拍接球脈沖 SERVE 為發(fā)球狀態(tài)信號 SERCLK 球拍正確接球信號 BALLCLR 乒乓球燈清零信號 BALLEN 為乒乓球燈使能信號 總控制模塊的 VHDL 程序 文件名: 總控制模塊 library ieee。當(dāng)我們對 clk, sig 和 en,設(shè)置好適當(dāng)?shù)牟ㄐ魏螅M(jìn)行仿真,從圖中我們可以清楚的看到:當(dāng) clk=?1?,sig=?0?和 en=?1?時, sout=?1?即球拍接球但沒有接到球時發(fā)出提示聲。球拍接球,沒接到時,發(fā)提示聲 end。 提示聲輸出,接喇叭 end sound。正確接球信號 en :in std_logic。 entity sound is port(clk:in std_logic。 24 失球提示發(fā)聲模塊 (SOUND)的設(shè)計 失球提示發(fā)聲模塊 圖 CLK 為發(fā)聲時鐘脈沖 SIG 為正確接球信號 EN 為球拍接球脈沖 SOUT 為提示聲輸出 失球提示發(fā)聲模塊 的 VHDL 程序 文件名: 失球提示發(fā)聲模塊 library ieee。 當(dāng)我們對 souclk, clr, clk, bbin 和 bain 設(shè)置好適當(dāng)?shù)牟ㄐ魏?,進(jìn)行仿真,從圖中我們可以清楚的看到:當(dāng) clr=?1?時,系統(tǒng)復(fù)位,此后系統(tǒng)正常工作,此時右拍給出發(fā)球信號,乒乓球向左運動 ,當(dāng)乒乓球運動到末端后對方未將球反接了過來,所以右選手被 記上 1 分,并給出出錯提示。 clr 是清零控制, souclk是失球提示發(fā)聲時鐘, ballout[7..0]指示球路行進(jìn)情況, countbh[3..0]和countbl[3..0]分別指示左邊球手的得分的高位和低位, countah[3..0]和countal[3..0]分別指示右左邊球手的得分的高位和低位, lamp 指示 clock2速度, speaker 接蜂鳴器,指示失球提示。當(dāng)發(fā)光管亮到最后的瞬間,若檢測到對應(yīng)的表示球拍鍵的信號,立即將球反向運動(此過程由 BOARD 模塊控制)。 圖 為頂層設(shè)計原理圖。 三、設(shè)計意義 以 VHDL和 FPGA 為特征的數(shù)字系統(tǒng)現(xiàn)場集成技術(shù)是將來 ASIC設(shè)計的主要發(fā)展趨勢之一,通過本課題研究,學(xué)習(xí)和掌握數(shù)字邏輯的 VHDL 設(shè)計方法和系統(tǒng)功能的 FPGA 實現(xiàn)方法 ,推動了數(shù)字系統(tǒng)現(xiàn)場集成技術(shù)的應(yīng)用。 首先是乒乓球游戲數(shù)字電路模塊的設(shè)計 , 然后在此基礎(chǔ)上編寫 VHDL 語言 , 要求編寫的 VHDL 語言通過仿真 ,使之符合乒乓球運動的各項 規(guī)則。綜合、優(yōu)化和裝配軟件將生成一個器件編程所用的數(shù)據(jù)文件。如果時延模擬結(jié)果不能滿足設(shè)計的要求,就需要重新綜合,并將設(shè)計重新裝配于新的器件之中,期間不乏反復(fù)嘗試各種綜 合過程或裝配過程,或選擇不同速度品質(zhì)的器件。 布 局 布 線 后 設(shè) 計 模 塊 的 模 擬 ( Simulate the Postlayout DesignModel) 即使在設(shè)計綜合之前進(jìn)行了設(shè)計模擬,在設(shè)計被裝配(或布局布線)后,還需要對設(shè)計再進(jìn)行模擬。布局布線工具采用一定的算法,指引用戶通過約束和性能估價來選擇最初的布局方式,然后,算法能夠重復(fù)地進(jìn)行,以改變布局,以逐步實現(xiàn)符合性能要求的優(yōu)化的布局結(jié)果。傳導(dǎo)延時基本上取決于布線延時。 圖 設(shè)計綜合和優(yōu)化的過程 布局布線( Place and Route)。 優(yōu)化( Optimize) 。簡言之,綜合是將設(shè)計描述轉(zhuǎn)換到網(wǎng)表或方程生成的過程。 綜合( Synthesis) 。但是,通常我們不必花太多的時間先去模擬源代碼,因為在綜合后,往往會發(fā)現(xiàn)為了實現(xiàn)性能目標(biāo),將需要修改我們的設(shè)計。當(dāng)然,大型設(shè)計往往是階層結(jié)構(gòu)的序列子設(shè)計或模塊的組合。采用源代碼模擬,可以在設(shè)計的早期檢測到設(shè)計的錯誤,從而進(jìn)行修正,以便盡可能地減少對設(shè)計日程計劃的影響,但對于小型設(shè)計,則往往不需要先做源代碼模擬,即使做了,意義也不大。 源代碼模擬 ( Simulate the Source Code) 對于大型設(shè)計,采用 VHDL 模擬器進(jìn)行的源代碼模擬可以節(jié)省時間。 決定了設(shè)計方式后,根據(jù) VHDL 具體的語法結(jié)構(gòu),參照一些功能塊、數(shù)據(jù)狀態(tài)圖等設(shè)計代碼。前兩種方式包含設(shè)計階層的生成,而后一種是將描述的電路當(dāng)作單模塊電路進(jìn)行。只有對如何描述我們的設(shè)計有了一個最佳的認(rèn)識,才能更有效地編寫設(shè)計代碼, 然后再通過綜合,進(jìn)行所需要的邏輯實現(xiàn)。 有了設(shè)計要求的定義后,編寫設(shè)計代碼。例如,設(shè)計的功能是什么?對所需的信號建立時間、時鐘輸出時間、最大系統(tǒng)工作頻率、關(guān)鍵的路徑等這些需求,要有一個明確的定義,這將有助于我們的設(shè)計,然后再選擇適當(dāng)?shù)脑O(shè)計方式和相應(yīng)的器件結(jié)構(gòu),進(jìn)行設(shè)計綜合。 VHDL 設(shè)計綜合過程 通常,設(shè)計過程可劃分為下述 6 個步驟: ( 1)設(shè)計要求的定義; 17 ( 2)用 VHDL 進(jìn)行設(shè)計描述(系統(tǒng)描述與代碼設(shè)計); ( 3)源代碼模擬; ( 4)設(shè)計綜合,設(shè)計優(yōu)化和設(shè)計的布局布線; ( 5)布局布線后的設(shè)計模塊模擬; ( 6)器件編程。所描述的功能是:當(dāng) reset 為’ 1’時 b 清零,其余情況下 b 保持原值。 end process。 else b=b。 Process 的語句中帶有 1 個或幾個信號變量,這些變量稱為敏感量,一旦敏感量發(fā)生了變化, process 就啟動,下一次再有變化
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1