版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
..摘要本課程設(shè)計主要內(nèi)容是利用EDA技術(shù)設(shè)計一個可容納四組選手的智力競賽搶答器,全面熟悉、掌握VHDL語言基本知識,掌握利用VHDL語言對常用的組合邏輯電路和時序邏輯電路編程。本課程設(shè)計的開發(fā)仿真工具是MAX+plusII,采用自頂向下、逐層細化的設(shè)計方法設(shè)計整套系統(tǒng),頂層模塊用圖形描述,底層文件用VHDL語言描述。通過波形仿真,實現(xiàn)了智力競賽搶答器的基本功能,達到了設(shè)計要求。關(guān)鍵字智力競賽搶答器;EDA技術(shù);VHDL;MAX+plusII;自頂向下1引言20世紀90年代,引進數(shù)字系統(tǒng)設(shè)計方法發(fā)生突破性變革的技術(shù)是VHDL〔VeryHighSpeedIntegratedCircuitHardwareDescriptionLanguage,超高速集成電路硬件描述語言。它是一種IEEE-1076標準所規(guī)范的硬件描述語言,主要用于算法級、寄存器級到門級的多種抽象設(shè)計層次的數(shù)字系統(tǒng)建模,已成為電子設(shè)計自動化〔EDA的一種重要手段。本課程設(shè)計的主要目的是:全面熟悉、掌握VHDL語言基本知識,掌握利用VHDL語言對常用的的組合邏輯電路和時序邏輯電路編程,把編程和實際結(jié)合起來,熟悉編制和調(diào)試程序的技巧,掌握分析結(jié)果的若干有效方法,進一步提高上機動手能力,培養(yǎng)設(shè)計綜合電路的能力,養(yǎng)成編寫文檔資料的習慣和規(guī)范編程的思想。2智力競賽搶答器的主要功能設(shè)計一個4人參加的智力競賽搶答計時器。該系統(tǒng)具有回答問題時間控制的功能,要求回答問題時間小于等于100秒<顯示為0~99>,時間顯示采用倒計時方式。當達到限定時間時,發(fā)出聲響以示警告;當有某一參賽者首先按下?lián)尨痖_關(guān)時,相應(yīng)顯示燈亮并伴有聲響,此時搶答器不再接受其他輸入信號。智力競賽搶答器的功能分塊如圖2-1所示。頂層文件QDQ頂層文件QDQdaojishi模塊sanxuanyi模塊pianxuan模塊xianshi模塊jianbie模塊suocunqi模塊zhuanhuan模塊圖2-1智力競賽搶答器功能模塊劃分圖該智力競賽搶答器分為七個模塊,分別為:鑒別模塊、鎖存器模塊、轉(zhuǎn)換模塊、選擇輸出模塊、倒計時模塊、片選模塊和顯示模塊。3主要功能的實現(xiàn)3.1鑒別功能鑒別模塊jianbie如圖3-1所示,輸入信號CLK和CLR,若CLR="0",表示無人按鍵,輸出信號Q為0;若CLR="1",表示有人按鍵,輸出信號Q為1。 圖3-1jianbie模塊 鑒別模塊源代碼如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYjianbieISPORT<CLK,CLR:INSTD_LOGIC;Q:OUTSTD_LOGIC>;ENDjianbie;ARCHITECTUREjianbie_mkOFjianbieISBEGINPROCESS<CLK,CLR>BEGINIFCLR='0'THEN--利用IF_THEN_ELSE語句Q<='0';ELSIFCLK'EVENTANDCLK='0'THEN--檢測時鐘下降沿Q<='1';ENDIF;ENDPROCESS;ENDjianbie_mk;鑒別模塊程序調(diào)試波形如圖3-2所示,給CLK一個時鐘信號,在某一時刻開始賦給CLR一個高電平,則從下一個時鐘下降沿開始Q輸出高電平。圖3-2鑒別模塊仿真波形圖3.2鎖存器功能鎖存器模塊suocunqi如圖3-3所示,鎖存器對四位答題者的結(jié)果進行鎖存,并將其賦給輸出信號Q1,Q2,Q3,Q4。圖3-3suocunqi模塊鎖存器模塊源代碼如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYsuocunqiISPORT<D1,D2,D3,D4:INSTD_LOGIC;CLK,CLR:INSTD_LOGIC;Q1,Q2,Q3,Q4,ALM:OUTSTD_LOGIC>;ENDsuocunqi;ARCHITECTUREsuocunqi_mkOFsuocunqiISBEGINPROCESS<CLK>BEGINIFCLR='0'THENQ1<='0';Q2<='0';Q3<='0';Q4<='0';ALM<='0';ELSIFCLK'EVENTANDCLK='1'THEN--檢測CLR為高電平,則有人搶答Q1<=D1;Q2<=D2;Q3<=D3;Q4<=D4;ALM<='1';ENDIF;ENDPROCESS;ENDsuocunqi_mk;鎖存器模塊程序調(diào)試波形如圖3-4所示,給CLK一個時鐘信號,在某一時刻開始賦給CLR一個高電平,則從下一個時鐘上升沿開始:將D1賦給Q1、將D2賦給Q2、將D3賦給Q3、將D4賦給Q4,并輸出ALM為1;在CLR為低電平時無輸出。圖3-4鎖存器模塊仿真波形圖3.3轉(zhuǎn)換功能轉(zhuǎn)換模塊zhuanhuan如圖3-5所示,把搶答結(jié)果轉(zhuǎn)化為一個四位二進制數(shù),表示搶答者的編號。圖3-5zhuanhuan模塊轉(zhuǎn)換模塊源代碼如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYzhuanhuanISPORT<D1,D2,D3,D4:INSTD_LOGIC;Q:OUTSTD_LOGIC_VECTOR<3DOWNTO0>>;ENDzhuanhuan;ARCHITECTUREzhuanhuan_mkOFzhuanhuanISBEGINPROCESS<D1,D2,D3,D4>VARIABLETMP:STD_LOGIC_VECTOR<3DOWNTO0>;BEGINTMP:=D1&D2&D3&D4;CASETMPISWHEN"1000"=>Q<="0001";--類似于真值表的CASE語句WHEN"0100"=>Q<="0010";WHEN"0010"=>Q<="0011";WHEN"0001"=>Q<="0100";WHENOTHERS=>Q<="0000";ENDCASE;ENDPROCESS;ENDzhuanhuan_mk;轉(zhuǎn)換模塊程序調(diào)試波形如圖3-6所示,通過此模塊將D1D2D3D4的輸入結(jié)果轉(zhuǎn)換成Q1Q2Q3Q4這種四位二進制數(shù),當D1=‘1’,其他三位為‘0’時,輸出Q為"0001";當D2=‘1’,其他三位為‘0’時,輸出Q為"0010";當D3=‘1’,其他三位為‘0’時,輸出Q為"0011";當D4=‘1’,其他三位為‘0’時,輸出Q為"0100";其他情況下,輸出Q為"0000"。圖3-6轉(zhuǎn)換模塊仿真波形圖3.4選擇輸出功能選擇輸出模塊sanxuanyi如圖3-7所示,用兩個四位二進制數(shù)表示倒計時,其中D1為高位,D2為低位,用一個四位二進制數(shù)D3表示搶答號,輸出信號Q1和Q2,其中Q1和Q2作為顯示模塊中數(shù)碼管的輸入值。通過SEL的值控制Q1和Q2輸出搶答號或者倒計時,當SEL=‘0’時為輸出倒計時狀態(tài),Q1代表高位,Q2代表低位;當SEL=‘1’時,為顯示搶答號狀態(tài),Q1輸出為‘0’,Q2的輸出代表搶答者編號。圖3-7sanxuanyi模塊選擇輸出模塊源代碼如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYsanxuanyiISPORT<SEL:INSTD_LOGIC;D1,D2,D3:INSTD_LOGIC_VECTOR<3DOWNTO0>;Q1,Q2:OUTSTD_LOGIC_VECTOR<3DOWNTO0>>;ENDsanxuanyi;ARCHITECTUREsanxuanyi_mkOFsanxuanyiISBEGINPROCESS<SEL,D1,D2,D3>BEGINIFSEL='1'THENQ1<="0000";Q2<=D3;ELSEQ1<=D1;Q2<=D2;ENDIF;ENDPROCESS;ENDsanxuanyi_mk;選擇輸出模塊程序調(diào)試波形如圖3-8所示,由SEL控制Q的輸出,當SEL為‘1’時,將D3賦給Q2,"0000"賦給Q1,輸出結(jié)果代表搶答者編號;當SEL為‘0’時,將D2賦給Q2,D1賦給Q1,輸出結(jié)果代表倒計時。圖3-8選擇輸出模塊仿真波形圖3.5倒計時功能倒計時模塊daojishi如圖3-9所示,用兩個四位二進制數(shù)表示倒計時,定義變量HH,LL,由時鐘CLK和使能信號EN控制,其中EN的值由鎖存器模塊中的ALM控制。當?shù)褂嫊r至HH==0,LL==0時,發(fā)出聲音停止計時,輸出H〔XXX,L<XXX>。圖3-9daojishi模塊倒計時模塊源代碼如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYdaojishiISPORT<CLK,EN:INSTD_LOGIC;H,L:OUTSTD_LOGIC_VECTOR<3DOWNTO0>;SOUND:OUTSTD_LOGIC>;ENDdaojishi;ARCHITECTUREdaojishi_mkOFdaojishiISBEGINPROCESS<CLK,EN>VARIABLEHH,LL:STD_LOGIC_VECTOR<3DOWNTO0>;BEGINIFCLK'EVENTANDCLK='1'THENIFEN='1'THEN--EN=1驅(qū)動倒計時模塊開始倒計時SOUND<='0';HH:="1001";LL:="1001";ELSIFLL=0THENIFHH=0THENSOUND<='1';--倒計時至0時,輸出超時報警信號ELSELL:="1001";HH:=HH-1;ENDIF;ELSELL:=LL-1;ENDIF;ENDIF;H<=HH;L<=LL;ENDPROCESS;ENDdaojishi_mk;倒計時模塊程序調(diào)試波形如圖3-10所示,當EN為"1"時,在時鐘上升沿將"1001"賦給H和L,準備進入倒計時;從EN為"0"且時鐘的上升沿到來時,H和L的值開始以逐漸遞減,即從99倒計時到0,同時倒計時至0時,輸出超時報警信號SOUND=1。圖3-10倒計時模塊仿真波形圖3.6片選功能片選模塊pianxuan如圖3-11所示,該模塊用于控制選擇輸出模塊輸出倒計時或者搶答號,其中EN1的值由鎖存器模塊中的ALM控制。圖3-11pianxuan模塊片選模塊源代碼如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYpianxuanISPORT<CLK,EN1:INSTD_LOGIC;A:OUTSTD_LOGIC>;ENDpianxuan;ARCHITECTUREpianxuan_mkOFpianxuanISBEGINPROCESS<CLK,EN1>BEGINIFEN1='0'THEN--利用IF_THEN_ELSE語句A<='0';ELSIFCLK'EVENTANDCLK='1'THEN--檢測時鐘上升沿A<='1';ENDIF;ENDPROCESS;ENDpianxuan_mk;片選模塊程序調(diào)試波形如圖3-12所示,EN1=’0’時,將‘0’賦給A;當EN1=’1’時,在CLK時鐘信號的下一個時鐘上升沿將‘1’賦給A。圖3-12片選模塊仿真波形圖3.7顯示功能顯示模塊如圖3-13所示,將所有進程中的數(shù)值轉(zhuǎn)換成七位二進制數(shù)。圖3-13xianshi模塊顯示模塊源代碼如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYxianshiISPORT<D:INSTD_LOGIC_VECTOR<3DOWNTO0>;Q:OUTSTD_LOGIC_VECTOR<6DOWNTO0>>;ENDxianshi;ARCHITECTURExianshi_mkOFxianshiISBEGINPROCESS<D>BEGINCASEDISWHEN"0000"=>Q<="0111111";WHEN"0001"=>Q<="0000110";WHEN"0010"=>Q<="1011011";WHEN"0011"=>Q<="1001111";WHEN"0100"=>Q<="1100110";WHEN"0101"=>Q<="1101101";WHEN"0110"=>Q<="1111101";WHEN"0111"=>Q<="0000111";WHEN"1000"=>Q<="1111111";WHEN"1001"=>Q<="1101111";WHENOTHERS=>Q<="0000000";ENDCASE;ENDPROCESS;ENDxianshi_mk;顯示模塊程序仿真波形如圖3-14所示,將輸入信號D轉(zhuǎn)變成能在七段數(shù)碼管上顯示的七位二進制數(shù)。圖3-14顯示模塊仿真波形圖3.8頂層模塊各模塊連接后形成頂層文件的電路圖如圖3-15所示
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物標志物在藥物臨床試驗中的生物標志物前沿技術(shù)
- 生物材料在皮膚修復中的創(chuàng)新策略
- 生物大分子藥物的納米緩釋保護策略
- 生物制品穩(wěn)定性試驗效力保持評估
- 生物3D打印腎臟移植免疫排斥防控策略
- 深度解析(2026)《GBT 19584-2010銀行卡磁條信息格式和使用規(guī)范》
- 哈電集團車間主任筆試題庫含答案
- 氣候科學家面試題及答案
- 深度解析(2026)《GBT 19322.2-2017小艇 機動游艇空氣噪聲 第2部分:用標準艇進行噪聲評估》
- 萬能硬度計項目可行性分析報告范文
- 建筑工程土建施工技術(shù)方案
- 白天和夜間的消防應(yīng)急預(yù)案(3篇)
- 鹽酸羥考酮注射液用法
- 乳蛾中醫(yī)護理
- 銀保監(jiān)會健康險政策解讀
- (新版)無人機駕駛員理論題庫(全真題庫)
- CJ/T 216-2013給水排水用軟密封閘閥
- 白介素6的課件
- 2025保險公司定期存款合同書范本
- 《t檢驗統(tǒng)計》課件
- 醫(yī)學檢驗考試復習資料
評論
0/150
提交評論