冀 云
(重慶電子工程職業(yè)學(xué)院應(yīng)用電子學(xué)院,重慶 401331)
基于FPGA的多路競賽搶答器設(shè)計(jì)
冀 云
(重慶電子工程職業(yè)學(xué)院應(yīng)用電子學(xué)院,重慶 401331)
基于ISE軟件開發(fā)環(huán)境,運(yùn)用VHDL硬件描述語言,設(shè)計(jì)了一款4路競賽搶答器,給出了搶答器系統(tǒng)的系統(tǒng)功能模塊;對(duì)設(shè)計(jì)工程進(jìn)行了綜合、編譯、仿真,并下載到FPGA芯片xc3s700a-5fg484進(jìn)行測試;結(jié)果表明設(shè)計(jì)能實(shí)現(xiàn)系統(tǒng)預(yù)期的功能。
競賽搶答器;VHDL;仿真波形;硬件測試
搶答器在各種競賽性質(zhì)的場合有非常廣泛的應(yīng)用,它由組合邏輯電路進(jìn)行狀態(tài)判斷與選擇,消除了原來由于人眼的誤差而未能正確判斷最先搶答的選手的情況,從而避免了競賽場合出現(xiàn)不必要的爭執(zhí)?,F(xiàn)行的搶答器設(shè)計(jì)方案主要有兩種:采用觸發(fā)器和小規(guī)模組合邏輯芯片實(shí)現(xiàn);用單片機(jī)配合外圍電路實(shí)現(xiàn)。方法一的優(yōu)點(diǎn)是思路簡單且存在比較成熟的設(shè)計(jì)范例,但具體電路復(fù)雜,元器件較多;相對(duì)來說使用單片機(jī)實(shí)現(xiàn)比較靈活,但如果選手人數(shù)較多則會(huì)出現(xiàn)I/O口不足的問題。設(shè)計(jì)采用FPGA現(xiàn)場可編程技術(shù),完全由HDL硬件描述語言實(shí)現(xiàn)搶答功能,避免了硬件電路的焊接調(diào)試,同時(shí)由于FPGA的可編程資源及I/O端口豐富,可以在設(shè)計(jì)的基礎(chǔ)上進(jìn)行自由改進(jìn)。
搶答器的原理比較容易理解,首先必須設(shè)置一個(gè)搶答允許標(biāo)志位,目的就是用于允許或禁止搶答者按鍵;如果允許搶答位有效,那么第一位按鍵的搶答者按下按鍵的就會(huì)將其清除,同時(shí)記錄下按鍵者的編號(hào)并顯示,達(dá)到后面的搶答者按鍵都無效化的效果。系統(tǒng)設(shè)計(jì)一個(gè)多路競賽搶答器,具有4路搶答輸入,每人可通過按鍵手動(dòng)申請(qǐng)搶答,要求能夠識(shí)別第一個(gè)搶答的信號(hào),點(diǎn)亮對(duì)應(yīng)的LED表示搶答成功,同時(shí)其他選手按鍵失效;七段數(shù)碼管對(duì)選手序號(hào)和搶答所剩的時(shí)間進(jìn)行計(jì)時(shí)、顯示。系統(tǒng)設(shè)計(jì)結(jié)構(gòu)如圖1。
圖1 系統(tǒng)結(jié)構(gòu)
FPGA(現(xiàn)場可編程門陣列)是一種SRAM生產(chǎn)工藝的復(fù)雜可編程邏輯器件,基于查找表(LUT)結(jié)構(gòu)技術(shù),當(dāng)用戶描述了一個(gè)邏輯電路之后,設(shè)計(jì)軟件會(huì)自動(dòng)計(jì)算其所有可能存在的結(jié)果,并優(yōu)先寫入RAM。這樣每輸入一個(gè)信號(hào)進(jìn)行邏輯運(yùn)算就相當(dāng)于輸入一個(gè)地址進(jìn)行查表,找到對(duì)應(yīng)內(nèi)容的輸出結(jié)果。
由于FPGA基于查找表結(jié)構(gòu),因此它不受傳統(tǒng)的PLD“與或”陣列的限制以及觸發(fā)器和I/O端口數(shù)量的限制,具有更高的集成度、更強(qiáng)的邏輯實(shí)現(xiàn)能力和更好的設(shè)計(jì)靈活性。而且相對(duì)于一般的集成塊和單片機(jī),F(xiàn)PGA還具有邏輯塊粒度小、運(yùn)算速度快、邏輯利用率高、使用方便、功耗低等優(yōu)勢。
以往的搶答器設(shè)計(jì)往往采用小規(guī)模集成塊,單片機(jī)或者FPGA的原理圖或混合編輯設(shè)計(jì),而系統(tǒng)采取純文本編輯的方式進(jìn)行設(shè)計(jì),完全用HDL硬件描述語言完成系統(tǒng)功能。因?yàn)镠DL硬件描述語言為行為描述方式,與具體的硬件電路和設(shè)計(jì)平臺(tái)無關(guān),這樣不僅描述方便,而且更具靈活性,占用資源更少,同時(shí)更易進(jìn)行修改,具有可移植性。
2.1 競賽搶答器HDL程序設(shè)計(jì)
主持人啟動(dòng)搶答按鈕后,倒計(jì)時(shí)開始工作,從40 s遞減,同時(shí)允許4名選手進(jìn)行按鍵搶答,若40 s內(nèi)無人搶答,則計(jì)時(shí)保持在00,蜂鳴器報(bào)警;若在此期間有人搶答,則計(jì)時(shí)停止,點(diǎn)亮對(duì)應(yīng)選手LED,其他選手按鍵無效,七段數(shù)碼管顯示選手序號(hào)并保持在搶答信號(hào)輸入時(shí)的時(shí)間,10 s減去顯示時(shí)間即為搶答所用時(shí)間。對(duì)應(yīng)HDL代碼如下:
2.2 程序仿真
由于該系統(tǒng)時(shí)鐘為50MHz,分頻得到周期為1 s時(shí)鐘用于倒計(jì)時(shí),仿真器時(shí)間無法設(shè)置過長,所以采用原始時(shí)鐘clk直接做仿真。七段數(shù)碼管采用掃描顯示的方式,故通過仿真只能看到計(jì)時(shí)低位的段碼值。綜上采取功能仿真,仿真器為ISE Simulator 9.2,功能仿真結(jié)果如圖2。
圖2 功能仿真波形
由仿真波形可見,S5鍵按下之后,旗標(biāo)置1,倒計(jì)時(shí)開始,數(shù)碼管顯示倒計(jì)時(shí)時(shí)間,當(dāng)選手鍵S2按下后,倒計(jì)時(shí)停止,旗標(biāo)清零。故此設(shè)計(jì)能夠完成搶答器的要求。
2.3 約束和配置下載
設(shè)計(jì)所選用硬件為CREATE公司的SOPC3000系統(tǒng),主芯片采用XILINX公司的Spartan3A系列芯片xc3s700a-5 fg484,定義約束為取clk為50 M系統(tǒng)時(shí)鐘,核心板按鍵S1為主持人按鍵,4位選手按鍵為K1~K4,七段數(shù)碼管分別表示搶答成功選手序號(hào)以及倒計(jì)時(shí),下載后得到結(jié)果如圖3。
由圖可見,此時(shí)2號(hào)選手搶答成功,數(shù)碼管顯示選手序號(hào)和倒計(jì)時(shí)停留在35 s,同時(shí)選手對(duì)應(yīng)的LED點(diǎn)亮。此設(shè)計(jì)符合要求,可以完成系統(tǒng)功能。
運(yùn)用XILINX公司ISE軟件開發(fā)平臺(tái),設(shè)計(jì)了基于FPGA的4路競賽搶答器,進(jìn)行了功能仿真并且下載到xc3s700a-5fg484芯片中完成硬件調(diào)試檢測,結(jié)果表明本設(shè)計(jì)能實(shí)現(xiàn)選手按鍵互鎖,正確顯示最先搶答的選手序號(hào),并對(duì)答題時(shí)間進(jìn)行40 s的倒計(jì)時(shí)報(bào)警以及復(fù)位重新?lián)尨鸸δ?。設(shè)計(jì)全部由VHDL硬件描述語言實(shí)現(xiàn),簡明易懂,具有良好的修改和可移植性,但也存在如代碼較長,設(shè)計(jì)成本相對(duì)傳統(tǒng)方式較高等有待改進(jìn)之處。
圖3 硬件測試結(jié)果
[1]王正勇.EDA技術(shù)與應(yīng)用教程[M].北京:高等教育出版社,2011
[1]劉睿強(qiáng).FPGA應(yīng)用技術(shù)及實(shí)踐[M].北京:北京理工大學(xué)出版社,2011
[3]張占鋒.基于FPGA智力競賽搶答器的設(shè)計(jì)[J].大眾科技,2008(12):43-44
[4]褚紅燕,沈世斌.基于EDA技術(shù)的層次化設(shè)計(jì)方法在電子搶答器中的應(yīng)用[J].電子工程師,2005(9):66-68
[5]楊俊秀.基于FPGA的多路搶答器設(shè)計(jì)與實(shí)現(xiàn)[J].浙江理工大學(xué)學(xué)報(bào),2010(3):250-253
Design of Multi-channel Competition Responders Based on FPGA
JIYun
(School of Applied Electronics,Chongqing College of Electronic Engineering,Chongqing 401331,China)
Based on ISE software development environment,by using VHDL hardware description language,this paper designs a kind of four-channel competition responder,gives systematic function module of the responder system,conducts synthesizing,compiling and simulating implementation on designed project,and tests the functions by downloading themodule to FPGA chip xc3s700a-5fg484.The results show that this design can realize the expected functions of the design.
competition responder;VHDL;simulation waveform;hardware test
TN421
A
1672-058X(2014)03-0060-06
責(zé)任編輯:代小紅
2013-10-10;
2013-11-11.
冀云(1984-),男,講師,碩士,從事電子系統(tǒng)設(shè)計(jì)、FPGA應(yīng)用開發(fā)研究.