verilog搶答器(最經(jīng)典)_第1頁
verilog搶答器(最經(jīng)典)_第2頁
免費預覽已結束,剩余16頁可下載查看

下載本文檔

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

文檔簡介

1、搶答器設計 題 目 _ 智能電子搶答器 _ 專 業(yè): _ 電子信息工程 _ 20112011 年 1 1 月 7 7 日2 搶答器是在競賽、文體娛樂活動(搶答活動)中,能準確、公正、直 觀地判斷出搶答者的機器。電子搶答器的中心構造一般都是由搶答器由單 片機以及外圍電路組成。 本設計是以四路搶答為基本概念。從實際應用出發(fā) ,利用電子設計自動化 (EDA)技術,用可編程邏輯器件設計具有擴充功能的搶答器。它以 Verilog HDL 硬件描述語言作為平臺,結合動手實驗而完成的。它的特點是電路簡單、制作方 便、操作簡單、方便、性能可靠,實用于多種智力競賽活動。本搶答器的電路主 要有四部分組成:鑒別鎖存

2、電路、FPGAfc芯片EP1C3T144C8電路、 計分電路以 及掃描顯示模塊的電路, 并利用 Quartus II工具軟件完成了 Verilog HDL源程 序編寫和硬件下載。這個搶答器設計基本上滿足了實際比賽應用中的各種需要。 在實際中有很大的用途。 關鍵詞: 搶答器 Quartus II Verilog HDLEP1C3T144C8 3 1引言 硬件描述語言 Hardware Description Language 是硬件設計人員和電子設 計自動化EDA工具之間的界面。其主要目的是用來編寫設計文件,建立電子系 統(tǒng)行為級的仿真模型。即利用計算機的巨大能力對用 Verilog HDL 或V

3、HDL建 模的復雜數(shù)字邏輯進行仿真,然后再自動綜合以生成符合要求且在電路結構上可 以實現(xiàn)的數(shù)字邏輯網(wǎng)表Netlist ,根據(jù)型仿真驗證無誤后用于制造ASIC芯片或寫 入EPLD和FPGA器件中。 Verilog HDI是一種硬件描述語言(HDL:Hardware Discription Language), 是一種以文本形式來描述數(shù)字系統(tǒng)硬件的結構和行為的語言, 用它可以表示邏輯 電路圖、邏輯表達式,還可以表示數(shù)字邏輯系統(tǒng)所完成的邏輯功能。 Verilog HDL 就是在用途最廣泛的 C語言的基礎上發(fā)展起來的一種件 描述語言,它是由 GDA(Gateway Design Automation)

4、 公司的 PhilMoorby 在 1983年末首創(chuàng)的, 最初只設計了一個仿真與驗證工具, 之后又陸續(xù)開發(fā)了 相關的故障模擬與時序分析工具。 1985年Moorby推出它的第三個商用仿真 器Verilog-XL,獲得了巨大的成功,從而使得 Verilog HDL迅速得到推廣應 用。1989年CADENC公司收購了 GDA公司,使得 Verilog HDL 成為了該公 司的獨家專利。1990年CADENC公司公開發(fā)表了 Verilog HDL, 并成立LVI 組織以促進 Verilog HDL 成為 IEEE 標準,即 IEEE Standard 1364-1995. Verilog HDL的最

5、大特點就是易學易用,如果有 C語言的編程經(jīng)驗,可 以在一個較短的時間內(nèi)很快的學習和掌握,因而可以把 Verilog HDL內(nèi)容安 排在與ASIC設計等相關課程內(nèi)部進行講授,由于 HDL語言本身是專門面向硬 件與系統(tǒng)設計的,這樣的安排可以使學習者同時獲得設計實際電路的經(jīng)驗。 2關于課程設計 2. 1 課程設計目的 理論聯(lián)系實際,鞏固和運用所學課程,提高分析、解決計算機技術實際問題的獨 立工作能力,通過對一個智力搶答器的設計, 進一步加深對計算機原理以及數(shù)字 電路應用技術方面的了解與認識, 進一步熟悉數(shù)字電路系統(tǒng)設計、制作與調(diào)試的 方法和步驟。鞏固所學課堂知識,理論聯(lián)系實際,提高分析、解決計算機技

6、術實 際問題的獨立工作能力。為了進一步了解計算機組成原理與系統(tǒng)結構, 深入學習 EDA技術,用Verilog HDL 語言去控制將會使我們對本專業(yè)知識可以更好地掌 握。 2. 2 課程設計的內(nèi)容 1用EDA實訓儀的I/O設備和PLD芯片實現(xiàn)智能電子搶答器的設計 2智能電子搶答器可容納4組參賽者搶答,每組設一個搶答器 3電路具有第一搶答信號的鑒別和鎖存功能。在主持人將復位按鈕按下后開 始搶答,并用4 EDA實訓儀上面的八段數(shù)碼管顯示搶答者的序號,同時揚聲器發(fā)出 “嘟嘟”的響聲,并維持3秒鐘,此時電路自鎖,不再接受其他選手的搶答信號 4設置計分電路,每組開始時設置為 6分,搶答后由主持人計分,答對

7、一次 加1分,錯一次減1分。 3開發(fā)工具簡介 3. 1 EDA技術 EDA是電子設計自動化(Electronic Design Automation )的縮寫,在 20世紀 90年代初從計算機輔助設計(CAD、計算機輔助制造(CAM、計算機輔助測試 (CAT和計算機輔助工程(CAE的概念發(fā)展而來的。 EDA技術就是以計算機為工具,設計者在 EDA軟件平臺上,用硬件描述語言 HDL完成設計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu) 化、布局、布線和仿真,直至對于特定目標芯片的適配編譯、邏輯映射和編程下 載等工作。EDA技術的出現(xiàn),極大地提高了電路設計的效率和可操作性,減輕了 設計

8、者的勞動強度。 利用EDA工具,電子設計師可以從概念、算法、協(xié)議等開始設計電子系統(tǒng), 大量工作可以通過計算機完成,并可以將電子產(chǎn)品從電路設計、性能分析到設計 出IC版圖或PCE版圖的整個過程的計算機上自動處理完成。 現(xiàn)在對EDA的概念或范疇用得很寬。包括在機械、電子、通信、航空航天、 化工、礦產(chǎn)、生物、醫(yī)學、軍事等各個領域,都有 EDA的應用。目前EDA技術已 在各大公司、企事業(yè)單位和科研教學部門廣泛使用。 例如在飛機制造過程中,從 設計、性能測試及特性分析直到飛行模擬,都可能涉及到 EDA技術。 3. 2 硬件描述語言一Verilog HDL Verilog HDL是硬件描述語言的一種,用于

9、數(shù)字電子系統(tǒng)設計。該語言是 1983 年由 GDA ( GateWay Design Automation、公司的 Phil Moorby 首創(chuàng)的。Phil Moorby后來成為Verilog XL的主要設計者和 Cade nee公司(Cade nee Design System、的第一個合伙人。在 1984-1985 年間,Phil Moorby設計出 第一個名為 Verilog-XL 的仿真器;1986年,他對Verilog HDL 的發(fā)展又一 次作出了巨大貢獻 一一提出了用于快速門級仿真的XL算法。 隨著Verilog-XL 算法的成功,Verilog HD 語言得到迅速發(fā)展。1989年

10、, Cade nee公司收購GDA公司,Verilog HDL 語言成為了 Cade nee公司的私有 財產(chǎn)。1990年,Cade nee公司決定公開 Verilog HDL 語言,并成立了 OVI (Open Verilog International 、組織,并負責促進 Verilog HDL 語言的發(fā) 展?;?Verilog HDL 的優(yōu)越性,IEEE于1995年制定了 Verilog HDL 的5 IEEE 標準,即 Verilog HDL1364-1995 ; 2001 年發(fā)布了 Verilog HDL1364-2001 標準。 3. 3 Verilog HDL 的設計流程 一般是

11、: 1 文本編輯:用任何文本編輯器都可以進行,也可以用專用的HDL編輯環(huán)境。 通常Verilog HDL 文件保存為.v文件。 2 .功能仿真:將文件調(diào)入HDL仿真軟件進行功能仿真,檢查邏輯功能是否正 確(也叫前仿真,對簡單的設計可以跳過這一步,只有在布線完成之后,才進行 時序仿真)。 3. 邏輯綜合:將源文件調(diào)入邏輯綜合軟件進行綜合, 即把語言綜合成最簡的布 爾表達式。邏輯綜合軟件會生成.edf ( EDIF )的EDA工業(yè)標準文件。(最 好不用MAX+PLUS II進行綜合,因為只支持 VHDL/Verilog HDL的子集) 4 .布局布線:將.edf文件調(diào)入PLD廠家提供的軟件中進行布

12、線,即把設計 好的邏輯安放到CPLD/FPGA內(nèi)。 5.時序仿真:需要利用在布局布線中獲得的精確參數(shù), 用仿真軟件驗證電路的 時序(也叫后仿真)。 3.4 FPGA采用了邏輯單元陣列LCA(Logic Cell Array )這樣一個新概念,內(nèi)部 包括可配置邏輯模塊 CLB( Con figurable Logic Block )、輸出輸入模塊IOB (In put Output Block )和內(nèi)部連線(Interconnect )三個部分。FPGA的基本特點主要 有: 1)采用FPGA設計ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。 -2) FPGA可做其它全定制或半定制 ASI

13、C電路的中試樣片。 3) FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳。 4) FPGA是ASIC電路中設計周期最短、開發(fā)費用最低、風險最小的器件之一。 5) FPGA采用高速CHMOS工藝,功耗低,可以與 CMOS、TTL電平兼容。 可以說,F(xiàn)PGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。6 目前FPGA的品種很多,有XILINX公司的Virtex系列、TI公司的TPC系列、 ALTERA公司的Stratix系列等。 FPGA是由存放在片內(nèi)RAM中的程序來設置其工作狀態(tài)的,因此,工作時需要 對片內(nèi)的RAM進行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。 加電時,F(xiàn)PGA芯片

14、將EPROM中數(shù)據(jù)讀入片內(nèi)編程RAM中,配置完成后,F(xiàn)PGA 進入工作狀態(tài)。掉電后,F(xiàn)PGA恢復成白片,內(nèi)部邏輯關系消失,因此,F(xiàn)PGA 能夠反復使用。FPGA的編程無須專用的FPGA編程器,只須用通用的EPROM、 PROM編程器即可。當需要修改FPGA功能時,只需換一片EPROM即可。這 樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此, FPGA 的使用非常靈活。 FPGA有多種配置模式:并行主模式為一片 FPGA加一片EPROM的方式;主 從模式可以支持一片PROM編程多片F(xiàn)PGA ;串行模式可以采用串行PROM編 程FPGA ;外設模式可以將FPGA作為微處理器的外設

15、,由微處理器對其編程。 4 設計過程 4. 1 系統(tǒng)設計要求 本設計的具體要求是: (1) 設計制作一個可容納四組參賽者的數(shù)字智力搶答器,每組設置一個搶答按 鈕。 (2) 電路具有第一搶答信號的鑒別和鎖存功能。在主持人按下復位按鈕后,若 參加者按搶答開關,則該組指示燈亮。此時,電路應具備自鎖功能,使別組的搶 答開關不起作用。 (3) 自鎖后,用八段數(shù)碼管顯示搶答者的序號,同時揚聲器發(fā)出“嘟嘟”并且 持續(xù)3秒。 (4) 設置計分電路。 每組在開始時預置成6,搶答后由主持人計分,答對一次 加1,否則減1分。 4. 2 系統(tǒng)設計方案 根據(jù)系統(tǒng)設計要求可知,系統(tǒng)的輸入信號有:各組的搶答按鈕 1、2、3

16、、 4, 系統(tǒng)清零信號CLR系統(tǒng)時鐘信號CLK計分復位端RST加分按鈕端ADD 計時預置控制端LDN計時使能端EN,計時預置數(shù)據(jù)調(diào)整按鈕 TA TB;系統(tǒng)的 輸出信號有:四個組搶答成功與否的指示燈控制信號輸出口 LEDA LEDB LEDC LEDD四個組搶答時的計時數(shù)碼顯示控制信號若干, 搶答成功組別顯示的控制信 號若干,各組計分動態(tài)顯示的控制信號若干。 本系統(tǒng)應具有的功能有:第一搶答 信號的鑒別和鎖存功能;數(shù)碼管顯示;計分控制。 根據(jù)以上的分析,我們可將整個系統(tǒng)分為四個主要模塊:搶答鑒別模7 塊;搶答計分模塊;顯示譯碼模塊; EP1C3T144C8 接口模塊。 搶答原理圖 顯示蜂鳴原理圖8

17、 系統(tǒng)的工作原理如下:當主持人按下使能端 EN 時,搶答器開始工作,1、2、3、4 四位 搶答者誰最先搶答成功則此選手的臺號燈( LED1LED4 將點亮,并且主持人前的組別顯示 數(shù)碼管講顯示出搶答成功者的臺號;接下來主持人提問,若回答正確,主持人按 加分按鈕,搶答積分模塊將給對應的組加分,并將組的總分顯示在對應的選手計 分數(shù)碼管上。在此過程中。完成第一輪搶答后,主持人清零,接著重新開始,步 驟如上。 4. 3 主要VHDL源程序 module Yan gLu(clk,i nputE n,in putL1,i nputL2,i nputL3,i nputL4,Sig1,Sig2,Sig3,Si

18、g4,Led,Buzz er); / 一開始時聲明有哪些端口 輸入口 in put clk,i nputE n,i nputL1,i nputL2,i nputL3,i nputL4; 輸出口 output Sig1,Sig2,Sig3,Sig4; output 0:7Led; output Buzzer; 計分顯示模塊(由于板大小限制,只顯示兩組) pcb 接口原理圖 EP1C3T144C8 9 在輸出口配置個寄存器,以便運算 reg Sig1=1b1,Sig2=1b1,Sig3=1b1,Sig4=1b1; reg 0:7Led; reg Buzzer; /配置寄存器,EnFlat是表明開始

19、搶答的標志位 reg En Flat=1b0; /BuCIk是蜂鳴器的標志位 reg BuClk=1b0; /BuL是做蜂鳴器的延時用 reg 0:7BuL=8d0; always (posedge elk)/捕捉時鐘 beg in 初始化各按鍵并開始搶答 if(i nputE n=1b0) begi n /初始化各個標志位和參數(shù) En Flat=1b1; 各個按鍵對應的LED控制端 Sig1=1b1; Sig2=1b1; Sig3=1b1; Sig4=1b1; 靜態(tài)數(shù)碼管的控制端,有8位 Led=8b11111111; BuClk=1b0; 蜂鳴器的控制管腳,低電平為發(fā)聲音 Buzzer=1

20、b1; end 開始搶答 if(En Flat=1b1) begi n /如果按鍵1按下 if(in putL1=1bO) beg in /禁止其他選手搶答 10 En Flat=1bO; 對應的LED點亮 Sig1=1bO; /靜態(tài)數(shù)碼管顯示序號1 Led=8b01101111; /指示蜂鳴器發(fā)聲 BuClk=1b1; end /如果按鍵2按下 else if(i nputL2=1b0) beg in /禁止其他選手搶答 En Flat=1b0; Sig2=1b0; Led=8b00011010; BuClk=1b1; end /如果按鍵3按下 else if(i nputL3=1b0) b

21、eg in /禁止其他選手搶答 En Flat=1b0; Sig3=1b0; Led=8b01001010; BuClk=1b1; end /如果按鍵4按下 else if(i nputL4=1bO) beg in /禁止其他選手搶答 En Flat=1bO; Sig4=1b0; Led=8b01101001; BuClk=1b1; end end 當蜂鳴器標志位置1時 進入此蜂鳴器處理程序 if(BuClk=1b1) 11 begi n /蜂鳴器發(fā)聲 Buzzer=1b0; /延時變量加1 BuL = BuL + 8d1; /當?shù)竭_延時的時間時關掉蜂鳴器 if(BuL=8d255) beg

22、in /延時變量復位 BuL=8d0; /蜂鳴器標志位復位 BuClk=1b0; /蜂鳴器停掉 Buzzer=1b1; end end end en dmodule 5 靜態(tài)調(diào)試 靜態(tài)調(diào)試是在不加電壓即電路不工作的情況下進行的測試。 參照所畫的 PCB 圖,主要檢 查電路板是否完好。 該導通是否已導通, 無短路現(xiàn)象,檢查元器件是否使用正確, 檢查焊點 是否有虛焊。檢查無誤后,方可加電使其工作。 6 總結 本次實訓為期兩周,分組選題。由于種種原因,我們兩個人選擇了 3個人一 組的題目。確定下題目后,首先就是方案的確定。經(jīng)過老師的輔導、同學的幫助、 翻閱相關資料,綜合各方面的考慮,最后確定用FPG

23、A來實現(xiàn)電子搶答器的功能。 FPGA首先要有最主要的芯片,感謝童有為老師提供的EP1C3T144C8芯片和接口 電路模塊,這是本次實訓的基礎。但是要了解 EP1C3T144C8芯片的構造,需要 查看大量的英文資料,我并沒有氣餒,一個管腳一個管腳的對比,終于弄清楚了 實現(xiàn)功能的大體思路。然后就是學習 Verilog HDL語言,雖然以12 前學過,但是時 間比較久了,差不多都忘了,用了幾天時間熟悉了 Verilog HDL源程序的編寫。 最后是硬件的調(diào)試,這是個漫長的過程, EP1C3T144C8芯片的接口也非常的繁 雜,最后我堅持了下來。 通過這次實訓,我對 Verilog HDL有了深入的認

24、識。同時也對 EDA產(chǎn)生了更 加濃厚的興趣。本次實訓,也檢驗了自己的能力,加強了邏輯思維的能力,不過 我也發(fā)現(xiàn)了自身存在的一些問題,比如在 protel軟件的應用上還有很多不成熟 不理解的地方,但是相信在以后的學習生活中我可以很好的與予改正, 取得更好 的成績,也希望日后老師能不厭其煩的指導我,給予我更大的支持。13 本論文設計在各位老師的悉心指導和嚴格要求下業(yè)已完成, 從選題到具體的 實訓和寫作過程,無不凝聚著老師們的心血和汗水。在我實訓期間,老師為我提 供了種種專業(yè)知識上的指導和一些富于創(chuàng)造性的建議,老師們嚴謹求實的態(tài)度使 我深受感動,沒有這樣的幫助和關懷和熏陶,我不會這么順利的完成實訓任

25、務。 在此向老師們表示深深的感謝和崇高的敬意! 這次實訓還要感謝黃鐘鳴同學的熱情幫助,是他讓我在短時間內(nèi)熟悉了 Verilog HDL源程序的編寫。在硬件調(diào)試階段,也有很多同學給予了幫助,在此 謝謝你們了。 我還要借此機會向給予我諸多教誨和幫助的各位老師表示由衷的謝意,感 謝他們的辛勤栽培。不積跬步何以至千里,各位任課老師認真負責,在他們的悉 心幫助和支持下,我能夠很好的掌握和運用專業(yè)知識, 并在實訓中得以體現(xiàn),順 利完成實訓任務。 同時,在論文寫作過程中,我還參考了有關的書籍和論文,在這里一并向 有關的作者表示謝意。 我還要感謝同組的各位同學以及我的各位室友,在這段時間里,你們給了 我很多的

26、啟發(fā),提出了很多寶貴的意見,對于你們幫助和支持,在此我表示深深 地感謝!14 參考文獻 1 譚會生,張昌凡 EDA技術及應用.第二版.西安電子科技大學出版社,2009 2 李大社,基于Quartus II的FPGA/CPL設計實例精解,電子工業(yè)出版社 , 2010 3 李國洪,胡輝,沈明山 EDA技術與實驗.機械工業(yè)出版社,2009 4 西勒提(MichaelD.Ciletti) ,Verilog HDL 高級數(shù)字設計,電子工業(yè) 出版社,2010 5 劉建清.從零開始學CPLD和Verilog.HDL編程技術,國防工業(yè)出版社,2007 6 巴斯克,夏宇聞,甘偉 譯 VERILOG HDL入門,

27、北京航空航天大學,2010 7王港元等,電子技能基礎(第二版),四川大學出版社,2001Sig1=1b1; 15 3.3- V LTTL fdefedp 3.3- tf Lm (deUit) 3 3-v 1/TT1. .3-vLm Cdefiadt) 3.3- LEL (defadt) 3.3- VLVTTL (dedt) module Yan gLu(clk,i nputE n,i nputL1,i nputL2,i nputL3,i nputL4,Sig1,Sig2,Sig3,Sig4,Led,Buzzer); in put clk,i nputE n,i nputL1,i nputL2,

28、i nputL3,i nputL4; output Sig1,Sig2,Sig3,Sig4; output 0:7Led; output Buzzer; reg Sig1=1b1,Sig2=1b1,Sig3=1b1,Sig4=1b1; reg 0:7Led; reg Buzzer; reg En Flat=1bO; reg BuClk=1bO; reg 0:7BuL=8d0; always (posedge clk)/ 捕捉時鐘 begin if(i nputE n=1b0) begin En Flat=1b1; Sig2=1b1; Sig3=1b1; Node Name DirectEn Location IOBank Wef Group gMtardd 1 氐啦即 Output P!N I 1 01J 3.3-vLvm fdefidt) 2 LedO Output PIN 35 1 B1JM2 3.3-V LEI CdrfwJt) 3 Led Ouqxi t P!N_3 1 B:1_NO 3.3V LEI 血估dt) 斗 Led習 Output P|N 5 1 Bl J 3.3-VLVm Cdefaiit) 5 LrtE

溫馨提示

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

評論

0/150

提交評論