eda課程設(shè)計(jì)-用vhdl語(yǔ)言設(shè)計(jì)智能搶答器鑒別和計(jì)時(shí)模塊_第1頁(yè)
已閱讀1頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  用VHDL語(yǔ)言設(shè)計(jì)智能搶答器鑒別和計(jì)時(shí)模塊</p><p><b>  摘要</b></p><p>  伴隨著集成電路(IC)技術(shù)的發(fā)展,EDA技術(shù)已經(jīng)成為現(xiàn)代電子設(shè)計(jì)的發(fā)展趨勢(shì),并在各大公司、企事業(yè)單位和科研教學(xué)部門(mén)廣泛使用。VHDL是一種全方位的硬件描述語(yǔ)言,幾乎覆蓋了以往各種硬件描述語(yǔ)言的功能,整個(gè)自頂向下或自底向上的電路設(shè)計(jì)過(guò)程都可以用

2、VHDL來(lái)完成。本文闡述了EDA的概念和發(fā)展、VHDL語(yǔ)言的優(yōu)點(diǎn)和語(yǔ)法結(jié)構(gòu)并分析講解了智能搶答器的各模塊的功能要求、基本原理以及實(shí)現(xiàn)方法。本系統(tǒng)的設(shè)計(jì)就是采用VHDL硬件描述語(yǔ)言編程,基于Quartus II平臺(tái)進(jìn)行編譯和仿真來(lái)實(shí)現(xiàn)的,其采用的模塊化、逐步細(xì)化的設(shè)計(jì)方法有利于系統(tǒng)的分工合作,并且能夠及早發(fā)現(xiàn)各子模塊及系統(tǒng)中的錯(cuò)誤,提高系統(tǒng)設(shè)計(jì)的效率。本設(shè)計(jì)主要的功能是:1.對(duì)第一搶答信號(hào)的鑒別和鎖存功能; 2.限時(shí)功能3.記分功能4.數(shù)

3、碼顯示。</p><p>  關(guān)鍵詞 電子設(shè)計(jì)自動(dòng)化(EDA);VHDL;搶答器;自頂向下的設(shè)計(jì)方法</p><p>  The identification and timing module of the Answering</p><p>  snatches based on VHDL</p><p><b>  ABST

4、RACT</b></p><p>  As the fast development of the integrated circuit technology,Electronic design automation (EDA)technology has become the trend of modern electronic design,what's more,it has been

5、widely used by each big company, the enterprises and Scientific Institutions .VHDL is a kind of hardware description language,which is all-rounds, nearly covers the function of each other kind of hardware description lan

6、guage .Both the entire top-down and bottom-Up circuit design process could be accomplished by VHDL.Th</p><p>  KEY WORDS EDA;VHDL;the answering snatches;top-down design method</p><p><b> 

7、 目 錄</b></p><p>  中文摘要.............................................Ⅰ</p><p>  ABSTRACT...............................................Ⅱ</p><p><b>  1 緒 論1</b><

8、/p><p>  1.1 EDA技術(shù)的發(fā)展1</p><p>  1.2 智能搶答器的市場(chǎng)現(xiàn)狀和EDA技術(shù)的應(yīng)用1</p><p>  1.3 EDA技術(shù)的設(shè)計(jì)優(yōu)勢(shì)2</p><p>  1.4 論文結(jié)構(gòu)2</p><p>  2 系統(tǒng)的設(shè)計(jì)元素3</p><p>  2.1 傳統(tǒng)的數(shù)字系

9、統(tǒng)設(shè)計(jì)方法和現(xiàn)代的數(shù)字系統(tǒng)設(shè)計(jì)方法比較3</p><p>  2.2 VHDL硬件描述語(yǔ)言概述4</p><p>  2.3硬件平臺(tái)QuartusII概述5</p><p>  2.3.1 Quartus II介紹5</p><p>  2.3.2 Quartus II設(shè)計(jì)流程及注意事項(xiàng)6</p><p> 

10、 2.3.3 Quartus II的設(shè)計(jì)優(yōu)勢(shì)應(yīng)用舉例……………………………………………7</p><p>  2.4 實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)及芯片簡(jiǎn)述7</p><p>  3 智能搶答器系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)9</p><p>  3.1 搶答器系統(tǒng)設(shè)計(jì)要求9</p><p>  3.2系統(tǒng)總體設(shè)計(jì)思想9</p><p> 

11、 3.3子模塊的設(shè)計(jì)思想和實(shí)現(xiàn)11</p><p>  3.3.1 鑒別模塊的設(shè)計(jì)與實(shí)現(xiàn)11</p><p>  3.3.2 計(jì)時(shí)模塊的設(shè)計(jì)與實(shí)現(xiàn)12</p><p>  3.3.3 計(jì)分模塊的設(shè)計(jì)與實(shí)現(xiàn)14</p><p>  3.3.4 譯碼顯示模塊的設(shè)計(jì)與實(shí)現(xiàn)..16</p><p>  3.3.5 搶

12、答器的系統(tǒng)實(shí)現(xiàn)16</p><p>  4 智能搶答器子模塊的仿真驗(yàn)證19</p><p>  4.1 鑒別模塊的仿真驗(yàn)證19</p><p>  4.2 計(jì)時(shí)模塊的仿真驗(yàn)證20</p><p>  4.3 計(jì)分模塊的仿真驗(yàn)證21</p><p>  4.4 數(shù)顯模塊的仿真驗(yàn)證22</p>&

13、lt;p><b>  結(jié)束語(yǔ)24</b></p><p><b>  致 謝25</b></p><p><b>  參考文獻(xiàn)26</b></p><p>  (附錄)..........................................................2

14、6</p><p><b>  1 緒 論</b></p><p>  1.1 EDA技術(shù)的發(fā)展</p><p>  人類(lèi)社會(huì)已進(jìn)入到高度發(fā)達(dá)的信息化社會(huì),信息社會(huì)的發(fā)展離不開(kāi)電子產(chǎn)品的進(jìn)步?,F(xiàn)代電子產(chǎn)品在性能提高、復(fù)雜度增大的同時(shí),價(jià)格卻一直呈下降趨勢(shì),而且產(chǎn)品更新?lián)Q代的步伐也越來(lái)越快,實(shí)現(xiàn)這種進(jìn)步的主要原因就是生產(chǎn)制造技術(shù)和電子設(shè)計(jì)技術(shù)的發(fā)

15、展。前者以微細(xì)加工技術(shù)為代表,目前已進(jìn)展到深亞微米階段,可以在幾平方厘米的芯片上集成數(shù)千萬(wàn)個(gè)晶體管;后者的核心就是EDA技術(shù)?!?】EDA是指以計(jì)算機(jī)為工作平臺(tái),融合了應(yīng)用電子技術(shù)、計(jì)算機(jī)技術(shù)、智能化技術(shù)最新成果而研制成的電子CAD通用軟件包,主要能輔助進(jìn)行三方面的設(shè)計(jì)工作:IC設(shè)計(jì),電子電路設(shè)計(jì)以及PCB設(shè)計(jì)。沒(méi)有EDA技術(shù)的支持,想要完成上述超大規(guī)模集成電路的設(shè)計(jì)制造是不可想象的,但是面對(duì)當(dāng)今飛速發(fā)展的電子產(chǎn)品市場(chǎng),設(shè)計(jì)師需要更加實(shí)

16、用、快捷的EDA工具,使用統(tǒng)一的集體化設(shè)計(jì)黃精,改變傳統(tǒng)的設(shè)計(jì)思路,將精力集中到設(shè)計(jì)構(gòu)想、方案比較和尋找優(yōu)化設(shè)計(jì)等方面,需要以最快的速度,開(kāi)發(fā)出性能優(yōu)良、質(zhì)量一流的電子產(chǎn)品,對(duì)EDA技術(shù)提出了更高的要求。未來(lái)的EDA技術(shù)將在仿真、時(shí)序分析、集成電路自動(dòng)測(cè)試、高速印刷版設(shè)計(jì)及開(kāi)發(fā)操作平臺(tái)的擴(kuò)展等方面取得新的突破,向著功能強(qiáng)大、簡(jiǎn)單易</p><p>  1.2 智能搶答器的市場(chǎng)現(xiàn)狀和EDA技術(shù)的應(yīng)用</p&g

17、t;<p>  智力競(jìng)賽是“快樂(lè)學(xué)習(xí)”這一教育模式的典范,它采用在規(guī)定的一段時(shí)間內(nèi)搶答和必答等方式,在給人們的生活帶來(lái)樂(lè)趣的同時(shí),也使參與者和觀眾在愉悅的氛圍中學(xué)到一些科學(xué)知識(shí)和生活知識(shí),因此很受大家的喜歡。智力搶答器在智力競(jìng)賽中起到很重要的角色,能夠準(zhǔn)確、公正、直觀地判斷出首輪搶答者,并且通過(guò)搶答器的數(shù)碼顯示和警示蜂鳴等方式指示出首輪搶答者。</p><p>  EDA技術(shù)是在電子CAD技術(shù)基礎(chǔ)上

18、發(fā)展起來(lái)的計(jì)算機(jī)軟件系統(tǒng),是指以計(jì)算機(jī)為工作平臺(tái),融合了應(yīng)用電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理及智能化技術(shù)的最新成果,進(jìn)行電子產(chǎn)品的自動(dòng)設(shè)計(jì)。利用EDA工具,電子設(shè)計(jì)師可以從概念、算法、協(xié)議等開(kāi)始設(shè)計(jì)電子系統(tǒng),大量工作可以通過(guò)計(jì)算機(jī)完成,并可以將電子產(chǎn)品從電路設(shè)計(jì)、性能分析到設(shè)計(jì)出IC版圖或PCB版圖的整個(gè)過(guò)程在計(jì)算機(jī)上自動(dòng)處理完成?,F(xiàn)在對(duì)EDA的概念或范疇用得很寬。包括在機(jī)械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事等各個(gè)領(lǐng)域,

19、都有EDA的應(yīng)用。目前EDA 技術(shù)已在各大公司、企事業(yè)單位和科研教學(xué)部門(mén)廣泛使用。例如在飛機(jī)制造過(guò)程中,從設(shè)計(jì)、性能測(cè)試及特性分析直到飛行模擬,都可能涉及到EDA技術(shù)。</p><p>  所以從目前的市場(chǎng)情況來(lái)看,這個(gè)課題的研究很有發(fā)展前景。</p><p>  1.3 EDA技術(shù)的設(shè)計(jì)優(yōu)勢(shì)</p><p>  傳統(tǒng)的設(shè)計(jì)方法采用自底向上的設(shè)計(jì)方法,一般先按電子系

20、統(tǒng)的具體功能要求進(jìn)行功能劃分,然后對(duì)每個(gè)子模塊畫(huà)出真值表,用卡諾圖進(jìn)行手工邏輯簡(jiǎn)化,寫(xiě)出布爾表達(dá)式,畫(huà)出相應(yīng)的邏輯線路圖,再據(jù)此選擇元器件,設(shè)計(jì)電路板,最后進(jìn)行實(shí)測(cè)與調(diào)試,由于無(wú)法進(jìn)行硬件系統(tǒng)功能仿真,如果某一過(guò)程存在錯(cuò)誤,查找和修改十分不便,所以這是一種費(fèi)時(shí)、費(fèi)力的設(shè)計(jì)方法,而現(xiàn)代電子設(shè)計(jì)技術(shù)(EDA)是自頂向下且先進(jìn)高效的。在電子產(chǎn)品的設(shè)計(jì)理念、設(shè)計(jì)方式、系統(tǒng)硬件構(gòu)成、設(shè)計(jì)的重用性、知識(shí)產(chǎn)權(quán)、設(shè)計(jì)周期等方面,EDA技術(shù)具有一定的優(yōu)勢(shì)

21、。所以本次設(shè)計(jì)的搶答器拋棄了傳統(tǒng)的設(shè)計(jì)方法,選擇了采用主流的EDA技術(shù)進(jìn)行設(shè)計(jì)。</p><p><b>  1.4 論文結(jié)構(gòu)</b></p><p>  ※第一章 緒論部分,介紹了該課題的發(fā)展前景、現(xiàn)狀以及EDA技術(shù)的設(shè)計(jì)優(yōu)勢(shì)等;</p><p>  ※第二章 概述整個(gè)系統(tǒng)設(shè)計(jì)的設(shè)計(jì)元素;</p><p>  ※第三章

22、 詳細(xì)介紹用VHDL語(yǔ)言對(duì)智能搶答器的設(shè)計(jì)和實(shí)現(xiàn);</p><p>  ※第四章 各功能模塊的仿真。</p><p><b>  2 系統(tǒng)的設(shè)計(jì)元素</b></p><p>  此次設(shè)計(jì)是按照"自頂向下"的設(shè)計(jì)方法,對(duì)整個(gè)系統(tǒng)進(jìn)行方案設(shè)計(jì)和功能劃分,系統(tǒng)的關(guān)鍵電路用一片或幾片專(zhuān)用集成電路(ASIC)實(shí)現(xiàn),然后采用硬件描述語(yǔ)言

23、(VHDL)完成系統(tǒng)行為級(jí)設(shè)計(jì),最后通過(guò)綜合器和適配器生成最終的目標(biāo)器件。這樣的設(shè)計(jì)方法被稱(chēng)為高層次的電子設(shè)計(jì)方法。具體介紹如下:</p><p>  2.1 傳統(tǒng)的數(shù)字系統(tǒng)設(shè)計(jì)方法和現(xiàn)代的數(shù)字系統(tǒng)設(shè)計(jì)方法比較</p><p>  傳統(tǒng)的數(shù)字系統(tǒng)設(shè)計(jì)方法:基于電路板的設(shè)計(jì)方法——采用固定功能的器件(通用型器件),通過(guò)設(shè)計(jì)電路板來(lái)實(shí)現(xiàn)系統(tǒng)功能,在系統(tǒng)硬件設(shè)計(jì)的后期進(jìn)行仿真和調(diào)試 </p

24、><p>  現(xiàn)代的數(shù)字系統(tǒng)設(shè)計(jì)方法:基于芯片——采用PLD,利用EDA開(kāi)發(fā)工具,通過(guò)芯片設(shè)計(jì)來(lái)實(shí)現(xiàn)系統(tǒng)功能,在系統(tǒng)硬件設(shè)計(jì)的早期進(jìn)行仿真。此系統(tǒng)的設(shè)計(jì)就是采用的現(xiàn)代的數(shù)字系統(tǒng)設(shè)計(jì)方法——EDA的設(shè)計(jì)方法。兩種設(shè)計(jì)方法的具體步驟如下:</p><p>  圖2-1兩種設(shè)計(jì)方法的具體步驟</p><p>  其與傳統(tǒng)的設(shè)計(jì)方法的具體優(yōu)劣比較如下表:</p>

25、<p>  表2-1 傳統(tǒng)設(shè)計(jì)方法 vs EDA設(shè)計(jì)方法 </p><p>  由以上兩對(duì)比圖、表可知,智能搶答器的設(shè)計(jì)采用自頂向下的設(shè)計(jì)方法較優(yōu)。而傳統(tǒng)的電子設(shè)計(jì)的基本思路還是選擇標(biāo)準(zhǔn)集成電路"自底向上"(Bottom-Up)地構(gòu)造出一個(gè)新的系統(tǒng),這樣的設(shè)計(jì)方法就如同一磚一瓦地建造金字塔,不僅效率低、成本高而且還容易出錯(cuò)。</p><p>  2.2 VHD

26、L硬件描述語(yǔ)言概述</p><p>  硬件描述語(yǔ)言(HDL-Hardware Description Language)是一種用于設(shè)計(jì)硬件電子系統(tǒng)的計(jì)算機(jī)語(yǔ)言,早期的硬件描述語(yǔ)言,如ABEL-HDL、AHDL,是由不同的EDA廠商開(kāi)發(fā)的,互相不兼容,而且不支持多層次設(shè)計(jì),層次間翻譯工作要由人工完成。為了克服以上缺陷,1985年美國(guó)國(guó)防部正式推出VHDL(Very High Speed IC Hardware D

27、escription Language)語(yǔ)言,1987年IEEE采納VHDL為硬件描述語(yǔ)言標(biāo)準(zhǔn)(IEEE STD-1076)?!?】</p><p>  VHDL對(duì)系統(tǒng)進(jìn)行設(shè)計(jì),可以在電子設(shè)計(jì)的各個(gè)階段、各個(gè)層次對(duì)于編輯好的程序,在Altera公司提供的QuartusII平臺(tái)上進(jìn)行編譯、仿真,然后通過(guò)時(shí)序圖可以看出了此編程是否符合預(yù)想的設(shè)計(jì)功能,如果不符合,在硬件測(cè)試前就可以及早發(fā)現(xiàn)各子模塊及系統(tǒng)中的錯(cuò)誤,這樣的

28、設(shè)計(jì)特點(diǎn)無(wú)疑將提高系統(tǒng)設(shè)計(jì)的效率。</p><p>  除此之外,用VHDL進(jìn)行電子系統(tǒng)設(shè)計(jì)的一個(gè)很大的優(yōu)點(diǎn)是設(shè)計(jì)者可以專(zhuān)心致力于其功能的實(shí)現(xiàn),而不需要對(duì)不影響功能的與工藝有關(guān)的因素花費(fèi)過(guò)多的時(shí)間和精力。</p><p>  2.3硬件平臺(tái)QuartusII概述</p><p>  2.3.1 Quartus II介紹</p><p>  Q

29、uartus II是Altera 公司單芯片可編程系統(tǒng)(SOPC) 設(shè)計(jì)的綜合性環(huán)境,也是適合SOPC的最全面的設(shè)計(jì)環(huán)境。它擁有現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA) 和復(fù)雜可編程邏輯器件(CPLD) 設(shè)計(jì)的所有階段的解決方案。Quartus II 設(shè)計(jì)軟件改進(jìn)了性能、提升了功能性、解決了潛在的設(shè)計(jì)延遲等,在工業(yè)領(lǐng)域率先提供FPGA與mask-programmed devices開(kāi)發(fā)的統(tǒng)一工作流程。同時(shí),Altera的Quartus II可編程邏

30、輯軟件還屬于第四代PLD開(kāi)發(fā)平臺(tái)。該平臺(tái)支持一個(gè)工作組環(huán)境下的設(shè)計(jì)要求,其中包括支持VHDL、Verilog的設(shè)計(jì)流程,其內(nèi)部嵌有VHDL、Verilog邏輯綜合器。同樣,Quartus II具備仿真功能,同時(shí)也支持第三方的仿真工具。Quartus II支持層次化設(shè)計(jì),可以在一個(gè)新的編輯輸入環(huán)境中對(duì)使用不同</p><p>  輸入設(shè)計(jì)方式完成的模塊進(jìn)行調(diào)用,從而解決了原理圖與HDL混合輸入設(shè)計(jì)的問(wèn)題,并且在設(shè)計(jì)

31、輸入之后,Quartus II的編譯器將給出設(shè)計(jì)輸入的錯(cuò)誤報(bào)告。</p><p>  2.3.2 Quartus II設(shè)計(jì)流程及注意事項(xiàng)</p><p>  基于 Quartus II的VHDL文本輸入設(shè)計(jì)流程如下圖所示:</p><p>  圖2-2基于 Quartus II的VHDL文本輸入設(shè)計(jì)流程</p><p>  由上圖可以看出,這

32、樣的設(shè)計(jì)方法對(duì)于電子設(shè)計(jì)的各個(gè)階段、各個(gè)層次的操作都在Altera公司提供的QuartusII平臺(tái)上進(jìn)行編譯、仿真測(cè)試,然后通過(guò)仿真時(shí)序圖可以看出了此編程是否符合預(yù)想的設(shè)計(jì)功能,如果不符合,在硬件測(cè)試前就可以及早發(fā)現(xiàn)各子模塊及系統(tǒng)中的錯(cuò)誤,這樣的設(shè)計(jì)特點(diǎn)無(wú)疑將提高系統(tǒng)設(shè)計(jì)的效率。</p><p>  在設(shè)計(jì)實(shí)驗(yàn)過(guò)程中有以下幾點(diǎn)需要注意:</p><p>  1.在編程時(shí)要注意信號(hào)與變量的區(qū)

33、別,并能正確定義和應(yīng)用。</p><p>  2.在創(chuàng)建工程時(shí),要注意工程名和文件名和實(shí)體名要保持一致;</p><p>  3.設(shè)計(jì)結(jié)束時(shí)間時(shí)最好是時(shí)間周期的15倍,否則可能會(huì)出現(xiàn)時(shí)序圖圖像重疊不好識(shí)別的現(xiàn)象;</p><p>  4.仿真中,適當(dāng)進(jìn)制的轉(zhuǎn)換有時(shí)候可以更使觀察者更明顯地看出來(lái)時(shí)序圖的功能。</p><p>  2.3.3 Q

34、uartus II的設(shè)計(jì)優(yōu)勢(shì)應(yīng)用舉例</p><p>  隨著邏輯設(shè)計(jì)復(fù)雜性的不斷增加,僅依賴(lài)于軟件方式的仿真測(cè)試來(lái)了解設(shè)計(jì)系統(tǒng)的硬件功能已經(jīng)遠(yuǎn)遠(yuǎn)不夠了,而需要重復(fù)進(jìn)行硬件系統(tǒng)測(cè)試的測(cè)試也變得更為困難。嵌入式邏輯分析儀SignalTapII的使用就解決了這一問(wèn)題。它可以隨設(shè)計(jì)文件一并下載于目標(biāo)芯片中,用以捕捉目標(biāo)芯片內(nèi)部系統(tǒng)信號(hào)節(jié)點(diǎn)處的信息或總線上的數(shù)據(jù)流,而又不影響原硬件系統(tǒng)的正常工作。【4】嵌入式邏輯分析儀S

35、ignalTapII有很多的優(yōu)點(diǎn):(1)允許對(duì)設(shè)計(jì)層次的模塊的信號(hào)節(jié)點(diǎn)進(jìn)行測(cè)試,可以使用多時(shí)鐘驅(qū)動(dòng);(2)利用Signal Tap II成功的采集了FPGA內(nèi)部信號(hào)的波形,不占用額外的I/O引腳;(3)Signal Tap II為硬件板級(jí)調(diào)試工具,它采集的波形是工程下載后的實(shí)時(shí)波形,方便設(shè)計(jì)者查找引起設(shè)計(jì)缺陷的原因;(4)節(jié)約成本。Signal Tap II集成在Quartus II軟件中,無(wú)需另外付費(fèi);(5)能通過(guò)設(shè)置以確定前后觸發(fā)捕

36、捉信號(hào)信息的比例.</p><p>  除此之外,應(yīng)用Signal Tap II還能解決各種各樣的問(wèn)題,如外部存儲(chǔ)器的雙向數(shù)據(jù)口的實(shí)時(shí)波形檢測(cè)、驅(qū)動(dòng)模塊的并串轉(zhuǎn)換波形等。</p><p>  2.4 實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng)及芯片簡(jiǎn)述</p><p>  本設(shè)計(jì)采用的實(shí)驗(yàn)箱為GW48-PK型EDA/SOC實(shí)驗(yàn)開(kāi)發(fā)系統(tǒng),選用的芯片為ALTERA公司的型號(hào)為EP1C3T144C8的

37、Cyclone系列芯片,該芯片是ALTERA推出的低價(jià)格、高容量的FPGA,其以較低的價(jià)格、優(yōu)良的特性以及豐富的片上資源在實(shí)際應(yīng)用中被廣泛的采用,這些都是其他同類(lèi)產(chǎn)品無(wú)法相比的。</p><p>  這款芯片的資源利用率最佳為85%左右,QuartusⅡ軟件包的編程器是系統(tǒng)的核心,提供功能強(qiáng)大的設(shè)計(jì)處理,設(shè)計(jì)者可以添加特定的約束條件來(lái)提高芯片的利用率。 </p><p>  關(guān)于FPGA/

38、CPLD器件的配置:</p><p>  當(dāng)在Quartus Ⅱ中完成設(shè)計(jì)后,就應(yīng)當(dāng)將所設(shè)計(jì)的電路下載到CPLD芯片中,結(jié)合用戶(hù)系統(tǒng)進(jìn)行統(tǒng)一的調(diào)試。針對(duì)CPLD器件不同的內(nèi)部結(jié)構(gòu),Altera公司提供了不同的器件配置方式。Altera可編程邏輯器件的配置可通過(guò)編程器、JATG接口在線編程及Altera在線配置三種方式進(jìn)行?!?】</p><p>  Altera器件編程的連接硬件包括Byt

39、eBlaster并口下載電纜,ByteBlasterMV并口下載電纜,MasterBlaster串行/USB 通信電纜,BitBlaster串口下載電纜。Altera公司提供的EPC1、EPC2、EPC16和EPC1441等PROM配置芯片。</p><p>  ByteBlaster 并口下載電纜連接示意圖如下圖所示:</p><p>  圖2-3 ByteBlaster 并口下載電纜連

40、接示意圖</p><p>  ByteBlaster并口下載電纜提供兩種下載模式:</p><p> ?。?)被動(dòng)串行模式(PS模式)——用于配置FLEX 10K、FLEX 8000和FLEX 6000器件;</p><p> ?。?)JTAG模式——具有工業(yè)標(biāo)準(zhǔn)的JTAG邊界掃描測(cè)試電路(符合IEEE 1149.1:1990標(biāo)準(zhǔn)),用于配置FLEX 10K或?qū)A

41、X 9000、MAX 7000S和MAX 7000A器件進(jìn)行編程。</p><p>  3 智能搶答器系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  3.1 搶答器系統(tǒng)設(shè)計(jì)要求 </p><p>  一般來(lái)說(shuō),設(shè)計(jì)一臺(tái)智能搶答器,必須能夠準(zhǔn)確判斷出第一位搶答者,并且通過(guò)數(shù)顯、蜂鳴這些途徑能讓人們很容易得知誰(shuí)是搶答成功者,并設(shè)置一定的回答限制時(shí)間,讓搶答者在規(guī)定時(shí)間內(nèi)答

42、題,主持人根據(jù)答題結(jié)果實(shí)行增減分的操作,并將分?jǐn)?shù)顯示在屏幕上,評(píng)出最終贏家。所以我們?cè)谠O(shè)計(jì)智能搶答器的模塊需要滿(mǎn)足鑒別、計(jì)時(shí)、計(jì)分、數(shù)顯等功能,具體設(shè)計(jì)要求如下:</p><p> ?。?)搶答器可容納四組選手,并為每組選手設(shè)置一個(gè)按鈕供搶答者使用;為主持人設(shè)置一個(gè)控制按鈕,用來(lái)控制系統(tǒng)清零(組別顯示數(shù)碼管滅燈)和搶答開(kāi)始;</p><p> ?。?)電路具有對(duì)第一搶答信號(hào)的鎖存、鑒別和顯

43、示等功能。在主持人將系統(tǒng)復(fù)位并發(fā)出搶答指令后,蜂鳴器提示搶答開(kāi)始,計(jì)時(shí)顯示器顯示初始時(shí)間并開(kāi)始倒計(jì)時(shí),若參賽選手按下?lián)尨鸢粹o,則該組別的信號(hào)立即被鎖存,并在組別顯示器上顯示該組別,同時(shí)揚(yáng)聲器也給出音響提示,此時(shí),電路具備自鎖功能,使其他搶答按鈕不起作用。</p><p> ?。?)如果無(wú)人搶答,計(jì)時(shí)器倒計(jì)時(shí)到零,蜂鳴器有搶答失敗提示,主持人可以按復(fù)位鍵,開(kāi)始新一輪的搶答。</p><p>

44、 ?。?)搶答器具有限時(shí)搶答的功能,且一次搶答的時(shí)間由主持人設(shè)定,本搶答時(shí)間設(shè)定為60秒。當(dāng)主持人啟動(dòng)開(kāi)始鍵后,要求計(jì)時(shí)器采用倒計(jì)時(shí),同時(shí)最后十秒揚(yáng)聲器會(huì)發(fā)出聲響提示;</p><p> ?。?)參賽選手在設(shè)定的時(shí)間內(nèi)搶答,則搶答有效,定時(shí)器停止工作,主持人根據(jù)搶答結(jié)果給出分?jǐn)?shù),并由數(shù)碼管顯示選手的組別、搶答分?jǐn)?shù),并一直保持到主持人將系統(tǒng)清零為止?!?】</p><p>  3.2系統(tǒng)總體

45、設(shè)計(jì)思想</p><p>  本設(shè)計(jì)為四路智能搶答器,所以這種搶答器要求有四路不同組別的搶答輸入信號(hào),并能識(shí)別最先搶答的信號(hào),直觀地通過(guò)數(shù)顯和蜂鳴等方式顯示出組別;對(duì)回答問(wèn)題所用的時(shí)間進(jìn)行計(jì)時(shí)、顯示、超時(shí)報(bào)警、預(yù)置答題時(shí)間,同時(shí)該系統(tǒng)還應(yīng)有復(fù)位、倒計(jì)時(shí)啟動(dòng)功能。</p><p>  搶答過(guò)程:主持人按下系統(tǒng)復(fù)位鍵(RST),系統(tǒng)進(jìn)入搶答狀態(tài),計(jì)時(shí)模塊和計(jì)分模塊輸出初始信號(hào)給數(shù)碼顯示模塊并顯

46、示出初始值。當(dāng)某參賽組搶先將搶答鍵按下時(shí),系統(tǒng)將其余三路搶答信號(hào)封鎖,同時(shí)揚(yáng)聲器發(fā)出聲音提示,組別顯示模塊送出信號(hào)給數(shù)碼顯示模塊,從而顯示出該搶答成功組臺(tái)號(hào),并一直保持到下一輪主持人將系統(tǒng)清零為止。主持人對(duì)搶答結(jié)果進(jìn)行確認(rèn),隨后,計(jì)時(shí)模塊送出倒計(jì)時(shí)計(jì)數(shù)允許信號(hào),開(kāi)始回答問(wèn)題,計(jì)時(shí)顯示器則從初始值開(kāi)始以計(jì)時(shí),在規(guī)定的時(shí)間內(nèi)根據(jù)答題的正誤來(lái)確定加分或減分,并通過(guò)數(shù)碼顯示模塊將成績(jī)顯示出來(lái)。計(jì)時(shí)至0時(shí),停止計(jì)時(shí),揚(yáng)聲器發(fā)出超時(shí)報(bào)警信號(hào),以中止

47、未回答完問(wèn)題。當(dāng)主持人給出倒計(jì)時(shí)停止信號(hào)時(shí),揚(yáng)聲器停止鳴叫。若參賽者在規(guī)定時(shí)間內(nèi)回答完為題,主持人可給出倒計(jì)時(shí)計(jì)數(shù)停止信號(hào),以免揚(yáng)聲器鳴叫。主持人按下復(fù)位鍵,即RST為高電平有效狀態(tài),清除前一次的搶答組別,又可開(kāi)始新的一輪的搶答。</p><p>  此搶答器的設(shè)計(jì)中采用自頂向下的設(shè)計(jì)思路,運(yùn)用VHDL硬件描述語(yǔ)言對(duì)各個(gè)模塊進(jìn)行層次化、系統(tǒng)化的描述,并且先設(shè)計(jì)一個(gè)頂層文件,再把各個(gè)模塊連接起來(lái)?!?】系統(tǒng)的總體框

48、圖如下:</p><p>  圖3-1系統(tǒng)的總體框圖</p><p>  3.3子模塊的設(shè)計(jì)思想和實(shí)現(xiàn)</p><p>  根據(jù)對(duì)搶答器的功能要求,把要設(shè)計(jì)的系統(tǒng)劃分為五個(gè)功能模塊:搶答信號(hào)鑒別模塊、計(jì)時(shí)模塊、計(jì)分模塊、數(shù)碼顯示模塊和揚(yáng)聲器控制電路,具體的說(shuō),顯示模塊又包含最先搶答的組別顯示電路、計(jì)時(shí)值顯示電路和計(jì)分顯示電路。計(jì)時(shí)模塊、計(jì)分模塊、數(shù)碼顯示模塊和揚(yáng)聲器

49、控制電路,具體的說(shuō),顯示模塊又包含最先搶答的組別顯示電路、計(jì)時(shí)值顯示電路和計(jì)分顯示電路?!?】</p><p>  3.3.1 鑒別模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  搶答鑒別模塊用來(lái)準(zhǔn)確直觀地判斷A、B、C、D四組搶答者誰(shuí)最先按下按鈕,并為顯示端送出信號(hào),通過(guò)數(shù)顯和蜂鳴等途徑使觀眾能夠清楚地知道是哪一組搶答成功,是整個(gè)系統(tǒng)的核心部分。同時(shí)組別顯示端為下一模塊輸入信號(hào),以方便主持人為該組

50、搶答成功者進(jìn)行加減分的操作。</p><p>  搶答鑒別模塊的元件圖如下圖所示:</p><p>  圖3-2 鑒別模塊元件框圖</p><p><b>  引腳作用:</b></p><p>  輸入信號(hào):各組的搶答按鈕A、B、C、D,系統(tǒng)清零信號(hào)INI。</p><p>  輸出信號(hào): 各組

51、的搶答按鈕顯示端A1、B1、C1、D1,組別顯示端G[3..0]。</p><p>  原理:第一個(gè)按下鍵的小組,搶答信號(hào)判定電路LOCK通過(guò)緩沖輸出信號(hào)的反饋將本參賽組搶先按下按鍵的信號(hào)鎖存,并且以異步清零的方式將其他參賽組的鎖存器清零,組別顯示、計(jì)時(shí)和計(jì)分會(huì)保存到主持人對(duì)系統(tǒng)進(jìn)行清零操作時(shí)為止。當(dāng)INI=1時(shí)系統(tǒng)復(fù)位,使組別顯示信號(hào)G=0000,各組的指示燈信號(hào)A1=0,B1=0,C1=0,D1=0;當(dāng)INI

52、=0,即低電平有效,使其進(jìn)入搶答鑒別狀態(tài),到CLK的上升沿到來(lái)時(shí),以A組搶答成功為例,當(dāng)輸入信號(hào)為A=1,B=0,C=0,D=0,輸出信號(hào)G=1000,A1=1,即為鑒別出A組搶答成功,同時(shí)屏蔽其他組的輸入信號(hào),以免發(fā)生錯(cuò)誤。同理其他組別搶答成功也是這樣的鑒別過(guò)程。【9】</p><p>  備注:理論上來(lái)說(shuō),A、B、C、D四組搶答,應(yīng)該有從0000—1111等16種可能情況,但是由于時(shí)鐘信號(hào)的頻率很高而且是在時(shí)

53、鐘信號(hào)上升沿的狀況下才做出的鑒別,所以在這里兩組以上同時(shí)搶答成功的可能性非常小,因此可以只設(shè)計(jì)四種情況,即A、B、C、D分別為1000、0100、0010、0001,這大大簡(jiǎn)化了電路的設(shè)計(jì)復(fù)雜性。</p><p>  其用VHDL語(yǔ)言進(jìn)行編程的流程圖如下圖所示:</p><p>  圖3-3 搶答鑒別模塊的流程圖</p><p>  3.3.2 計(jì)時(shí)模塊的設(shè)計(jì)與實(shí)現(xiàn)

54、</p><p>  當(dāng)搶答鑒別模塊成功判別出最先按下?lián)尨鸢粹o的參賽組后,在成功鑒別出哪組最先搶答后,主持人按下計(jì)時(shí)信號(hào),則進(jìn)入計(jì)時(shí)狀態(tài)。計(jì)時(shí)模塊可分作兩部分:(1)預(yù)置數(shù);(2)60秒倒計(jì)時(shí)。60秒時(shí)間用兩個(gè)數(shù)碼管QA,QB顯示,其中QA表示60秒的個(gè)位,QB表示60秒的十位。計(jì)時(shí)模塊開(kāi)始工作從預(yù)置初始值開(kāi)始以秒計(jì)時(shí),計(jì)時(shí)至0秒時(shí)停止,時(shí)間耗盡時(shí),揚(yáng)聲器會(huì)發(fā)出超時(shí)報(bào)警信號(hào),以中止答題。</p>&

55、lt;p>  圖3-4 計(jì)時(shí)模塊的元件圖</p><p>  該系統(tǒng)輸入信號(hào)有:系統(tǒng)清零信號(hào)CLR,計(jì)時(shí)預(yù)置控制端LDN,計(jì)時(shí)使能端EN,系統(tǒng)時(shí)鐘信號(hào)CLK,計(jì)時(shí)預(yù)置數(shù)據(jù)調(diào)整按鈕TA、TB。系統(tǒng)輸出信號(hào)有:倒計(jì)時(shí)輸出端QA[3..0]、QB[3..0]。</p><p>  當(dāng)清零信號(hào)CLR=1時(shí),模塊輸出信號(hào)QA=0000 ,QB=0000。當(dāng)預(yù)置數(shù)控制信號(hào)LDN=1可通過(guò)TA來(lái)調(diào)

56、整QA,TA來(lái)一次高電平,則QA的數(shù)值就加1;用TB來(lái)調(diào)整QB,通過(guò)這兩個(gè)調(diào)整信號(hào)可調(diào)整參賽者答題所需要的時(shí)間。在CLR=0,LDN=0,EN=1時(shí),通過(guò)時(shí)鐘信號(hào)CLK的上升沿來(lái)進(jìn)行60秒到計(jì)時(shí)?!?0】其用VHDL語(yǔ)言進(jìn)行編程的流程圖如下: </p><p>  圖3-5 搶答計(jì)時(shí)模塊的流程圖</p><p>  3.3.3 計(jì)分模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p

57、>  計(jì)分模塊的運(yùn)行方式是按照十進(jìn)制進(jìn)行加減,即當(dāng)時(shí)鐘出現(xiàn)上升沿時(shí)就進(jìn)行加一或者減一的操作。</p><p>  記分模塊為哪組進(jìn)行記分取決于鑒別模塊的輸入信號(hào)G,當(dāng)G=1000時(shí)表示A組最先搶答,則在此模塊中為A組記分,當(dāng)G=0100時(shí)表示B組最先搶答,則在此模塊中為B組記分,當(dāng)G=0010時(shí)表示C組最先搶答,則在此模塊中為C組記分,當(dāng)G=0001時(shí)表示D組最先搶答,則在此模塊中為D組記分。</p&

58、gt;<p>  以A組為例來(lái)說(shuō)明此模塊的設(shè)計(jì),當(dāng)復(fù)位信號(hào)RST=1時(shí),系統(tǒng)復(fù)位且A組的分值顯示初始值,為100分。當(dāng)RST=0時(shí),如果該組選手答題正確,則主持人按下加分鍵,即ADD=1,此時(shí)對(duì)該組進(jìn)行加分操作;如果該組選手答題錯(cuò)誤,則主持人按下減分鍵,即SUB=1,此時(shí)對(duì)該組進(jìn)行減分操作。</p><p>  計(jì)分模塊的元件圖如下圖所示:</p><p>  圖3-6 計(jì)分

59、模塊的元件圖</p><p>  系統(tǒng)的輸入信號(hào)有:計(jì)分復(fù)位端RST,加分按鈕端ADD,減分按鈕端SUB,組別號(hào)輸入端CHOS[3..0]。系統(tǒng)的輸出信號(hào)有:A組分?jǐn)?shù)輸出端AA2[3..0]、AA1[3..0]、AA0[3..0],B組分?jǐn)?shù)輸出端BB2[3..0]、BB1[3..0]、BB0[3..0],C組分?jǐn)?shù)輸出端CC2[3..0]、CC1[3..0]、CC0[3..0],D組分?jǐn)?shù)輸出端DD2[3..0]、D

60、D1[3..0]、DD0[3..0]。</p><p>  計(jì)分模塊用VHDL語(yǔ)言進(jìn)行編程的流程圖如下:</p><p>  圖3-7計(jì)分模塊的設(shè)計(jì)狀態(tài)圖</p><p>  注:在設(shè)計(jì)中減法的實(shí)現(xiàn)是以加法運(yùn)算來(lái)實(shí)現(xiàn)的。也以A為例,由于每次減分都是減去10分,即每次為POINTS_A1減一,所以可以用POINTS_A1+ "1111"來(lái)實(shí)現(xiàn)。如:

61、0111-0001=0110,用加法實(shí)現(xiàn):0111+1111=10110。由于POINTS_A1: STD_LOGIC_VECTOR(3 DOWNTO 0),所以POINTS_A1=0110。</p><p>  3.3.4 譯碼顯示模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p>  該模塊實(shí)際上是一個(gè)譯碼器,作用是用來(lái)顯示組別,時(shí)間和成績(jī),其主要原理是四位二進(jìn)制BCD編碼轉(zhuǎn)換成七段二進(jìn)制數(shù)字,以阿拉伯

62、數(shù)字的形式輸出在數(shù)碼管上,使觀眾能夠更直觀的看到結(jié)果。譯碼器的譯碼對(duì)照表3-1如下所示:</p><p>  表3-1 譯碼器的譯碼對(duì)照表</p><p>  備注 :在程序中只考慮0000-1001(即0-9)的情況,將其轉(zhuǎn)化為相應(yīng)的七段顯示器的碼子,其他情況不予考慮。</p><p>  3.3.5 搶答器的系統(tǒng)實(shí)現(xiàn)</p><p>  

63、單獨(dú)模塊只有彼此聯(lián)系起來(lái)構(gòu)成一個(gè)完整的系統(tǒng),才能實(shí)現(xiàn)其功能,這個(gè)過(guò)程有兩種實(shí)現(xiàn)方法:①元件例化。也是用編程的方式將它們各個(gè)程序、信號(hào)、輸入輸出之間的關(guān)系用VHDL語(yǔ)言來(lái)敘述清楚,還關(guān)系到程序的調(diào)用問(wèn)題,需要設(shè)計(jì)者思路清晰,設(shè)計(jì)合理;②元器件圖示連線。這種連線方法思路清晰可見(jiàn),而且用的時(shí)候很簡(jiǎn)單方便,出現(xiàn)錯(cuò)誤也很好檢查。在設(shè)計(jì)中選擇的是這種方法。通過(guò)總的頂層元件圖可以很清晰的看到模塊連接的原理。</p><p> 

64、 圖3-8 頂層元件圖 </p><p>  附表:輸入/輸出引腳的作用:</p><p>  表3-2 輸入/輸出引腳的作用</p><p>  注:本設(shè)計(jì)中,搶答器組別信號(hào)A、B、C、D為高電平時(shí),其功能為有效狀態(tài)。同樣,系統(tǒng)清零信號(hào)CLR、預(yù)置及倒計(jì)時(shí)控制信號(hào)LDN,亦為高電平有效。當(dāng)CLR有效時(shí),搶答信號(hào)判別電路清零,為判別優(yōu)先搶答信號(hào)做出準(zhǔn)備。當(dāng)計(jì)時(shí)

65、使能端EN為低電平,預(yù)置時(shí)間設(shè)置信號(hào)LDN=1時(shí),通過(guò)計(jì)時(shí)預(yù)置數(shù)據(jù)調(diào)整按鈕TA、TB進(jìn)行預(yù)置數(shù)。當(dāng)計(jì)時(shí)使能端EN為高電平,有系統(tǒng)時(shí)鐘信號(hào)CLK時(shí),進(jìn)行一分鐘倒計(jì)時(shí)。輸入時(shí)鐘CLK一方面作為揚(yáng)聲器控制電路的輸入信號(hào),另一方面作為搶答信號(hào)判別電路中鎖存器時(shí)鐘,為使揚(yáng)聲器音調(diào)較為悅耳,且是搶答判別電路有較高的準(zhǔn)確度(對(duì)信號(hào)判別的最大誤差是一個(gè)時(shí)鐘周期),CLK信號(hào)頻率高低應(yīng)適中,可取500Hz-1KHz;同時(shí)CLK信號(hào)經(jīng)過(guò)分頻后向倒計(jì)時(shí)電路提

66、供信號(hào)。</p><p>  4 智能搶答器子模塊的仿真驗(yàn)證</p><p>  4.1鑒別模塊的仿真驗(yàn)證</p><p>  利用QuartusII進(jìn)行編譯,綜合,仿真,時(shí)序圖如下:</p><p>  圖4-1鑒別模塊的仿真時(shí)序圖</p><p><b>  引腳作用:</b></p&g

67、t;<p>  系統(tǒng)輸入信號(hào):各組的搶答按鈕A、B、C、D,系統(tǒng)清零信號(hào)CLR,CLK時(shí)鐘信號(hào)。</p><p>  系統(tǒng)的輸出信號(hào): 各組的搶答按鈕顯示端A1、B1、C1、D1,組別顯示端控制信號(hào)G[3..0]。</p><p><b>  仿真分析:</b></p><p>  當(dāng)鑒別模塊的清零信號(hào)CLR為高電平時(shí),無(wú)論A、B

68、、C、D四組參賽者誰(shuí)按下?lián)尨鸢粹o,系統(tǒng)輸出均為零,同時(shí)組別顯示端G輸出信號(hào)也顯示為零;當(dāng)清零信號(hào)CLR為低電平時(shí),A、B、C、D四組參賽者誰(shuí)先按下?lián)尨鸢粹o,組別顯示端就顯示該組別的號(hào)碼。假如C組按下?lián)尨鸢粹o時(shí),組別輸出為0010,同時(shí)C組的顯示燈被點(diǎn)亮。仿真圖上顯示的為A先搶答,因?yàn)樵?-1.28微秒之間A、C雖然都按搶答鍵,但CLR為有效狀態(tài),所以在此時(shí)間段內(nèi)的搶答無(wú)效。</p><p>  4.2計(jì)時(shí)模塊的仿

69、真驗(yàn)證</p><p>  利用QuartusII進(jìn)行編譯,綜合,仿真,時(shí)序圖如下:</p><p>  圖4-2 計(jì)時(shí)模塊的仿真時(shí)序圖</p><p><b>  引腳作用:</b></p><p>  系統(tǒng)輸入信號(hào):系統(tǒng)清零信號(hào)CLR,計(jì)時(shí)預(yù)置控制端LDN,計(jì)時(shí)使能端EN,系統(tǒng)時(shí)鐘信號(hào)CLK,計(jì)時(shí)預(yù)置數(shù)據(jù)調(diào)整按鈕TA

70、、TB。</p><p>  系統(tǒng)輸出信號(hào):倒計(jì)時(shí)輸出端QA[3..0]、QB[3..0]。</p><p>  仿真分析:當(dāng)系統(tǒng)清零信號(hào)CLR=1時(shí),計(jì)時(shí)器的時(shí)鐘信號(hào)回到計(jì)時(shí)預(yù)置倒計(jì)時(shí)起始狀態(tài),此時(shí)倒計(jì)時(shí)輸出端QA=0000,QB=0000.當(dāng)計(jì)時(shí)使能端EN=0,計(jì)時(shí)預(yù)置控制端LDN=1時(shí),通過(guò)計(jì)時(shí)預(yù)置數(shù)據(jù)調(diào)整按鈕TA、TB進(jìn)行預(yù)制數(shù),并且通過(guò)TA,TB來(lái)調(diào)整QA,QB即當(dāng)TA=1時(shí),則

71、QA的數(shù)值加1,當(dāng)TB=1時(shí),則QB的數(shù)值也加1。當(dāng)計(jì)時(shí)使能端EN=1,系統(tǒng)清零信號(hào)CLR=0,并且計(jì)時(shí)預(yù)置控制端LDN=0時(shí),通過(guò)時(shí)鐘信號(hào)上升沿CLK來(lái)進(jìn)行60秒倒計(jì)時(shí)。</p><p>  4.3計(jì)分模塊的仿真驗(yàn)證</p><p>  利用QuartusII進(jìn)行編譯,綜合,仿真,時(shí)序圖如下:</p><p>  圖4-3 計(jì)分模塊的仿真時(shí)序圖</p>

72、<p><b>  引腳作用:</b></p><p>  系統(tǒng)的輸入信號(hào)有:計(jì)分復(fù)位端RST,加分按鈕端ADD,減分按鈕端SUB,組別號(hào)輸入端CHOS[3..0]。</p><p>  系統(tǒng)的輸出信號(hào)有:A組分?jǐn)?shù)輸出端AA2[3..0]、AA1[3..0]、AA0[3..0],B組分?jǐn)?shù)輸出端BB2[3..0]、BB1[3..0]、BB0[3..0],C

73、組分?jǐn)?shù)輸出端CC2[3..0]、CC1[3..0]、CC0[3..0],D組分?jǐn)?shù)輸出端DD2[3..0]、DD1[3..0]、DD0[3..0]。</p><p>  仿真分析:首先應(yīng)該清楚,在計(jì)分器電路的設(shè)計(jì)中,按十進(jìn)制進(jìn)行加減分操作的,當(dāng)出現(xiàn)時(shí)鐘信號(hào)上升沿CLK就可以完成對(duì)參賽者加減分操作。智能搶答器記分模塊的仿真時(shí)以加分操作為例。由仿真圖3-10可知以下情況:</p><p> ?。?/p>

74、1)系統(tǒng)設(shè)計(jì)過(guò)程中,當(dāng)計(jì)分復(fù)位端RST=1時(shí),并且組別輸入信號(hào)CHOS=0000,其中的組別輸入信號(hào)是搶答鑒別模塊的輸出信號(hào),計(jì)分器復(fù)位,此時(shí)以上四組都不會(huì)產(chǎn)生加減分操作。</p><p> ?。?)然而當(dāng)計(jì)分復(fù)位端RST=0時(shí),此時(shí)計(jì)分器可以計(jì)分。當(dāng)CHOS=0001時(shí),組別顯示為A組,此時(shí)主持人利用計(jì)分器對(duì)A組進(jìn)行加減分操作;當(dāng)CHOS=0010時(shí),組別顯示為B組,此時(shí)主持人則利用計(jì)分器對(duì)B組進(jìn)行加減分操作;

75、當(dāng)CHOS=0100時(shí),組別顯示為C組,此時(shí)系統(tǒng)對(duì)C組進(jìn)行加減分操作;當(dāng)CHOS=1000時(shí),組別顯示為D組,此時(shí)對(duì)D組進(jìn)行加減分操作。由仿真圖可知,當(dāng)主持人按下系統(tǒng)復(fù)位鍵RST鍵時(shí),使分?jǐn)?shù)復(fù)位,每位設(shè)置的初始分?jǐn)?shù)為100分。當(dāng)CHOS=1000時(shí),即D搶答成功時(shí),加分鍵ADD輸入四個(gè)脈沖,DD1加到4,說(shuō)明加分成功,成績(jī)變?yōu)?40分。其他搶答者搶答成功后的加分操作與此相同。減分的仿真與此類(lèi)似,因?yàn)槭且约臃▽?shí)現(xiàn),本質(zhì)與加分相同,當(dāng)計(jì)分復(fù)

76、位端RST=0時(shí),可以計(jì)分。由仿真圖可知,初始成績(jī)均為100分。當(dāng)CHOS=1000時(shí),即D搶答成功時(shí),減分鍵SUB輸入四個(gè)脈沖,DD1加到4,說(shuō)明減分成功,成績(jī)變?yōu)?0分。其他搶答者搶答成功后的減分操作與此相同。</p><p>  4.4數(shù)顯模塊的仿真驗(yàn)證</p><p>  利用QuartusII進(jìn)行編譯,綜合,仿真,時(shí)序圖如下:</p><p>  圖4-4

77、數(shù)顯模塊的仿真時(shí)序圖</p><p><b>  引腳作用:</b></p><p>  輸入信號(hào):AIN4;</p><p>  輸出信號(hào):DOUT7。</p><p><b>  仿真分析:</b></p><p>  當(dāng)AIN4= "0000" ,

78、DOUT7輸出"1111110",此時(shí)數(shù)碼管顯示0; </p><p>  當(dāng)AIN4= "0001" , DOUT7輸出"0110000",此時(shí)數(shù)碼管顯示1;</p><p>  當(dāng)AIN4= "0010" , DOUT7輸出"1101101",此時(shí)數(shù)碼管顯示2; </p>

79、<p>  當(dāng)AIN4= "0011" , DOUT7輸出"1111001",此時(shí)數(shù)碼管顯示3; </p><p>  當(dāng)AIN4= "0100" , DOUT7輸出"0110011",此時(shí)數(shù)碼管顯示4; </p><p>  當(dāng)AIN4= "0101" , DOUT7輸出&quo

80、t;1011011",此時(shí)數(shù)碼管顯示5;</p><p>  當(dāng)AIN4= "0110" , DOUT7輸出"1011111",此時(shí)數(shù)碼管顯示6;</p><p>  當(dāng)AIN4= "0111" , DOUT7輸出"1110000",此時(shí)數(shù)碼管顯示7;</p><p>  當(dāng)A

81、IN4= "1000" , DOUT7輸出"1111111",此時(shí)數(shù)碼管顯示8;</p><p>  當(dāng)AIN4= "1001" , DOUT7輸出"1111011",此時(shí)數(shù)碼管顯示9;</p><p><b>  結(jié)束語(yǔ)</b></p><p>  本文主要介紹了

82、利用VHDL語(yǔ)言設(shè)計(jì)智能搶答器的詳細(xì)流程,并橫向介紹了一些關(guān)于此設(shè)計(jì)的背景知識(shí),比如EDA的應(yīng)用、QutartusrⅡ設(shè)計(jì)流程等等。在設(shè)計(jì)的過(guò)程中,文章通過(guò)對(duì)比傳統(tǒng)的自底向上的設(shè)計(jì)方法和和現(xiàn)代EDA的自頂向下的設(shè)計(jì)方法,突出了EDA設(shè)計(jì)方法的優(yōu)越性。</p><p>  在這次設(shè)計(jì)中,我們也遇到了一些問(wèn)題,比如設(shè)置輸入信號(hào)不合適時(shí),時(shí)序圖也會(huì)出現(xiàn)一些毛刺現(xiàn)象。同時(shí),我也發(fā)現(xiàn)了自己的許多不足。首先,最初開(kāi)發(fā)時(shí),對(duì)系

83、統(tǒng)沒(méi)有一個(gè)完整的思路,考慮不是很全面,所以系統(tǒng)功能設(shè)計(jì)時(shí),碰到不少困難,也耽擱了不少時(shí)間。其次,我發(fā)現(xiàn)自己對(duì)于書(shū)本上的很多知識(shí)還不夠熟悉,對(duì)開(kāi)發(fā)工具的掌握還不算很全面,有很多我們需要掌握的知識(shí)還沒(méi)掌握,所以在設(shè)計(jì)編程、編譯以及仿真過(guò)程中走了不少?gòu)澛?。再次,在論文的整理過(guò)程中,我對(duì)word文檔的操作技能不是很嫻熟,所以在以后的學(xué)習(xí)生活中,我會(huì)努力并盡量彌補(bǔ)我所缺少的一些相關(guān)知識(shí),不斷提高自己的操作能力。</p><p&

84、gt;<b>  致 謝</b></p><p>  本論文的工作是在我的導(dǎo)師陳楊教授的悉心指導(dǎo)下完成的。在整個(gè)畢業(yè)設(shè)計(jì)過(guò)程中,陳楊老師不斷引導(dǎo)我們,幫助我們梳理論文思路,耐心地給我解釋一些細(xì)節(jié)上的、我不理解的問(wèn)題,并提出一些新的問(wèn)題,使得我對(duì)畢業(yè)設(shè)計(jì)課題能夠有更深入的思考,幫助我順利完成畢業(yè)設(shè)計(jì)和論文。在此謹(jǐn)向陳老師致以誠(chéng)摯的謝意和崇高的敬意。</p><p> 

85、 在此,我還要感謝董碩、沈娟等同學(xué)對(duì)我的幫助,這段時(shí)間我們之間的相互協(xié)作,不僅促進(jìn)了畢設(shè)的順利完成,同時(shí)也增進(jìn)我們之間的友誼 。</p><p>  最后,感謝所有支持過(guò)我、幫助過(guò)我的老師、朋友和同學(xué)們,祝愿大家都會(huì)有一個(gè)美好而又光明的未來(lái)。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 漢澤西.EDA技術(shù)與應(yīng)用【M

86、】.北京:北京航空航天大學(xué)出版社,2004</p><p>  [2] 侯伯亨,顧新. VHDL硬件描述語(yǔ)言與數(shù)字邏輯電路設(shè)計(jì).西安:西安電子科技大學(xué)出版社,1997</p><p>  [3] 黃任.編著VHDL入門(mén)、解惑、經(jīng)典實(shí)例、經(jīng)驗(yàn)總結(jié).北京:北京航空航天大學(xué)出版社,2005</p><p>  [4] 羅朝霞,高書(shū)莉.CPLD/FPGA設(shè)計(jì)及應(yīng)用.北京:人

87、民郵電出版社, 2007.7.</p><p>  [5] 陳云恰,保延翔.CPLD應(yīng)用技術(shù)與數(shù)字系統(tǒng)統(tǒng)計(jì).電子工業(yè)出版社, 2006.</p><p>  [6] 李偉英,謝完成.基于EDA技術(shù)的搶答器的設(shè)計(jì)與實(shí)現(xiàn)【J】.科學(xué)技術(shù)與實(shí)現(xiàn), 2008.8(11).</p><p>  [7]譚會(huì)生,瞿遂存.EDA技術(shù)綜合應(yīng)用實(shí)例與分析【M】.西安:西安電子科技大學(xué)出

88、版社, 2004.</p><p>  [8]姜雪松,吳鈺淳.VHDL設(shè)計(jì)實(shí)例與仿真.機(jī)械工業(yè)出版社, 2007.</p><p>  [9]Altera Corporation.Altera Digital Library.Altera,2002.</p><p>  [10](美) Stephen Brown , Zvonko Vranesic 編著.Funda

89、mengtals of Digital Logic with VHDL Design.McGraw—Hill Education(Asia),2002.8.</p><p><b>  附 錄</b></p><p>  附錄1 搶答鑒別模塊VHDL程序(QDJB.VHD)</p><p>  LIBRARY IEEE; </p>

90、<p>  USE IEEE.STD_LOGIC_1164.ALL; </p><p>  ENTITY QDJB IS</p><p>  PORT (CLR: IN STD_LOGIC;</p><p>  CLK: IN STD_LOGIC;</p><p>  A, B, C, D: IN STD_LOGIC; &

91、lt;/p><p>  A1, B1, C1, D1: OUT STD_LOGIC; </p><p>  G: OUT STD_LOGIC_VECTOR (3 DOWNTO 0)); </p><p>  END QDJB; </p><p>  ARCHITECTURE ART OF QDJB IS</p><p>

92、  CONSTANT W1: STD_LOGIC_VECTOR:="0001"; </p><p>  CONSTANT W2: STD_LOGIC_VECTOR:="0010"; </p><p>  CONSTANT W3: STD_LOGIC_VECTOR:="0100"; </p><p>  CO

93、NSTANT W4: STD_LOGIC_VECTOR:="1000"; </p><p><b>  BEGIN</b></p><p>  PROCESS (CLR, A, B, C, D)</p><p><b>  BEGIN</b></p><p>  IF CLR=&

94、#39;1' THEN G<="0000"; </p><p>  ELSIF (A='1'AND B='0'AND C='0'AND D='0') THEN</p><p>  A1<='1'; B1<='0'; C1<='0'

95、;; D1<='0'; G<=W1; </p><p>  ELSIF (A='0'AND B='1'AND C='0'AND D='0') THEN</p><p>  A1<='0'; B1<='1'; C1<='0'; D1&l

96、t;='0'; G<=W2; </p><p>  ELSIF (A='0'AND B='0'AND C='1'AND D='0') THEN</p><p>  A1<='0'; B1 <='0'; C1<='1'; D1<=

97、9;0'; G<=W3; </p><p>  ELSIF (A='0'AND B='0'AND C='0'AND D='1') THEN</p><p>  A1<='0'; B1 <='0'; C1<='0'; D1<='1

98、9;; G<=W4; </p><p><b>  END IF; </b></p><p>  END PROCESS; </p><p><b>  END ART;</b></p><p>  附錄2 搶答計(jì)時(shí)模塊VHDL程序(JSQ.VHD)</p><p> 

99、 LIBRARY IEEE; </p><p>  USE IEEE.STD_LOGIC_1164.ALL; </p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL; </p><p>  ENTITY JSQ IS</p><p>  PORT (CLR, LDN, EN, CLK: IN STD_LOGIC;

100、 </p><p>  TA, TB: IN STD_LOGIC; </p><p>  QA: OUT STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p>  QB: OUT STD_LOGIC_VECTOR (3 DOWNTO 0)); </p><p><b>  END JSQ; </b&g

101、t;</p><p>  ARCHITECTURE ART OF JSQ IS</p><p>  SIGNAL DA: STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p>  SIGNAL DB: STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p><b>  BEGIN

102、</b></p><p>  PROCESS (TA,TB,CLR) </p><p><b>  BEGIN</b></p><p>  IF CLR='1' THEN</p><p>  DA<="0000"; </p><p>  

103、DB<="0000"; </p><p><b>  ELSE</b></p><p>  IF TA='1' THEN</p><p>  DA<=DA+"0001" ; </p><p><b>  END IF; </b>&

104、lt;/p><p>  IF TB='1' THEN</p><p>  DB<=DB+"0001"; </p><p><b>  END IF; </b></p><p><b>  END IF; </b></p><p>  EN

105、D PROCESS; </p><p>  PROCESS (CLK)</p><p>  VARIABLE TMPA: STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p>  VARIABLE TMPB: STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p><b>  BEG

106、IN</b></p><p>  IF CLR='1' THEN TMPA:="0000"; TMPB:="0110"; </p><p>  ELSIF CLK'EVENT AND CLK='1' THEN</p><p>  IF LDN='1' THEN

107、</p><p>  TMPA:=DA;TMPB:=DB; </p><p>  ELSIF EN='1' THEN</p><p>  IF TMPA="0000" THEN</p><p>  TMPA:="1001"; </p><p>  IF TMPB=

108、"0000" THEN </p><p>  TMPB:="0110"; </p><p>  ELSE TMPB:=TMPB-"0001"; </p><p><b>  END IF; </b></p><p>  ELSE TMPA:=TMPA-"

109、;0001";</p><p><b>  END IF; </b></p><p><b>  END IF; </b></p><p><b>  END IF; </b></p><p>  QA<=TMPA; QB<=TMPB; </p>

110、;<p>  END PROCESS; </p><p><b>  END ART;</b></p><p>  附錄3 搶答計(jì)分模塊VHDL程序(JFQ.VHD)</p><p>  LIBRARY IEEE; </p><p>  USE IEEE.STD_LOGIC_1164.ALL; </p

111、><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL; </p><p>  ENTITY JFQ IS</p><p>  PORT (RST: IN STD_LOGIC; </p><p>  ADD: IN STD_LOGIC;</p><p>  SUB: IN STD_LOGIC;<

112、/p><p>  CHOS: IN STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p>  AA2, AA1, AA0, BB2, BB1, BB0: OUT STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p>  CC2, CC1, CC0, DD2, DD1, DD0: OUT STD_LOGIC_VECTOR

113、 (3 DOWNTO 0)); </p><p><b>  END JFQ; </b></p><p>  ARCHITECTURE ART OF JFQ IS</p><p><b>  BEGIN</b></p><p>  PROCESS (RST, ADD, SUB,CHOS)</p

114、><p>  VARIABLE POINTS_A2, POINTS_A1: STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p>  VARIABLE POINTS_B2, POINTS_B1: STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p>  VARIABLE POINTS_C2, POINTS_C1: ST

115、D_LOGIC_VECTOR (3 DOWNTO 0); </p><p>  VARIABLE POINTS_D2, POINTS_D1: STD_LOGIC_VECTOR (3 DOWNTO 0); </p><p><b>  BEGIN</b></p><p>  IF ADD='1' THEN</p>&

116、lt;p>  IF RST='1' THEN</p><p>  POINTS_A2:="0001"; POINTS_A1:="0000"; </p><p>  POINTS_B2:="0001"; POINTS_B1:="0000"; </p><p>  PO

溫馨提示

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

評(píng)論

0/150

提交評(píng)論