EDA4路智能搶答器課設(shè)說明書_第1頁
EDA4路智能搶答器課設(shè)說明書_第2頁
EDA4路智能搶答器課設(shè)說明書_第3頁
EDA4路智能搶答器課設(shè)說明書_第4頁
EDA4路智能搶答器課設(shè)說明書_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

TOC\o"1-5"\h\z引言 1\o"CurrentDocument"1智能搶答器設(shè)計 3\o"CurrentDocument"設(shè)計的目的 3\o"CurrentDocument"設(shè)計的基本內(nèi)容 3\o"CurrentDocument"2VHDL及QuartusII軟件介紹 4\o"CurrentDocument"2.1硬件描述語言——VHDL 4\o"CurrentDocument"VHDL的簡介 4\o"CurrentDocument"VHDL語言的特點及優(yōu)點 4\o"CurrentDocument"QuartusII軟件的應(yīng)用 6\o"CurrentDocument"3搶答器總體設(shè)計 8\o"CurrentDocument"3.1功能分析 8\o"CurrentDocument"整體設(shè)計思想 8\o"CurrentDocument"分頻模塊設(shè)計 9\o"CurrentDocument"復(fù)位模塊設(shè)計 9搶答模塊設(shè)計 10\o"CurrentDocument"倒計時模塊設(shè)計 12\o"CurrentDocument"硬件下載驅(qū)動 14\o"CurrentDocument"4心得體會 15\o"CurrentDocument"參考文獻(xiàn) 16\o"CurrentDocument"附錄一 17附錄二 23引言數(shù)字電路主要是基于兩個信(號我們可以簡單的說是有電壓和無電)壓,用數(shù)字信號完成對數(shù)字量進(jìn)行算術(shù)運算和邏輯運算的電路我們稱之為數(shù)字電它路具,有邏輯運算和邏輯處理等功能,數(shù)字電路可分為組合邏輯電路和時序邏輯電路。EDA技術(shù)又稱電子設(shè)計自動化它是為解決自動控制系統(tǒng)設(shè)計而提出的,70年代經(jīng)歷了計算機(jī)輔助設(shè)計(CAD),計算機(jī)輔助工程(CAE),電子系統(tǒng)設(shè)計自動化(ESDA)3個階段。前兩個階段的DA產(chǎn)品都只是個別或部分的解決了電子產(chǎn)品設(shè)計中的工程問題;第三代EDA工具根據(jù)工程設(shè)計中的瓶頸和矛盾對設(shè)計數(shù)據(jù)庫實現(xiàn)了統(tǒng)一管理,并提出了并行設(shè)計環(huán)境概念,提供了獨立于工藝和廠家的系統(tǒng)級的設(shè)計工具VHDL(VERYHIGHSPEEDINTEGRATEDCIRCUITHARDWAREDESCRIPTIONLANGUAGE)語言最早是有美國國防部提出的,它支持行為領(lǐng)域和結(jié)構(gòu)領(lǐng)域的硬件描述,并且可以從最抽象的系統(tǒng)級一直到最精確的邏輯在級描,述數(shù)字系統(tǒng)時,可以使用前后一致的語義和語法跨越多個層次并,且使用跨越多個級別的混合描述模擬該系統(tǒng)。因此,它可以由高層次行為描述子系統(tǒng)及低層次詳細(xì)實現(xiàn)子系統(tǒng)所組成的系統(tǒng)模擬。它有兩個版本EEEStdl076-1987[LRM8和IEEEStdl076-1993[LRM93]他們并不完全兼容,但做一些修改就可以兼容了。許多公司都為VHDL開發(fā)出了編譯和仿真軟件其中Max+plusII或?qū)懗蒑axplus2,或MP2)是Altera公司推出的的第三代LD開發(fā)系統(tǒng)Altera第四代PLD開發(fā)系統(tǒng)被稱為:QuartusII主要用于設(shè)計新器件和大規(guī)模PLD/FPGA).使用MAX+PLUSI啲設(shè)計者不需精通器件內(nèi)部的復(fù)雜結(jié)構(gòu)。設(shè)計者可以用自己熟悉的設(shè)計(如工原具理圖輸入或硬件描述語言建立設(shè)計,MAX+PLUSII^把這些設(shè)計轉(zhuǎn)自動換成最終所需的格式。其設(shè)計速度非???。對于一般幾千門的電路設(shè)計,使JAX+PLUSII從設(shè)計輸入到器件編程完畢3用戶拿到設(shè)計好的邏輯電路大3約只需幾小時。設(shè)計處理一般在數(shù)分鐘內(nèi)內(nèi)完成。特別是在原理圖輸入等方面。EDA技術(shù)是在電子2AD技術(shù)基礎(chǔ)上發(fā)展起來的計算機(jī)軟件系統(tǒng)3旨以計算機(jī)為工作平臺3融合了應(yīng)用電子技術(shù)、計算機(jī)技術(shù)、信息處理及智能化技術(shù)的最新成果進(jìn)3行電子產(chǎn)品的自動設(shè)計。利用DA工具,電子設(shè)計師可以從概念、算法、協(xié)議等開始設(shè)計電子系統(tǒng)3大量工作可以通過計算機(jī)完成并3可以將電子產(chǎn)品從電路設(shè)計性、能分析到設(shè)計出IC版圖或PCB版圖的整個過程在計算機(jī)上自動處理完成。現(xiàn)在對A的概念或范疇用得很寬。包括在機(jī)械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事等各個領(lǐng)域,都在DA的應(yīng)用。目前EDA技術(shù)已在各大公司、企事業(yè)單位和科研教學(xué)部門廣泛使用。例如在飛機(jī)制造過程中,從設(shè)計、性能測試及特性分析直到飛行模擬,都可能涉及至EDA技術(shù)。本文所指的EDA技術(shù),主要針對電子電路設(shè)計PCB設(shè)計和IC設(shè)計。EDA設(shè)計可分為系統(tǒng)級、電路級和物理實現(xiàn)級。VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)行為,功能和接口。除了含有許多具有硬件特征的語句外VHDL的語言形式和描述風(fēng)格與句法是十分類似于一般的計算機(jī)高級語言。1智能搶答器設(shè)計設(shè)計的目的本次設(shè)計的目的就是在掌握DA實驗開發(fā)系統(tǒng)的初步使用基礎(chǔ)上,解EDA技術(shù),了解并掌握VHDL硬件描述語言的設(shè)計方法和思想,通過學(xué)習(xí)VHDL語言結(jié)合電子電路的設(shè)計知識理論聯(lián)系實際,掌握所學(xué)的課程知識,學(xué)HDL基本單元電路的綜合設(shè)計應(yīng)用。通過對智力競賽搶答器的設(shè)計鞏,固和綜合運用所學(xué)課程理,論聯(lián)系實際,提高設(shè)計能力,提高分析、解決計算機(jī)技術(shù)實際問題的獨立工作能力本。文以現(xiàn)場可編程邏輯器件FPGA)為設(shè)計載體以硬件描述語言/HDL為主要表達(dá)方式以QuartusII開發(fā)軟件設(shè)計的電子搶答器,具有搶答鑒別與鎖存功能以29及秒答題限時功能,應(yīng)用二極管和數(shù)碼顯示管為主要部件來設(shè)計掃描顯示器。通過課程設(shè)計深入理解L語言的精髓和掌握運用所學(xué)的知識,達(dá)到課程設(shè)計的目標(biāo)。設(shè)計的基本內(nèi)容設(shè)計一個四組(人)參加的智力競賽搶答計時器它,具有四路搶答輸入主,持人按下復(fù)位鍵后,系統(tǒng)復(fù)位進(jìn)入搶答狀態(tài),計時顯示初始值;某組首先按下?lián)尨疰I,該路搶答信號,競賽搶答器能夠設(shè)別最先搶答的信號,鎖定該信號,同時揚聲器響起,參賽小組的序號在數(shù)碼管上顯示;主持人對搶答結(jié)果進(jìn)行確認(rèn),給出倒計時計數(shù)允許信號,開始回答問題,計時顯示器從初始值開始以秒為單位倒計時計,數(shù)至0時,停止計數(shù),揚聲器發(fā)出超時報警信號,以中止繼續(xù)回答問題;當(dāng)主持人給出倒計時計數(shù)禁止信號時,揚聲器停止鳴叫;(6)參賽者在規(guī)定時間內(nèi)回答完問題,主持人給出倒計時計數(shù)禁止信號,以免揚聲器鳴叫,按下復(fù)位鍵,又可開始新一輪的搶答;2VHDL及QuartusII軟件介紹2.1硬件描述語言一一VHDL現(xiàn)在,VHDL和Verilog作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,又得到眾多DA公司的支持,在電子工程領(lǐng)域,已成為事實上的通用硬件描述語言。VHDL的簡介VHDL英文全名是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,誕生于1982年。1987年底,VHDL被IEEE和美國國防部確認(rèn)為標(biāo)準(zhǔn)硬件描述語言。自IEEE公布了VHDL的標(biāo)準(zhǔn)版本,IEEE-1076(簡稱87版)之后,各EDA公司相繼推出了自己的VHDL設(shè)計環(huán)境或宣布自己的設(shè)計工具可以和HDL接口。此后VHDL在電子設(shè)計領(lǐng)域得到了廣泛的接受并逐步取代了原有的非標(biāo)準(zhǔn)的硬件描述語言19。93年,IEEE對VHDL進(jìn)行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴(kuò)VHDL的內(nèi)容,公布了新版本白VHDL即IEEE標(biāo)準(zhǔn)的1076-1993版本,(簡稱93版)。有專家認(rèn)為,在新的世紀(jì)中VHDL于Verilog語言將承擔(dān)起大部分的數(shù)字系統(tǒng)設(shè)計任務(wù)。VHDL語言的特點及優(yōu)點應(yīng)用VHDL進(jìn)行系統(tǒng)設(shè)計,有以下幾方面的特點。功能強(qiáng)大VHDL具有功能強(qiáng)大的語言結(jié)構(gòu)。它可以用明確的代碼描述復(fù)雜的控制邏輯設(shè)計。并且具有多層次的設(shè)計描述功能支持設(shè)計庫和可重復(fù)使用的元件生成HDL是一種設(shè)計、仿真和綜合的標(biāo)準(zhǔn)硬件描述語言??梢浦残訴HDL語言是一個標(biāo)準(zhǔn)語言,其設(shè)計描述可以為不同的A工具支持。它可以從一個仿真工具移植到另一個仿真工具從,一個綜合工具移植到另一個綜合工具從,一個工作平臺移植到另一個工作平臺。此外,通過更換庫再重新綜合很容易移植為設(shè)計。獨立性VHDL的硬件描述與具體的工藝技術(shù)和硬件結(jié)構(gòu)無關(guān)。設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管最終設(shè)計實現(xiàn)的目標(biāo)器件是什么而,進(jìn)行獨立的設(shè)計。程序設(shè)計的硬件目標(biāo)器件有廣闊的選擇范圍,可以是各系列的LDFPGA及各種門陣列器件??刹僮餍杂捎赩HDL具有類屬描述語句和子程序調(diào)用等功能,對于已完成的設(shè)計,在不改變源程序的條件下只,需改變端口類屬參量或函數(shù)就,能輕易地改變設(shè)計的規(guī)模和結(jié)構(gòu)。靈活性VHDL最初是作為一種仿真標(biāo)準(zhǔn)格式出現(xiàn)的有著豐富的仿真語句和庫函數(shù)使其在任何大系統(tǒng)的設(shè)計中,隨時可對設(shè)計進(jìn)行仿真模擬所。以,即使在遠(yuǎn)離門級的高層次(即使設(shè)計尚未完成時),設(shè)計者就能夠?qū)φ麄€工程設(shè)計的結(jié)構(gòu)和功能的可行性進(jìn)行查驗,并做出決策。VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語句外VHDL的語言形式和描述風(fēng)格與句法是十分類似于一般的計算機(jī)高級語言。VHDL的程序結(jié)構(gòu)特點是將一項工程設(shè)計或稱設(shè)計實體可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可是部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實體的內(nèi)部功能和算法完成部分在。對一個設(shè)計實體定義了外部界面后一,旦其內(nèi)部開發(fā)完成后,其他的設(shè)計就可以直接調(diào)用這個實體這。種將設(shè)計實體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)計的基本點。VHDL比其它硬件描述語言相比有以下優(yōu)點:與其他的硬件描述語言相比VHDL具有更強(qiáng)的行為描述能力,從而決定了他成為系統(tǒng)設(shè)計領(lǐng)域最佳的硬件描述語言。強(qiáng)大的行為描述能力是避開具體的器件結(jié)構(gòu)從邏輯行為上描述和設(shè)計大規(guī)模電子系統(tǒng)的重要保證。VHDL豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計早期就能查驗設(shè)計系統(tǒng)的功能可行性,隨時可對設(shè)計進(jìn)行仿真模擬。VHDL語句的行為描述能力和程序結(jié)構(gòu)決定了他具有支持大規(guī)模設(shè)計的分解和已有設(shè)計的再利用功能符。合市場需求的大規(guī)模系統(tǒng)高效高,速的完成必須有多人甚至多個代發(fā)組共同并行工作才能實現(xiàn)。對于用VHDL完成的一個確定的設(shè)計,可以利EDA工具進(jìn)行邏輯綜合和優(yōu)化,并自動的把VHDL描述設(shè)計轉(zhuǎn)變成門級網(wǎng)表。VHDL對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計實現(xiàn)的目標(biāo)器件是什么,而進(jìn)行獨立的設(shè)計。2.2QuartusII軟件的應(yīng)用QuartusI是Altera公司的第四代可編程邏輯器件集成開發(fā)環(huán)提供從設(shè)計輸入到器件編程的全部功能QuartusII可以產(chǎn)生并識別EDIF網(wǎng)表文件、VHDL網(wǎng)表文件和VerilogHDL網(wǎng)表文件,為其它EDA工具提供了方便的接口;可以在uartusII集成環(huán)境中自動運行其它EDA工具。利用QuartusII軟件的開發(fā)流程可概括為以下幾步:設(shè)計輸入、設(shè)計編譯、設(shè)計定時分析、設(shè)計仿真和器件編程。設(shè)計輸入QuartusI軟件在File菜單中提供NewProjectWizard.向?qū)?引導(dǎo)設(shè)計者完成項目的創(chuàng)建。當(dāng)設(shè)計者需要向項目中添加新VHDL文件時,可以通過New,選項選擇添加。設(shè)計編譯QuartusI編譯器完成的功能有:檢查設(shè)計錯誤、對邏輯進(jìn)行綜合、提取定時信息、在指定的Altera系列器件中進(jìn)行適配分割產(chǎn)生的輸出文件將用于設(shè)計仿真定時分析及器件編程。首先確定軟件處^CompileMode可以通過Processing菜單進(jìn)行選擇。在Processing菜單中選擇CompilerSetting項??梢赃M(jìn)行器件選擇、模式設(shè)定、綜合和適配選項設(shè)定及設(shè)計驗證等。單擊Processing菜單下的StartCompilation項,開始編譯過程。查看編譯結(jié)果,我們可以得到詳細(xì)的編譯報告。設(shè)計定時分析單擊Project菜單下的TimingSettings...選項,可以方便地完成時間參數(shù)的設(shè)定。QuartusII軟件的定時分析功能在編譯過程結(jié)束之后自動運行,并在編譯報告的hgAnalyses文件夾中顯示其中我們可以得到最高頻率max、輸入寄存器的建立時間SU、引腳到引腳延遲PD、輸出寄存器時鐘到輸出的延遲0和輸入保持時間H等時間參數(shù)的詳細(xì)報告,從中可以清楚地判定是否達(dá)到系統(tǒng)的定時要求。設(shè)計仿真QuartusI軟件允許設(shè)計者使用基于文本的向量文件ec作為仿真器的激勵也可以在QuartusI軟件的波形編輯器中產(chǎn)生向量波形文件wf)作為仿真器的激勵波形編輯方式與MAX+PLUSI嗽件的操作相似。processing菜單下選擇SimulateMode"選項進(jìn)入仿真模式選擇'SimulatorSettings..對話框進(jìn)行仿真設(shè)置在這里可以選擇激勵文件、仿真模式功能仿真或時序仿真等,單擊RunSimulator即開始仿真過程。器件編程設(shè)計者可以將配置數(shù)據(jù)通JMasterBlaste或ByteBlasterMVS信電纜下載到器件當(dāng)中,通過被動串行配置模式J3AG模式對器件進(jìn)行配置編程,還可以在AG模式下給多個器件進(jìn)行編程。利用uartusll軟件給器件編程或配置時,首先需要打開編程器(在New菜單選項中選擇打JChainDescriptionFile在編程器中可以進(jìn)行編程模式設(shè)置(Mode下拉框)、硬件配置ProgrammingHardware對話框)及編程文件選擇AddFile-按鈕),將以上配置存盤產(chǎn)生df文件,其中存儲了器件的名稱器件的設(shè)計及硬件設(shè)置等編程信息。當(dāng)以上過程正確無誤后,單擊rt按鈕即可開始對器件進(jìn)行編程配置。3搶答器總體設(shè)計3.1功能分析搶答信號判別電路在系統(tǒng)復(fù)位后,對、B、C、D四路搶答信號進(jìn)行判別,輸出端ALIGHT一DLIGHT與A—D 對應(yīng),優(yōu)勝者對應(yīng)魄LIGHT為“1”(X為A,B,C,D)其余的為“0”,且將結(jié)果鎖存。完成搶答判別的同時輸出端stap輸出有效信號,對揚聲器進(jìn)行選通。分頻電路用于產(chǎn)生倒計時電路所需的周期為的時鐘脈沖,分頻系數(shù)視輸入時鐘cLK的頻率而定。本次選用64HZ的elk,故進(jìn)行拉64分頻。臺號顯示控制電路將輸入信號D—A轉(zhuǎn)換為二進(jìn)制碼,以驅(qū)動數(shù)碼管,顯示臺號。倒計時及時間顯示控制電路由Op信號控制;由復(fù)位信PRESET將答題時間作為初值賦給倒計時計數(shù)器;由計數(shù)允許信Shi啟動計數(shù)。輸出信號為ount1count2music與music!其中music與music1為揚聲器選通控制信號。揚聲器控制電路使系統(tǒng)只在兩種情況下輸出驅(qū)動揚聲器的脈沖信一號種:是倒計時計數(shù)器處于禁止計數(shù)狀態(tài)ishi無效),并且完成初始化,開始對搶答信號進(jìn)行判別當(dāng)某參賽組搶先按下按鍵,系統(tǒng)在輸出該組臺號信息的同時輸出脈沖信號;一種是確認(rèn)優(yōu)先搶答的參賽組后啟動倒計時計數(shù)器計數(shù)使jishi有效),當(dāng)計數(shù)到“0”時,輸出脈沖信號。整體設(shè)計思想對于一個四人搶答器,四個選手在電路中的起始控制作用是一樣的當(dāng),主持人宣布開始搶答時,誰先按下他前面的控制開關(guān)他,的燈就會亮,同時會有警報聲響起并將搶答的組別號用數(shù)碼管顯示出來而,且這時其他人再怎么按也,就不會亮了,說明每個人對其他人都有一個先發(fā)制人的作用及,每個人都在時間控制下能,鎖存住其他選手的功能。當(dāng)有一個指示燈亮了等待主持人確定,主持人確定以后計數(shù)器就開2始9開從始倒計時,到0時還要警告聲,直到主持人按下復(fù)位鍵為止在。選手答題過程中,如果在規(guī)定時間內(nèi)答完,主持人按下暫停鍵,倒計時停止顯示當(dāng)前時間待,主持人按下復(fù)位鍵以后開始下一輪搶答,這樣計數(shù)器開始工作就是在選手搶答以后在主持人的控制下工作可以設(shè)四個人分別為輸入端,B,C,D;因為四個輸入端在ZHDL中,要求四個輸入端應(yīng)該是相等優(yōu)先級別但,只要有一個輸入端接入高電平時就,給其他信號一個反饋,使得他們的輸入無效,及他們對應(yīng)的指示燈不亮所;以我們可以也并行語句讓,它們分為四個進(jìn)程process),同時也要求每個進(jìn)程中都有反饋信號傳給其他進(jìn)程語句中,這樣就可以完成搶答器基礎(chǔ)部分了其。次就是計數(shù)器部分,當(dāng)有人開始進(jìn)入回答部分,指示燈亮,同時警報器開始工作,當(dāng)主持人確定以后計時開始并要求是倒計時方式

用七段顯示出,通過這些消息我們可知,主持人確認(rèn)鍵即是計數(shù)器開始倒計時的信號本設(shè)計中采用了元件例化(component)語句,在搶答器中給個選手已經(jīng)開始回答了的信號插口,給計數(shù)器中的置零輸入端這,樣就基本上完成了設(shè)計計,數(shù)器采用倒計時方式,實現(xiàn)方式也很簡單,只要給他們最初賦值為29,而后在每個上升沿來到減一具,體設(shè)計情況還是看看程序設(shè)計部分吧。本設(shè)計由于蜂鳴器是在脈沖控制下才會發(fā)出明顯聲響故我們在此加了一個分頻器,具體請看程序。分頻模塊設(shè)計此程序?qū)崿F(xiàn)了64hz的脈沖信號64分頻,得到lhz脈沖信號,給倒計時提供脈沖信號。if(RISING_EDGE(CLK))thentemp:=temp+l;if(temp=64andena='l')thentemp:=0;其仿真圖如下圖所示其仿真圖如下圖所示圖3-1分頻仿真圖如上圖圖3-1所示,程序進(jìn)行了)4分頻,即當(dāng)計54個上升沿以后計數(shù)器減.復(fù)位模塊設(shè)計此程序?qū)⑺行盘柍跏蓟?,通過n使數(shù)碼管也初始化為初值9。If(RESET='1')then --fu weiLIGHT<="0000";ALIGHT<='0';BLIGHT<='0';CLIGHT<='0';DLIGHT<='0';SET<='0';SET<='0';A0<='0';B0<='0';C0<='0';D0<='0';ean<='1';

其仿真圖如下圖所示圖3-2復(fù)位仿真圖由圖3-2可以看出信號LIGHT初值為0而倒計時初值為29.當(dāng)A,B,C,D搶答時,A先搶答故A的燈ALIGHT為1(即點亮)同時數(shù)碼管LIGHT顯示為1,在有人搶答以后同時蜂鳴器(musicO)響起,當(dāng)主持人按下確認(rèn)鍵(即jishi鍵)蜂鳴器停止再響,同時計時開始,復(fù)位(RESET)以后所有數(shù)據(jù)初始化3.5搶答模塊設(shè)計搶答模塊的程序設(shè)計如下beginA2<=notA1; B2<=notB1;C2<=notC1; D2<=notD1;L1:process(A0) --qiangdabeginA1<=(A0andB2andC2andD2);endprocessL1;L2:process(B0)beginB1<=(B0andA2andC2andD2);endprocessL2;L3:process(C0)beginC1<=(C0andA2andB2andD2);endprocessL3;L4:process(D0)beginD1<=(D0andA2andC2andB2);endprocessL4;

搶答模塊符號圖如下圖所示AeanBSETCLIGHT[3..O]DALIGHTRESETBLIGHTjjishiCLIGHTCLKDLIGHTirtst圖3-3搶答器符號圖此符號為搶答器搶答符號圖,實現(xiàn)搶答優(yōu)先及在搶答以后對他人的鎖定功厶匕厶匕能。搶答模塊仿真圖如下所示〕pg〕pg1.28uei2.56ue 3.i警US5.12hei6.4UE7.68uei8-聊us10.24ueKanie14.8E14.875nsJCLKEl|AEl1nALIGHTEllBEl1nBLIGHTEliCElICLIGHTEliDElinDLIGHTElIHLJGHTBDC0001MUSICEliMVSICOEliRESETEljishiElInHcoi.mB1C10011000III11X 0110□coi.rrsB0C0010ElI圖3-4搶答模塊仿真圖此程序?qū)崿F(xiàn)了對A,B,C,D四個人搶答信號處理,只要有一人搶答以后其他人均不能再次搶答實現(xiàn)對他人信號的屏蔽,經(jīng)過AO,BO,CO,DO將A,B,C,D信號鎖存,其對應(yīng)的等分別為ALIGHT,BLIGHT,CLIGHT,DLIGHT其對應(yīng)的組別分別為1,2,3,4當(dāng)有人搶答以后相應(yīng)的等亮同時在數(shù)碼管上顯示其對應(yīng)的組別號。按下reset后,數(shù)碼管顯示0,其對應(yīng)的等也熄滅,所有值均被初始化。其版圖如圖3.4所示。3.6倒計時模塊設(shè)計beginC1:process(SET,CLK,MUSIC1,ena)variabletemp:integerrange0to255;beginif(SET='0')thenMUSIC1<='0';HIGH<="0010";LOW<="1001";elsif(RISING_EDGE(CLK))thentemp:=temp+1;if(temp=64andena='1')thentemp:=0;if(LOW="0000")then --daojishishejiLOW<="1001";if(HIGH="0000")thenHIGH<="0010";elseHIGH<=HIGH-1;endif;elseLOW<=LOW-1;endif;endif;endif;if(HIGH="0000"andLOW="0000")thenMUSIC1<=CLK;endif;endprocessC1;倒計時模塊符號圖如下圖:COUNTER29eanMUSICjishiMUSICOSETCOUT1R..O]CLKCOUT2[3..Q]stopinst圖3-5倒計時符號圖此器件主要實現(xiàn)倒計時功能,同時帶有暫??刂莆籹top

圖3-6倒計時暫停仿真圖倒計時仿真圖如下:由圖3.6可以看出當(dāng)選手在規(guī)定時間內(nèi)答完題即倒計時沒有減到0,主次人按下暫停鍵(即stop)以后倒計時停止顯示當(dāng)前時間,同時蜂鳴器也不會響倒計時仿真圖如下:K:dirie34.97u86.25iUE87.53iUE88.81ius90.09iUS91.37iUE92.65ius93.93ius95.21iUE114.8E1^0CLKE:IB0ALIGHTBiBBiBLIGHTBi畛5CBICLEGKTBiDE:I妙8DLIGHTBi0*9□LIGHTBOC00010000妙14M1.PSICBi■mmiiBiBik抄15musicoBi1^-16RESETB聆ITjishiBi@>18田COl.ITlB1C001X001CcJ001<00001(1001看23□C01.IT2BOC00000010"28stopBi圖3-7倒計時復(fù)位仿真圖由圖3.7可以看出,當(dāng)選手答題時間超過規(guī)定時間時,蜂鳴器(music)響起,倒計時數(shù)碼管顯示00,直到主持人按下復(fù)位鍵(RESET)以后,恢復(fù)初值,LIGHT顯示0,倒計時數(shù)碼管顯示29,ALIGHT變?yōu)?(即熄滅),進(jìn)入下一輪的搶答。此程序主要功能是實現(xiàn)倒計時功能,當(dāng)有人搶答以后蜂鳴器響起,在主持人確認(rèn)以后開始倒計時29秒,如果在規(guī)定時間內(nèi)回答完畢主此人則按下暫停鍵,停止計數(shù)顯示當(dāng)前時間如圖3.6,如果超出規(guī)定時間則蜂鳴器響起,直到主此人按下復(fù)位鍵為止如圖3.7,所有信號初始化,數(shù)碼管顯示29等待下一輪搶答??偨Y(jié):由以上仿真圖可知,該設(shè)計基本實現(xiàn)了原先的設(shè)計要求,并在此基礎(chǔ)上添加了選手相關(guān)位置的顯示燈等功能。

3.7硬件下載驅(qū)動其硬件連接圖如下:圖3-8硬件連接圖此圖為硬件連接以后,當(dāng)D搶答成功,LIGHT顯示為4,數(shù)碼管從29倒計時開始,同時LED第4個等亮如圖3.8所示。硬件大的引腳鎖定如下圖:圖3-9引腳鎖定圖此圖為硬件連接時的引腳鎖定圖。4心得體會通過這次EDA課程設(shè)計,我學(xué)到了很多的東西,不僅鞏固以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有的知識。從而進(jìn)一步加深了對EDA的了解,讓我對它產(chǎn)生了濃厚的興趣。這次課程設(shè)計讓我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,還要把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到的問題,可以說是困難重重,這畢竟第一次做,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固。這次出搶答器設(shè)計讓我體會最深的一點就是,一定要保持一種嚴(yán)謹(jǐn)?shù)膽B(tài)度,尤其是在引腳鎖定的時候一定要仔細(xì)認(rèn)真,否則會嚴(yán)重影響實驗結(jié)果。而且我還意識到一點做事絕不能眼高手低,凡事想當(dāng)然,只有自己親自動手一遍一遍地查錯改錯才能使自己不斷進(jìn)步,并且從中會體會到成功的喜悅。總得來說這次只能搶答器的設(shè)計比較成功的。在設(shè)計中遇到了很多問題,尤其在下載到實驗箱時,最后在老師的辛勤的指導(dǎo)下,終于下載調(diào)試成功。參考文獻(xiàn)VokneiA.Pedroni.《VHDL數(shù)字電路設(shè)計教程》[M].電子工業(yè)出版社,2008.5潘松,黃繼業(yè).《EDA技術(shù)實用教程》(第二版)[M].科學(xué)出版社,2005.2焦素敏.《EDA應(yīng)用技術(shù)》[M]?清華大學(xué)出版社,2002.4曹昕燕,周鳳臣,聶春燕.《EDA技術(shù)實驗與課程設(shè)計》[M]?清華大學(xué)出版社⑸譚會生,張昌凡.《EDA技術(shù)及應(yīng)用》(第二版)[M].西安電子科技大學(xué)出版社附錄一--頂層頭文件libraryieee;useieee.std_logic_1164.all;USEIEEE.STD_LOGIC_UNSIGNED.ALL;entityaaaisport(A,B,C,D,RESET,jishi,stop:instd_logic;CLK:instd_logic;MUSIC:outstd_logic;MUSIC0:outstd_logic;COUT1:outstd_logic_vector(3downto0);COUT2:outstd_logic_vector(3downto0);LIGHT:outstd_logic_vector(3downto0);ALIGHT,BLIGHT,CLIGHT,DLIGHT:outstd_logic);endaaa;architectureaaaofaaaiscomponentCOUNTER29is --yuanjianlihuaport(ean,jishi,SET,CLK,stop:instd_logic;MUSIC,MUSIC0:outstd_logic;COUT1:outstd_logic_vector(3downto0);COUT2:outstd_logic_vector(3downto0));endcomponentCOUNTER29;componentqiangdaisport(A,B,C,D,RESET,jishi:instd_logic;CLK:instd_logic;ean,SET:outstd_logic;LIGHT:outstd_logic_vector(3downto0);ALIGHT,BLIGHT,CLIGHT,DLIGHT:outstd_logic);endcomponentqiangda;signalean,SET:std_logic;beginU0:COUNTER29Portmap(ean,jishi,SET,CLK,stop,MUSIC,MUSIC0,COUT1,COUT2);U1:qiangdaPortmap(A,B,C,D,RESET,jishi,CLK,ean,SET,LIGHT,ALIGHT,BLIGHT,CLIGHT,DLIGHT);endaaa;--搶答模塊程序libraryieee;useieee.std_logic_1164.all;USEIEEE.STD_LOGIC_UNSIGNED.ALL;entityqiangdaisport(A,B,C,D,RESET,jishi:instd_logic;CLK:instd_logic;ean,SET:outstd_logic;LIGHT:outstd_logic_vector(3downto0);ALIGHT,BLIGHT,CLIGHT,DLIGHT:outstd_logic);endqiangda;architectureqiangdaofqiangdaissignalA0,B0,C0,D0:std_logic;signalA1,B1,C1,D1:std_logic;signalA2,B2,C2,D2:std_logic;beginA2<=notA1; B2<=notB1;C2<=notC1; D2<=notD1;L1:process(A0) --qiangdabeginA1<=(A0andB2andC2andD2);endprocessL1;L2:process(B0)beginB1<=(B0andA2andC2andD2);endprocessL2;L3:process(C0)beginC1<=(C0andA2andB2andD2);endprocessL3;L4:process(D0)beginD1<=(D0andA2andC2andB2);endprocessL4;L5:process(A1,B1,C1,D1,A,B,C,D,RESET)beginif(RESET='1')then --fuweiLIGHT<="0000";ALIGHT<='0';BLIGHT<='0';CLIGHT<='0';DLIGHT<='0';SET<='0';A0<='0';B0<='0';C0<='0';D0<='0';ean<='1';elseean<='0';if(A='1')then --suocunA0<='1';endif;if(B='1')thenB0<='1';endif;if(C='1')thenC0<='1';endif;if(D='1')thenD0<='1';endif;if(A1='1')then --qiangdaxiangguanweiLIGHT<="0001";elsif(B1='1')thenLIGHT<="0010";elsif(C1='1')thenLIGHT<="0011";elsif(D1='1')thenLIGHT<="0100";elseLIGHT<="0000";endif;ALIGHT<=A1;BLIGHT<=B1;CLIGHT<=C1;DLIGHT<=D1;--qiangdaxiangguandengSET<=(A1orB1orC1orD1);--panduanshifouyouqiangdaxinhaoendif;endprocessL5;endqiangda;--倒計時模塊程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityCO

溫馨提示

  • 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

提交評論