八位競賽搶答器_第1頁
八位競賽搶答器_第2頁
八位競賽搶答器_第3頁
八位競賽搶答器_第4頁
八位競賽搶答器_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——八位競賽搶答器摘要

搶答器的設計是基于VHDL語言,可以支持八個選手搶答,搶答器不僅具有倒計時功能,具有計數(shù)功能,還準備了重置的功能。搶答器主要包含第一判斷電路模塊、倒計時電路模塊、計分電路模塊、顯示電路模塊以及位選擇電路模塊。參賽選手假使成功搶答,則開始倒計時,答對者可以得到相應的分數(shù),答錯不扣分。通過利用QUARTUS軟件完成相應的底層代碼編寫,用這些底層的模塊來構(gòu)建頂層模塊,以及對頂層模塊仿真、編譯,以實現(xiàn)我們所需要的功能。

關(guān)鍵字:搶答器;EDA;VHDL;FPGA

I

Designof8bitcontestResponderbasedonFPGA

Abstract

ResponderthisdesignisbasedonVHDLlanguage,supportingeightplayersresponder.Responderhasnotonlythefunctionofthecountdownhascountingcomprisesafirstjudgmentcircuitmodule,coutdowncircuitmodule,scoringmodule,displaycircuitmoduleandaselectioncircuitmodule.Ifthecontestantsaresuccessfultorequiretheanswerfirstly,thentheresponderwillstartthecountdown,youcangetthecorrespondingscores,wronganswersarenotpenalized.ByusingtheQUARTUSsoftwaretocompletetheunderlyingcodewrittenbythecorresponding,theunderlyingmodeltoconstructthetopmodule,aswellasthetopmodule,compiledsimulation,inordertorealizethefunctionsweneed.

Keywords:Responder;EDA;VHDL;FPGA

II

目錄

摘要IAbstractII第一章緒論3

1.1引言31.2電子搶答器研究的背景與意義31.3系統(tǒng)設計要求4其次章電子搶答器總體設計方案5

2.1系統(tǒng)總體方案設計52.2主控芯片簡介5

2.2.1FPGA和CPLD器件52.2.2可編程規(guī)律器件分類62.2.3FPGA的基本結(jié)構(gòu)62.3EDA技術(shù)72.4VHDL8

2.4.1關(guān)于VHDL82.4.2VHDL語言程序結(jié)構(gòu)82.4.3VHDL語言描述方式8

第三章電子搶答器的具體設計方案9

3.1系統(tǒng)具體方案設計103.2主要模塊設計11

3.2.1第一判斷電路113.2.2計分電路123.2.3倒計時電路133.2.4顯示電路133.2.5位選選擇電路14

第四章電子搶答器系統(tǒng)仿真與分析15

4.1系統(tǒng)總原理圖分析與仿真154.2倒計時模塊分析與仿真17

第1頁共31頁

4.3判斷電路模塊分析與仿真174.4計分模塊分析與仿真18終止語18致謝錯誤!未定義書簽。比賽更為規(guī)范。因此,各式各樣的搶答器就應運而生了。起初的搶答器相當簡單,隨著電子科技的不斷發(fā)展,電子搶答器經(jīng)歷了標注參賽選手編號的搶答器,到目前為止,搶答器都可以實現(xiàn)數(shù)顯,其功能在不斷的豐富[1]?,F(xiàn)在的搶答器不但可以用來計時,還可以用來報警、計分顯示。正是由于有了這些功能日趨強大的搶答器,才使我們的比賽變得更加公允公正和精彩。

1.3系統(tǒng)設計要求

這次設計的主要任務是設計一個八位的搶答器,實現(xiàn)鑒別、鎖存、倒計時,計分,報警等功能。以VHDL語言為基礎,通過QUARTUS軟件實現(xiàn)本次設計。這個搶答器可以同時容納八位選手搶答,八位選手每人面前會有一個搶答按鈕和一個顯示分數(shù)的顯示屏。但當主持人沒有發(fā)送答題指令,參賽選手假使提前回復,它會發(fā)出警報。若是搶答有效的話,則搶答器進入搶答狀態(tài),并進入倒計時,搶答器計數(shù)時間為30秒?;貜蜁r間超過30秒,則會發(fā)出超時報警。參賽者中止回復。

若參賽選手答題正確,主持人則會中止倒計時,并通過加分按鈕,對回復正確的選手加上相應的分數(shù)。

電子搶答器也有一個重置的功能,當主持人想重置的結(jié)果,返回到初始狀態(tài),可以按下復位按鈕。

第4頁共31頁

其次章電子搶答器總體設計方案

2.1系統(tǒng)總體方案設計

本系統(tǒng)是以VHDL語言為基礎,通過QUARTUS軟件實現(xiàn)鑒別、鎖存、倒計時、計分、報警和顯示等功能。

系統(tǒng)模塊如圖2-1所示:

圖2-1電子搶答器設計框圖

譯碼顯示模塊超時報警譯碼顯示模塊計分模塊倒計時模塊參賽選手搶答鑒別判斷模塊主持人開關(guān)顯示模塊2.2主控芯片簡介

2.2.1FPGA和CPLD器件

可編程規(guī)律器件的應用的發(fā)展,數(shù)字系統(tǒng)的可靠性設計繼續(xù)增加。同時,可編程規(guī)律器件也簡化了對電路的設計,降低了開發(fā)的成本。

從20世紀60年代出現(xiàn)集成電路以后,數(shù)字集成電路一共可以分為下面幾個階段:SSI階段、MSI階段、LSI階段、VISI階段和UISI階段??删幊桃?guī)律器件可分為兩大類:第一類是專用集成電路和其次類是標準規(guī)律器件。

FPGA和CPLD都是可編程陣列規(guī)律的延伸。它們都有各自的優(yōu)勢和缺陷。

第5頁共31頁

FPGA的規(guī)律單元較CPLD較小,容量較大。不過FPGA在時間安排上要比CPLD弱一點。同時,F(xiàn)PGA提供了相當大的有效規(guī)律容量密度。不僅在系統(tǒng)設計過程中的可實現(xiàn)性和可取性大大提高,而且降低了系統(tǒng)功耗。FPGA主要可以分為二維規(guī)律塊陣列、輸入輸出塊和鏈接規(guī)律塊的互聯(lián)資源。

CPLD是基于一些PAL或產(chǎn)品的術(shù)語,容量相對來說較小,適合做一些使用寄放器使用較少、容量不大且組合規(guī)律比較繁雜的設計[2]。而FPGA則適于有大量規(guī)律單元,容量較大,內(nèi)聯(lián)存儲器及一些其他的高級特性。

FPGA芯片是特別的ASIC芯片,不僅具有ASIC的特點,還具有以下幾個優(yōu)點:

設計周期短,風險小,開發(fā)成本低,而且可重復擦寫。具有豐富的引腳和觸發(fā)器,可以滿足用戶的應用需求。運算速度遠遠高于單片機。2.2.2可編程規(guī)律器件分類

可編程規(guī)律器件的分類方式有好多種,可依照器件結(jié)構(gòu)、集成度分類、編程工藝分類等。[3]

依照器件結(jié)構(gòu)可分為簡單PLD、CPLD和FPGA。

依照集成度可以分為低密度PLD器件和高密度PLD器件。常見的低密度PLD器件有PROM、PLA、EPROM、PAL和GAL器件等,尋常簡稱PLD器件。高密度PLD器件有EPLD、CPLD和FPGA。

依照編程工藝可分為熔絲器件、反熔絲器件、紫外線可擦除可編程規(guī)律器件、電可擦除可編程器件、Flash器件和SRAM器件。2.2.3FPGA的基本結(jié)構(gòu)

FPGA基本由可編程規(guī)律單元、可編程輸入/輸出單元、布線資源、嵌入式塊RAM、底層嵌入功能單元和內(nèi)嵌專用硬核等組成。不過不同的生產(chǎn)廠家會有所不同。[4]

基本規(guī)律可編程單元

它們尋常排成一個陣列,用戶可以根據(jù)自己的需要進行連接和配置。實現(xiàn)用戶所需要功能的基本單位是基本規(guī)律可編程單元。

可編程輸入/輸出單元

芯片的外部引腳和芯片規(guī)律接口,在芯片與陣列的四周分布。他們可將可編

第6頁共31頁

程規(guī)律模塊和I/O模塊連接起來,連接成具有一定功能的電路。

嵌入式塊RAM

現(xiàn)在,隨著FPGA的發(fā)展,可編程存儲器嵌入在FPGA最,由于模塊是嵌入式,F(xiàn)PGA的靈活性大大提高,應用范圍擴大。

布線資源

基本上FPGA內(nèi)部的所有單元都會有布線資源通過,布線資源一般可分為全局性的專用布線資源、短線資源、長線資源。[5]

底層嵌入功能單元

底層嵌入功能單元說的是通用程度較高的嵌入功能模塊,但并不是所有的FPGA都會有底層嵌入功能單元,為了適應不同場合的需求,越來越多的模塊被嵌入到FPGA內(nèi)部。

內(nèi)嵌專用硬核

內(nèi)嵌專用硬核值得是那些通用性較弱,而針對性較強的專用硬核。但是并非所有的FPGA器件都含有內(nèi)嵌專用硬核。高端通信市場的可編程規(guī)律器件都有內(nèi)嵌專用硬核。

2.3EDA技術(shù)

EDA(ElectronicDesignAutomation)即電子設計自動化。電子設計自動化是指利用計算機完成電子系統(tǒng)的設計。他從最初的計算機輔助設計過渡到計算機輔助工程設計和現(xiàn)在正在使用的電子設計自動化這三個階段。

計算機輔助工程結(jié)合EDA技術(shù)的計算機輔助設計技術(shù),計算機輔助制造技術(shù),計算機輔助測試技術(shù),硬件包括集成電路制造技術(shù),集成電路幅員設計技術(shù),專用集成電路測試,封裝技術(shù),但在現(xiàn)代電子技術(shù)方面包括更多的內(nèi)容。

EDA技術(shù)包含了可編程規(guī)律器件、軟件開發(fā)工具和硬件描述語言等三個方面內(nèi)容。

EDA軟件開發(fā)工具說的是以工作站或高檔計算機為基本工作平臺,利用拓撲規(guī)律學、計算數(shù)學、人工智能和計算機圖形學等多個學科知識研發(fā)出來的一套軟件工具,一般的EDA開發(fā)軟件包括設計輸入工具、規(guī)律綜合器、仿真器、集成FPGA/CPLD開發(fā)工具、檢查/分析工具及布局布線工具等。[6]

第7頁共31頁

2.4VHDL

2.4.1關(guān)于VHDL

VHDL是一種標準的硬件描述語言,翻譯成中文就是超高速集成電路硬件描述語言。FPGA和ASIC設計的設計者一般話都會采用VHDL來設計系統(tǒng)行為級的設計。在現(xiàn)在電子產(chǎn)品的開發(fā)中,不管是系統(tǒng)級設計人員還是ASIC設計人員都會通過學習VHDL來設計電子產(chǎn)品,VHDL一個重要特點就是具有通用性,它還可以支持不同層次設計者需求的標準語言。2.4.2VHDL語言程序結(jié)構(gòu)

VHDL語言一般由三大部分組成:USE聲明區(qū)、ENTITY聲明區(qū)以及ARCHITECTURE聲明區(qū)。

庫是一種用來存儲事先完成的原件和程序包數(shù)據(jù)集合體的倉庫。一般來說,庫中會放置一定數(shù)量的程序包,而每個程序包優(yōu)惠擁有一定數(shù)量的子程序,子程序中又由過程、設計實體、函數(shù)等基礎設計單元組成。

一般話,庫又被分為兩類。在不同的設計項目中相對應的目錄所對應的WORK庫,也就是設計庫。存放常規(guī)元件和標準模塊的庫,被稱作為資源庫。

將定義好的常數(shù)、元件語句、子程序、數(shù)據(jù)類型收集,然后組成在一個集合中,以此來便利更多的設計者引用,這就是程序包。程序包主要包括程序包的說明和程序包的內(nèi)容。

程序包首的說明部分可以被用來采集多個不一樣的VHDL設計所需的公共信息。其中包括數(shù)據(jù)類型說明、子程序說明、信號說明等。程序包結(jié)構(gòu)中,程序包體可以要也可以不要,程序包首也可以單獨的使用或者定義。

程序包體包括在程序包首中已經(jīng)定義的子程序體,子程序體實現(xiàn)算法就是它相應的內(nèi)容。

實體描述的是設計電路對外接口進行的說明,主要有實體定義和端口描述兩個部分構(gòu)成。當描述一個硬件電路時,電路必需要先有一個名稱,同時還要對外鏈接的I/O接口信號進行說明。實體是硬件電路集成在芯片里時,對外連接的可視部分。

2.4.3VHDL語言描述方式

VHDL的結(jié)構(gòu)體描述整個設計實體的規(guī)律功能。其規(guī)律功能在結(jié)構(gòu)體中可以

第8頁共31頁

使用不一樣的語句類型和描述方式來進行描述。對于同一個規(guī)律行為也可以使用幾種不同的語句表達方式。VHDL描述方式主要分為行為描述、RTL描述和結(jié)構(gòu)化描述三種方式。

(1)行為描述

行為描述重視輸入與輸出間的規(guī)律關(guān)系和轉(zhuǎn)換行為,不含有任何結(jié)構(gòu)信息的描述。主要是指順序語句的描述。行為描述的設計模塊定義了系統(tǒng)的行為。這種描述方式一般由一個或多個進程構(gòu)成。

(2)RTL描述

RTL描述有被稱作數(shù)據(jù)流描述,也被叫做寄放器傳輸語言。它是建立在用并行信號賦值語句的描述基礎上,只要當語句中任何一個輸入信號的值放生改變,賦值語句就會被激活,隨著這種語句對電路行為的描述,相當多的有關(guān)這種結(jié)構(gòu)的信息也會從這種規(guī)律描述中流出。[7]

(3)結(jié)構(gòu)化描述

結(jié)構(gòu)化描述是基于元件例話語句或生成語句的應用。利用這種語句,可以使用不同類型的結(jié)構(gòu)來實現(xiàn)多層次的工程,元件間的連接則是通過定義相關(guān)的端口界面來完成的。結(jié)構(gòu)化描述包含了元件說明和元件例化兩部分。

第三章電子搶答器的具體設計方案

第9頁共31頁

3.1系統(tǒng)具體方案設計

根據(jù)設計要求,系統(tǒng)需要滿足倒計時、計分、搶答判斷、違規(guī)報警和顯示等功能。所以相對應的模塊包括一判斷電路模塊、倒計時電路模塊、計分電路模塊、顯示電路模塊以及位選擇電路模塊。第一判斷電路模塊主要負責判斷哪位參賽選手是最先搶答的,倒計時是對搶答成功的選手進行倒計時。顯示電路則負責顯示參賽選手所得的分數(shù)和倒計時時間,計分電路則負責統(tǒng)計參賽選手所獲得的分數(shù)。

搶答器在輸入端需要配有八個搶答按鍵和主持人使用的按鍵以及加分按鍵,在輸出端需要配有八組參賽選手搶答狀態(tài)的八個顯示燈以及顯示計分和倒計時時間的顯示模塊,同時還有一個違規(guī)報警的蜂鳴器。

搶答器的工作狀態(tài):

違規(guī)狀況:當主持人沒有發(fā)出搶答指令時,即使能信號EN為低電平日,報警信號W[7..0]相應的輸出為高電平,即為違規(guī)。

搶答成功:當主持人發(fā)出搶答指令后,即使能信號EN為高電平日,八組參賽選手A、B、C、D、E、F、G、H八個參賽選手誰先搶答成功,則對應的顯示燈亮起,代表搶答成功。

答題階段:搶答成功后,搶答器開始計時,搶答器從設定好的時間開始計時,如超過計時時間,則答題失敗,蜂鳴器報警,參賽選手不加分也不減分。如在規(guī)定時間內(nèi)答題成功,則主持人給出倒計時清零信號,則按下加分鍵進行加分,每組回復正確的選手即可獲得相應的分數(shù)。

復位階段:在下一輪搶答開始前,需要對搶答成功的參賽選手進行清零,但是不會改變參賽者所得分數(shù)。

搶答器程序工作流程圖如下:

第10頁共31頁

3-1主程序流程圖

3.2主要模塊設計

本設計主要包括判斷模塊,倒計時電路模塊,計分模塊,顯示模塊電路和位選擇電路模塊。本設計使用VHDL語言編程。3.2.1第一判斷電路

第一判斷電路模塊不僅需要有鑒別哪一位參賽選手首先進行搶答的功能,還要有將鑒別的信號進行鎖存的功能。當使能信號EN為高電平日,即可以開始搶答,當復位信號CLR為高電平日,所有狀態(tài)都被置為初始狀態(tài),八個參賽選手按下?lián)尨鸢粹o時,即為高電平。

當使能信號為高電平日,根據(jù)八組參賽選手按下?lián)尨鸢粹o的先后的順序來判斷誰是最先進行搶答的選手,其相應的顯示為高電平,即狀態(tài)顯示燈亮。搶答選手的編號則由R[7..0]給出。同時搶答器還會鎖存此狀態(tài)。當需要進行重新?lián)尨鸬臅r候,需要對該模塊進行清零,也就是按下清零鍵,電路也將被恢復到初始狀態(tài)。

當使能信號一直處于低電平的時候,八位參賽選手只要有任意一位選手按下?lián)尨鸢粹o時,即出現(xiàn)搶答違規(guī)的狀況,這是W[7..0]相對應的位將出現(xiàn)高電平,用來表示搶答違規(guī)。

第11頁共31頁

圖3-2第一判斷電路框圖3.2.2計分電路

當八位參賽選手搶答成功后,且答題也正確時,便可獲得相應的分數(shù),這時就需要用到計分電路模塊。該模塊包括組別識別信號CHOS[7..0]和加分按鈕add。加分信號為高電平有效。通過組別識別信號判斷是哪一位參賽選手需要進行加分。加分規(guī)則為答對一題加十分,答錯不扣分。

圖3-3計分器電路框圖

第12頁共31頁

3.2.3倒計時電路

當參賽選手搶答成功后,進入答題階段,主持人通過按下rst鍵,開始進入倒計時,倒計時時間為30秒,假使參賽選手在相應的30秒內(nèi)答題成功,則主持人會給出倒計時計數(shù)阻止信號。蜂鳴器則不會報警;假使參賽選手在規(guī)定時間內(nèi)未能回復正確,則計數(shù)器中止計時,蜂鳴器則會報警,參賽選手不可以再答題。

圖3-4倒計時電路框圖3.2.4顯示電路

顯示電路是以七段數(shù)碼管構(gòu)成,其中七段數(shù)碼管為共陰極數(shù)碼管,一般來說,七段數(shù)碼管LED常用的為八字型,也就是abcdefgp,其中p代表的是小數(shù)點,共陰LED數(shù)碼管為低電平有效。

在這里我們不需要用到小數(shù)點位,所以我們就只需要用到七位。

七段LED共陰極譯碼器組成的顯示模塊的框圖如圖3-5所示。由圖可見,輸入信號為DIN[7..0],輸出信號為DOUT[6..0]。將輸入的二進制數(shù)譯碼表示成相應的十進制數(shù)字的0~9。對應的LED譯碼器輸出與對應的二進制和十進制轉(zhuǎn)換如表3-1所示。

圖3-5顯示模塊框圖、

表3-1十進制數(shù)字對應的LED譯碼器表示十進制0123二進制0000000100100011LED共陰譯碼器輸出0111111000011010110111001111

第13頁共31頁

456789

0100010101100111100010011100110110110111111010000111111111111011113.2.5位選選擇電路

位選選擇電路本質(zhì)上可以說是把輸入的27個DIN[7..0]信號經(jīng)由位選電路輸出shift[26...0]進行選擇信號和相應的bus[7..0]信號。再根據(jù)這個輸出的信號通過七段LED顯示模塊譯碼后,顯示為十進制數(shù)字的0~9。如圖3-6所示。

圖3-6位選選擇模塊框圖

第14頁共31頁

第四章電子搶答器系統(tǒng)仿真與分析

4.1系統(tǒng)總原理圖分析與仿真

當規(guī)律設計變得相對繁雜的時候,通過前期的有效驗證對一個項目的設計來說是至關(guān)重要的。VHDL語言不但有相應設計描述的能力,還提供了鼓舞。響應和設計驗證的建模能力,擁有強大而實用的測試仿真能力。

仿真分為功能仿真和時序仿真。功能仿真是在設計輸入階段進行的仿真,在仿真的時候不需要考慮到信號的時間延遲問題,是一種比較理想的狀態(tài)。時序仿真是在選擇具體的器件以后完成的包含定時關(guān)系的仿真。對于不同的器件,它們所對應的延時時間基本上是不可能一樣的。由于不同布線和布局方式,延時時間基本上也是不一樣的。所以在設計實現(xiàn)后對網(wǎng)絡和規(guī)律塊進行時序仿真,是相當有必要的,通過時序仿真來評測設計出來產(chǎn)品的性能。

可編程規(guī)律程序設計,完成設計輸入后,再進行編譯,假使編譯成功,只能代表設計符合相應的語法規(guī)范,并不能保證設計將實現(xiàn)相應的功能,這時,就需要一個仿真器進行驗證。

仿真的方法包括交互式仿真和測試平臺。

交互式仿真是指當輸入信號鼓舞后,并指定一定的仿真執(zhí)行時間,然后觀測相應的輸出波形,以此來判斷所期待的功能終究有沒有實現(xiàn)。[7]

測試平臺法是指利用一定的測試平臺,對被測單元輸入測試矢量,自動化的

第15頁共31頁

用文件記錄輸出狀況,或是與事先預設好的輸入矢量進行比較,以此來驗證仿真出來的結(jié)果。[8]

本設計通過VHDL編寫的判斷電路模塊、計分電路模塊、倒計時模塊、顯示模塊、分頻器和位選擇模塊生產(chǎn)相應的器件,通過對這些器件的鏈接,畫出頂層圖,如圖4-1所示。

圖4-1頂層原理圖

根據(jù)頂層圖進行相應的仿真,以判斷是否可以實現(xiàn)相應的功能。仿真結(jié)果如圖4-2所示,當主持人沒有發(fā)出搶答指令時,即EN一直處于低電平日,參賽選手按下?lián)尨疰I進行搶答即有效電平為高電平的時候則屬于違規(guī),則W[7]顯示為高電平,代表違規(guī)。當在主持人發(fā)出搶答指令后,即EN為高電平日,則參賽選手第一個搶答成功的話,即對應的電平為高電平。則相對應得顯示器會顯示出第一個搶答選手的編號,表示搶答成功。圖中的參賽選手B在主持人發(fā)出搶答指令后進行搶答,搶答成功。則LB為高電平,指示燈亮起。參賽選手A在主持人未發(fā)出搶答指令就開始搶答,則為違規(guī),對應的顯示為高電平。

第16頁共3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論