2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩30頁(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ǔ)言的8路搶答器設(shè)計(jì)</p><p>  摘 要 本課程設(shè)計(jì)分為主體電路和擴(kuò)展電路兩部分共同實(shí)現(xiàn)搶答器的鎖存、顯示與報(bào)警功能。在本次設(shè)計(jì)中,系統(tǒng)開(kāi)發(fā)平臺(tái)為MAX plusⅡ,硬件描述語(yǔ)言是VHDL。競(jìng)賽者可以分為8組,搶答時(shí)各組對(duì)主持人提出的問(wèn)題要在最短的時(shí)間內(nèi)做出判斷,并按下?lián)尨鸢存I回答問(wèn)題。當(dāng)?shù)谝粋€(gè)人按下按鍵后,則在顯示器上顯示該組的號(hào)碼,對(duì)應(yīng)的燈亮,同時(shí)電路將其他各組按

2、鍵封鎖,使其不起作用。若搶答時(shí)間內(nèi)無(wú)人搶答,則報(bào)警燈亮。回答完問(wèn)題后,由主持人將所有按鍵恢復(fù),重新開(kāi)始下一輪搶答。并且依據(jù)設(shè)計(jì)方案和設(shè)計(jì)平臺(tái)完成了程序編寫(xiě)和程序調(diào)試,通過(guò)運(yùn)行程序及時(shí)序波形的仿真有效驗(yàn)證了設(shè)計(jì)的正確性,初步實(shí)現(xiàn)了設(shè)計(jì)目標(biāo)。</p><p>  關(guān)鍵詞 鎖存、顯示;搶答器;MAX plus Ⅱ;VHDL。</p><p>  Abstract:This course desi

3、gn is divided into two main circuit and expansion circuit realized partly joint inverter latch responder, display and alarm function. In this design, system developing platform for MAX plus Ⅱ, hardware description langua

4、ge is VHDL. Competitors may be divided into eight groups, vies to answer first when each to the host puts forward the problems in the shortest possible time to make judgments, and press the buttons vies to answer the que

5、stion. When the first man press but</p><p>  Keywords: latch, display, Scare-answering manometers; MAX plus Ⅱ; VHDL. </p><p><b>  目錄</b></p><p><b>  1 引 言1</b

6、></p><p>  1.1 課程設(shè)計(jì)目的1</p><p>  1.2 課程設(shè)計(jì)具體要求及功能1</p><p>  2 EDA和MAX plusⅡ簡(jiǎn)介2</p><p>  2.1 EDA簡(jiǎn)介2</p><p>  2.2 MAX plusⅡ2</p><p><b

7、>  3 設(shè)計(jì)方案4</b></p><p>  3.1 搶答器控制系統(tǒng)的設(shè)計(jì)思路4</p><p>  3.2 搶答器的系統(tǒng)結(jié)構(gòu)及工作原理4</p><p>  3.3 具體實(shí)現(xiàn)6</p><p><b>  4 系統(tǒng)仿真19</b></p><p>  4.1 頂層

8、模塊及管腳介紹19</p><p>  4.2 仿真結(jié)果分析20</p><p><b>  小結(jié)21</b></p><p><b>  參考文獻(xiàn)22</b></p><p><b>  附錄23</b></p><p><b> 

9、 1 引 言</b></p><p>  隨著科學(xué)技術(shù)的不斷發(fā)展,促使人們學(xué)科學(xué)、學(xué)技術(shù)、學(xué)知識(shí)的手段多種多樣。搶答器作為一種工具,已廣泛應(yīng)用于各種競(jìng)賽場(chǎng)合。本課程設(shè)計(jì)以8路搶答器為理念,實(shí)現(xiàn)優(yōu)先搶答、判決、鎖存及數(shù)碼管顯示等功能。</p><p>  在本次計(jì)中,系統(tǒng)開(kāi)發(fā)平臺(tái)為MAX plusⅡ[2] 。MAX plusⅡ是Altera公司提供的FPGA/CPLD開(kāi)發(fā)集成環(huán)

10、境,Altera是世界上最大可編程邏輯器件的供應(yīng)商之一。Max plusⅡ界面友好,使用便捷,被譽(yù)為業(yè)界最易用易學(xué)的EDA軟件。在Max plusⅡ上可以完成設(shè)計(jì)輸入、元件適配、時(shí)序仿真和功能仿真、編程下載整個(gè)流程,它提供了一種與結(jié)構(gòu)無(wú)關(guān)的設(shè)計(jì)環(huán)境,是設(shè)計(jì)者能方便地進(jìn)行設(shè)計(jì)輸入、快速處理和器件編程。</p><p>  在本次設(shè)計(jì)中,采用的硬件描述語(yǔ)言是VHDL[1](Very-High-Speed Integr

11、ated Circuit Hardware Description Language)。VHDL語(yǔ)言是一種用于電路設(shè)計(jì)的高級(jí)語(yǔ)言?! HDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為、功能和接口。除了含有許多具有硬件特征的語(yǔ)句外,VHDL的語(yǔ)言形式、描述風(fēng)格以及語(yǔ)法是十分類(lèi)似于一般的計(jì)算機(jī)高級(jí)語(yǔ)言。</p><p>  1.1 課程設(shè)計(jì)目的</p><p>  學(xué)習(xí)ALTERA公司的FPGA/CP

12、LD的結(jié)構(gòu)、特點(diǎn)和性能。學(xué)習(xí)集成開(kāi)發(fā)軟件MAX plus II/Quartus II的使用及設(shè)計(jì)過(guò)程。熟悉EDA工具設(shè)計(jì)數(shù)字電路設(shè)計(jì)方法,掌握VHDL硬件描述語(yǔ)言設(shè)計(jì)方法。根據(jù)給定題目設(shè)計(jì)數(shù)字電路,來(lái)加深對(duì)可編程邏輯器件的理解和掌握。</p><p>  1.2 課程設(shè)計(jì)具體要求及功能</p><p>  在所選擇器件內(nèi)完成八路搶答器的設(shè)計(jì),要求設(shè)計(jì)完成后芯片具有搶答器的全部功能、包括顯示

13、和操作接口。搶答器要求有八路搶答輸入,搶答邏輯設(shè)計(jì)合理(具有搶答鎖定),搶答編號(hào)顯示,搶答成功指示,搶答完成后狀態(tài)復(fù)位。在相應(yīng)的器件平臺(tái)上完成設(shè)計(jì)的輸入、編譯、綜合或適配通過(guò)。</p><p>  8路搶答器控制系統(tǒng)是娛樂(lè)活動(dòng)中經(jīng)常使用的重要基礎(chǔ)設(shè)備之一,根據(jù)搶答要求,系統(tǒng)所需實(shí)現(xiàn)的功能如下:</p><p>  (1) 主持人按鍵清零,數(shù)碼顯示0,蜂鳴器不叫,進(jìn)入搶答狀態(tài)。</p&

14、gt;<p>  (2) 主持人發(fā)出開(kāi)始命令,8人開(kāi)始搶答。其中一人先按下?lián)尨疰I,蜂鳴器發(fā)出鳴叫,數(shù)碼顯示該人號(hào)碼,其他人再按鍵,系統(tǒng)不再響應(yīng),直至主持人按鍵清零,下一次搶答開(kāi)始。</p><p>  2 EDA及MAX plus Ⅱ簡(jiǎn)介</p><p><b>  2.1 EDA簡(jiǎn)介</b></p><p>  EDA(Elec

15、tronics Design Automation)技術(shù)是隨著集成電路和計(jì)算機(jī)技術(shù)的飛速發(fā)展應(yīng)運(yùn)而生的一種高級(jí)、快速、有效的電子設(shè)計(jì)自動(dòng)化工具。它是為解決自動(dòng)控制系統(tǒng)設(shè)計(jì)而提出的。EDA在通信行業(yè)(電信)里的另一個(gè)解釋是企業(yè)數(shù)據(jù)架構(gòu),EDA給出了一個(gè)企業(yè)級(jí)的數(shù)據(jù)架構(gòu)的總體視圖,并按照電信企業(yè)的特征,進(jìn)行了框架和層級(jí)的劃分。</p><p>  EDA技術(shù)就是以計(jì)算機(jī)為工具,設(shè)計(jì)者在EDA軟件平臺(tái)上,用硬件描述語(yǔ)言

16、HDL完成設(shè)計(jì)文件,然后由計(jì)算機(jī)自動(dòng)地完成邏輯編譯、化簡(jiǎn)、分割、綜合、優(yōu)化、布局、布線和仿真,直至對(duì)于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。EDA技術(shù)的出現(xiàn),極大地提高了電路設(shè)計(jì)的效率和可操作性,減輕了設(shè)計(jì)者的勞動(dòng)強(qiáng)度。 </p><p>  利用EDA工具,電子設(shè)計(jì)師可以從概念、算法、協(xié)議等開(kāi)始設(shè)計(jì)進(jìn)行八路搶答器的系統(tǒng),大量工作可以通過(guò)計(jì)算機(jī)完成,并可以將搶答器從電路設(shè)計(jì)、性能分析到設(shè)計(jì)出IC版圖或

17、PCB版圖的整個(gè)過(guò)程的計(jì)算機(jī)上自動(dòng)處理完成?,F(xiàn)在對(duì)EDA的概念或范疇用得很寬。包括在機(jī)械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事等各個(gè)領(lǐng)域,都有EDA的應(yīng)用。目前EDA技術(shù)已在各大公司、企事業(yè)單位和科研教學(xué)部門(mén)廣泛使用。</p><p>  2.2 MAX plus Ⅱ簡(jiǎn)介</p><p>  Max plusⅡ是Altera公司提供的FPGA/CPLD開(kāi)發(fā)集成環(huán)境,Alter

18、a是世界上最大可編程邏輯器件的供應(yīng)商之一。Max plusⅡ界面友好,使用便捷,被譽(yù)為業(yè)界最易用易學(xué)的EDA軟件。在Max plusⅡ上可以完成設(shè)計(jì)輸入、元件適配、時(shí)序仿真和功能仿真、編程下載整個(gè)流程,它提供了一種與結(jié)構(gòu)無(wú)關(guān)的設(shè)計(jì)環(huán)境,是設(shè)計(jì)者能方便地進(jìn)行設(shè)計(jì)輸入、快速處理和器件編程。Max plusⅡ的編譯器還提供了強(qiáng)大的邏輯綜合與優(yōu)化功能,使用戶(hù)比較容易地將設(shè)計(jì)集成到器件中。</p><p><b>

19、;  ●設(shè)計(jì)輸入</b></p><p>  MAX plus II軟件的設(shè)計(jì)輸入方式有多種,主要包括原理圖輸入方式、文本輸入方式、波形設(shè)計(jì)輸入方式、層次設(shè)計(jì)輸入方式和底層設(shè)計(jì)輸入方式。因此,設(shè)計(jì)人員可以根據(jù)自己的實(shí)際情況靈活選擇使用。</p><p><b>  ●設(shè)計(jì)編譯</b></p><p>  MAX plus II編譯一

20、個(gè)設(shè)計(jì)時(shí),Compiler在設(shè)計(jì)文件中讀取信息并產(chǎn)生編程文件和仿真文件,Message Processor(信息處理程序)可自動(dòng)定位錯(cuò)誤。</p><p><b>  ●設(shè)計(jì)校驗(yàn)</b></p><p>  設(shè)計(jì)校驗(yàn)過(guò)程包括設(shè)計(jì)仿真和定時(shí)分析,仿真起的作用是測(cè)試邏輯操作和設(shè)計(jì)功能的完備性;Timing Analyzer(定時(shí)分析程序)可分析設(shè)計(jì)的定時(shí)和延時(shí)情況。<

21、;/p><p><b>  ●器件編程 </b></p><p>  MAX plus II Programmer是使用Compiler生成的編程文件對(duì)Altera器件進(jìn)行編程的。它可以用來(lái)對(duì)器件編程、校驗(yàn)和試驗(yàn),是對(duì)設(shè)計(jì)功能進(jìn)行的測(cè)試。Altera公司器件的編程方法有許多種,可根據(jù)具體情況選擇使用。編譯生成的配置文件經(jīng)計(jì)算機(jī)并行通信口接到Altera專(zhuān)用編程電纜上,再接

22、到器件的編程接口[6],利用應(yīng)用軟件提供的編程軟件,Programmer即可對(duì)器件進(jìn)行配置。這種方法的優(yōu)點(diǎn)是配置方便、迅速,便于修改。</p><p>  MAX plus2在Windows 2000/XP上一旦安裝完畢,經(jīng)過(guò)設(shè)置即可使用硬件下載功能。在Windows 2000上除了安裝軟件外,為了使用ByteBlaster(MV)下載功能,還必須安裝硬件驅(qū)動(dòng)(Drivers)以支持MAX plus2對(duì)PC機(jī)并行

23、口的操作。</p><p><b>  3設(shè)計(jì)方案</b></p><p>  3.1 八路搶答器控制系統(tǒng)的設(shè)計(jì)思路</p><p>  搶答器同時(shí)供8名選手或8個(gè)代表隊(duì)比賽,分別用8個(gè)按鈕[a1]~[a8]。設(shè)置一個(gè)系統(tǒng)清除和搶答控制開(kāi)關(guān)Reset, 該開(kāi)關(guān)由主持人控制。搶答器具有鎖存與顯示功能。即選手按動(dòng)按鈕,鎖存相應(yīng)的編號(hào),揚(yáng)聲器發(fā)出聲響

24、提示,數(shù)碼顯示選手號(hào)碼。其他人再按鍵,系統(tǒng)進(jìn)行了優(yōu)先鎖存,不再響應(yīng),優(yōu)先搶答選手的編號(hào)一直保持到主持人將系統(tǒng)清除為止,下一次搶答開(kāi)始。</p><p>  擴(kuò)展功能:該電路具有犯規(guī)報(bào)警功能。當(dāng)主持人未按下開(kāi)關(guān)開(kāi)始搶答前,參賽選手若按下開(kāi)關(guān),則搶答系統(tǒng)發(fā)出蜂鳴聲報(bào)警并顯示犯規(guī)組別。</p><p>  3.2 搶答器的系統(tǒng)結(jié)構(gòu)及工作原理</p><p> ?。?)系統(tǒng)

25、結(jié)構(gòu):如圖3.1所示為搶答器的結(jié)構(gòu)框圖,它由主體電路和擴(kuò)展電路兩部分組成。主體電路完成基本的搶答功能,即開(kāi)始搶答后,當(dāng)選手按動(dòng)搶答鍵時(shí),能顯示選手的編號(hào),同時(shí)能封鎖輸入電路,禁止其他選手搶答。擴(kuò)展電路完成檢測(cè)數(shù)碼管工作情況。其工作原理為:接通電源后,主持人將開(kāi)關(guān)撥到"清除"狀態(tài),搶答器處于禁止?fàn)顟B(tài),編號(hào)顯示器滅燈,定時(shí)器顯示設(shè)定時(shí)間;主持人將開(kāi)關(guān)置于"開(kāi)始"狀態(tài),宣布"開(kāi)始"搶

26、答器工作。定時(shí)器倒計(jì)時(shí),揚(yáng)聲器給出聲響提示。選手在定時(shí)時(shí)間內(nèi)搶答時(shí),搶答器完成:優(yōu)先判斷、編號(hào)鎖存、編號(hào)顯示、揚(yáng)聲器提示。當(dāng)一輪搶答之后,定時(shí)器停止、禁止二次搶答、定時(shí)器顯示剩余時(shí)間。如果再次搶答必須由主持人再次操作"清除"和"開(kāi)始"狀態(tài)開(kāi)關(guān)。</p><p>  圖3.1 搶答器結(jié)構(gòu)框圖</p><p><b> ?。?)工作流程:<

27、;/b></p><p>  圖3.2搶答器工作流程</p><p>  搶答器的基本工作原理:在搶答競(jìng)賽或呼叫時(shí),有多個(gè)信號(hào)同時(shí)或不同時(shí)送入主電路中,搶答器內(nèi)部的寄存器工作,并識(shí)別、記錄第一個(gè)號(hào)碼,同時(shí)內(nèi)部的定時(shí)器開(kāi)始工作,記錄有關(guān)時(shí)間并產(chǎn)生超時(shí)信號(hào)。在整個(gè)搶答器工作過(guò)程中,顯示電路、語(yǔ)音電路等還要根據(jù)現(xiàn)場(chǎng)的實(shí)際情況向外電路輸出相應(yīng)信號(hào)。搶答器的工作流程分為、系統(tǒng)復(fù)位、正常流程、犯

28、規(guī)流程等幾部分。</p><p><b>  3.3 具體實(shí)現(xiàn)</b></p><p>  (1)搶答器的電路設(shè)計(jì)</p><p>  1、搶答器電路總體結(jié)構(gòu):如圖3.3所示為總體方框圖。接通電源后,后臺(tái)工作人員將檢測(cè)開(kāi)關(guān)S置“檢測(cè)”狀態(tài),數(shù)碼管在正常清除下,顯示“”;當(dāng)后臺(tái)工作人員將檢測(cè)開(kāi)關(guān)S置“搶答”狀態(tài),主持按系統(tǒng)清除按鍵,搶答器處于禁止

29、狀態(tài),編號(hào)顯示器滅燈;主持人松開(kāi),宣布“開(kāi)始”,搶答器工作。選手按動(dòng)搶答按鍵,搶答器完成:優(yōu)先判斷、編號(hào)鎖存、編號(hào)顯示。當(dāng)一輪搶答之后,優(yōu)先搶答選手的編號(hào)一直保持到主持人將系統(tǒng)清除為止。如果再次搶答必須由主持人再次按動(dòng)系統(tǒng)清除按鍵。</p><p>  圖3.3 搶答器總體方框圖</p><p>  2、優(yōu)先判斷與編號(hào)鎖存電路:其電路如圖3.4所示。電路選用優(yōu)先編碼器 74LS148 和鎖

30、存器 74LS279 來(lái)完成。該電路主要完成兩個(gè)功能:一是分辨出選手按鍵的先后,并鎖存優(yōu)先搶答者的編號(hào);二是禁止其他選手按鍵,其按鍵操作無(wú)效。工作過(guò)程:系統(tǒng)清除按鍵按動(dòng)時(shí),74LS279的四個(gè)RS觸發(fā)器的置0端均為0,使四個(gè)觸發(fā)器均被置0。1Q為0,使74LS148的使能端 =0,74LS148處于允許編碼狀態(tài),同時(shí)1Q為0,使74LS48的滅燈輸入端 =0,數(shù)碼管無(wú)顯示。這時(shí)搶答器處于準(zhǔn)備搶答狀態(tài)。</p><p&

31、gt;  當(dāng)系統(tǒng)清除按鍵松開(kāi)時(shí),搶答器處于等待狀態(tài)。當(dāng)有選手將按鍵開(kāi)關(guān)按下時(shí),搶答器將接受并顯示搶答結(jié)果,假設(shè)按下的是S4,則74LS148的編碼輸出為011,此代碼送入74LS279鎖存后,使4Q3Q2Q=100,亦即74LS148的輸入為0100;又74LS148的優(yōu)先編碼標(biāo)志輸出 為0,使1Q=1,即 =1,74LS148處于譯碼狀態(tài),譯碼的結(jié)果顯示為“4”。同時(shí)1Q=1,使74LS148的 =1,74LS148處于禁止?fàn)顟B(tài),從而

32、封鎖了其他按鍵的輸入。此外,當(dāng)優(yōu)先搶答者的按鍵松開(kāi)再按下時(shí),由于仍為1Q=1,使 =1,74LS148仍處于禁止?fàn)顟B(tài),確保不會(huì)接受二次按鍵時(shí)的輸入信號(hào),保證了搶答者的優(yōu)先性。(74LS148為8線-3線優(yōu)先編碼器,圖3.5為74LS148和74LS279的引腳圖和真值表。)</p><p>  圖3.4 74LS148為8線-3線優(yōu)先編碼器</p><p>  圖3.5 74LS148和

33、74LS279的引腳圖和真值表</p><p>  (2) 搶答器的單元電路設(shè)計(jì)</p><p>  簡(jiǎn)易邏輯數(shù)字搶答器由主體電路與擴(kuò)展電路組成。優(yōu)先編碼電路、鎖存器、譯碼電路將參賽隊(duì)的輸入信號(hào)在顯示器上輸出;用控制電路和主持人開(kāi)關(guān)啟動(dòng)報(bào)警電路,以上兩部分組成主體電路。通過(guò)定時(shí)電路和譯碼電路將秒脈沖產(chǎn)生的信號(hào)在顯示器上輸出實(shí)現(xiàn)計(jì)時(shí)功能,構(gòu)成擴(kuò)展電路。現(xiàn)簡(jiǎn)單介紹搶答器設(shè)計(jì)中的搶答電路、定時(shí)電

34、路、報(bào)警電路、時(shí)序控制電路、顯示及譯碼電路。</p><p>  1、搶答電路:參考電路如圖3.6所示。該電路完成兩個(gè)功能:一是分辨出選手按鍵的先后,并鎖存優(yōu)先搶答者的編號(hào),同時(shí)譯碼顯示電路顯示編號(hào);二是禁止其他選手按鍵操作無(wú)效。</p><p>  工作過(guò)程:開(kāi)關(guān)S置于“清除”端時(shí),RS觸發(fā)器的端均為0,4個(gè)觸發(fā)器輸出置0,使74LS148的=0,使之處于工作狀態(tài)。當(dāng)開(kāi)關(guān)S置于“開(kāi)始”時(shí)

35、,搶答器處經(jīng)RS鎖存后,1Q=1,=1,74LS48處于工作狀態(tài),4Q3Q2Q=101,經(jīng)譯碼顯示為“5”。此外,1Q=1,使74LS148=1,處于禁止?fàn)顟B(tài),封鎖其他按鍵的輸入。當(dāng)按鍵松開(kāi)即按下時(shí),74LS148的此時(shí)由于仍為1Q=1,使=1,所以74LS148仍處于禁止?fàn)顟B(tài),確保不會(huì)出二次按鍵時(shí)輸入信號(hào),保證了搶答者的優(yōu)先性。如有再次搶答需由主持人將S開(kāi)關(guān)重新置于“清除”然后再進(jìn)行下一輪搶答。(LS148為8線-3線優(yōu)先編碼器。)&

36、lt;/p><p><b>  圖3.6 搶答電路</b></p><p>  2、定時(shí)電路:由節(jié)目主持人根據(jù)搶答題的難易程度,設(shè)定一次搶答的時(shí)間,通過(guò)預(yù)置時(shí)間電路對(duì)計(jì)數(shù)器進(jìn)行預(yù)置,計(jì)數(shù)器的時(shí)鐘脈沖由秒脈沖電路提供??深A(yù)置時(shí)間的電路選用十進(jìn)制同步加減計(jì)數(shù)器74LS192進(jìn)行設(shè)計(jì),具體電路如圖3.7所示。本設(shè)計(jì)是以555構(gòu)成震蕩電路,由74LS192來(lái)充當(dāng)計(jì)數(shù)器,構(gòu)成搶答器

37、的倒計(jì)時(shí)電路。該電路簡(jiǎn)單,無(wú)需用到晶振,芯片都是市場(chǎng)上容易購(gòu)得的。設(shè)計(jì)功能完善,能實(shí)現(xiàn)直接清零、啟動(dòng)。</p><p><b>  圖3.7 定時(shí)電路</b></p><p>  3、報(bào)警電路:由555定時(shí)器和三極管構(gòu)成的報(bào)警電路如圖3.8所示。其中555構(gòu)成多諧振蕩器,振蕩頻率fo=1.43/[(RI+2R2)C],其輸出信號(hào)經(jīng)三極管推動(dòng)揚(yáng)聲器。PR為控制信號(hào),當(dāng)P

38、R為高電平時(shí),多諧振蕩器工作,反之,電路停振。</p><p><b>  圖3.8 報(bào)警電路</b></p><p>  4、時(shí)序控制電路:時(shí)序控制電路是搶答器設(shè)計(jì)的關(guān)鍵,它要完成以下三項(xiàng)功能:</p><p>  (a) 主持人將控制開(kāi)關(guān)撥到"開(kāi)始"位置時(shí),揚(yáng)聲器發(fā)聲,搶答電路和定時(shí)電路進(jìn)人正常搶答工作狀態(tài)。</p

39、><p>  (b) 當(dāng)參賽選手按動(dòng)搶答鍵時(shí),揚(yáng)聲器發(fā)聲,搶答電路和定時(shí)電路停止工作。</p><p>  (c) 當(dāng)設(shè)定的搶答時(shí)間到,無(wú)人搶答時(shí),揚(yáng)聲器發(fā)聲,同時(shí)搶答電路和定時(shí)電路停止工作。</p><p>  根據(jù)上面的功能要求,設(shè)計(jì)的時(shí)序控制電路如圖 3.9所示。圖中,門(mén)G1 的作用是控制時(shí)鐘信號(hào)CP的放行與禁止,門(mén)G2的作用是控制74LS148的輸人使能端 。圖

40、4-3的工作原理是:主持人控制開(kāi)關(guān)從"清除"位置撥到"開(kāi)始"位置時(shí),來(lái)自于圖4-1中的74LS279的輸出 1Q=0,經(jīng)G3反相, A=1,則時(shí)鐘信號(hào)CP能夠加到74LS192的CPD時(shí)鐘輸入端,定時(shí)電路進(jìn)行遞減計(jì)時(shí)。同時(shí),在定時(shí)時(shí)間未到時(shí),則"定時(shí)到信號(hào)"為1,門(mén)G2的輸出=0,使 74LS148處于正常工作狀態(tài),從而實(shí)現(xiàn)功能①的要求。當(dāng)選手在定時(shí)時(shí)間內(nèi)按動(dòng)搶答鍵時(shí),1Q=1

41、,經(jīng) G3反相, A=0,封鎖 CP信號(hào),定時(shí)器處于保持工作狀態(tài);同時(shí),門(mén)G2的輸出=1,74LS148處于禁止工作狀態(tài),從而實(shí)現(xiàn)功能②的要求。當(dāng)定時(shí)時(shí)間到時(shí),則"定時(shí)到信號(hào)"為0,=1,74LS148處于禁止工作狀態(tài),禁止選手進(jìn)行搶答。同時(shí), 門(mén)G1處于關(guān)門(mén)狀態(tài),封鎖 CP信號(hào),使定時(shí)電路保持00狀態(tài)不變,從而實(shí)現(xiàn)功能③的要求。集成單穩(wěn)觸發(fā)器74LS121用于控制報(bào)警電路及發(fā)聲的時(shí)間。</p><

42、;p>  圖3.9 時(shí)序控制電路</p><p>  5、顯示與譯碼電路:七段顯示譯碼器與數(shù)碼管如下圖3.10 7段顯示譯碼所示,74LS48將鎖存器74LS279的信號(hào)譯碼,輸出給數(shù)碼管。當(dāng)后臺(tái)工作人員將S置于GND,=0,使燈測(cè)試輸入端(圖中3號(hào))=1,這時(shí)測(cè)試數(shù)碼管工作情況;當(dāng)后臺(tái)工作人員將S置于Vcc,=1,使燈測(cè)試輸入端(圖中3號(hào))=1,這時(shí)正常譯碼。(74LS48為4線-七段譯碼器/驅(qū)動(dòng)器,下圖

43、3.11為邏輯圖)</p><p>  圖3.10 7段顯示譯碼器與數(shù)碼管</p><p>  圖3.11 74LS48邏輯圖</p><p>  (3) 基于VHDL的實(shí)體設(shè)計(jì):</p><p><b>  1、程序設(shè)計(jì)</b></p><p><b>  編碼程序:</b>

44、;</p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_1164.ALL;</p><p>  ENTITY change IS</p><p>  PORT(q1,q2,q3,q4,q5,q6,q7,q8: IN STD_LOGIC;</p><p>  clr

45、: IN STD_LOGIC;</p><p>  m: OUT STD_LOGIC_vector(3 downto 0);</p><p>  en: OUT STD_LOGIC);</p><p>  END change;</p><p>  ARCHITECTURE a OF change IS</p><p>

46、;<b>  BEGIN</b></p><p>  process(q1,q2,q3,q4,q5,q6,q7,q8,clr)</p><p>  variable temp:STD_LOGIC_vector(7 downto 0);</p><p><b>  begin</b></p><p>

47、  temp:=q1&q2&q3&q4&q5&q6&q7&q8;</p><p>  case temp is</p><p>  when"01111111"=>m<="0001";</p><p>  when"10111111"=&g

48、t;m<="0010";</p><p>  when"11011111"=>m<="0011";</p><p>  when"11101111"=>m<="0100";</p><p>  when"11110111&quo

49、t;=>m<="0101";</p><p>  when"11111011"=>m<="0110";</p><p>  when"11111101"=>m<="0111";</p><p>  when"1111111

50、0"=>m<="1000";</p><p>  when others=>m<="1111";</p><p><b>  end case;</b></p><p>  en <= temp(7) AND temp(6) AND temp(5) AND temp

51、(4) AND temp(3) AND temp(2) AND temp(1) AND temp(0) AND clr;</p><p>  end process;</p><p><b>  END a;</b></p><p>  對(duì)應(yīng)的管腳圖和仿真圖如下:</p><p>  圖3.12 編碼模塊管腳圖</

52、p><p>  圖3.13 編碼模塊仿真圖</p><p><b>  鎖存程序:</b></p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_1164.ALL;</p><p>  USE ieee.std_logic_unsigned.ALL;

53、</p><p>  ENTITY lock IS</p><p>  PORT(s1: IN STD_LOGIC;</p><p>  s2: IN STD_LOGIC;</p><p>  s3: IN STD_LOGIC;</p><p>  s4: IN STD_LOGIC;</p><p&

54、gt;  s5: IN STD_LOGIC;</p><p>  s6: IN STD_LOGIC;</p><p>  s7: IN STD_LOGIC;</p><p>  s8: IN STD_LOGIC;</p><p>  clr: INSTD_LOGIC;</p><p>  q1,q2,q3,q4,q5

55、,q6,q7,q8: OUTSTD_LOGIC);</p><p><b>  END lock;</b></p><p>  ARCHITECTURE a OF lock IS</p><p><b>  BEGIN</b></p><p>  process(s1,s2,s3,s4,s5,s6

56、,s7,s8,clr)</p><p><b>  begin</b></p><p>  if(clr ='0') then</p><p>  q1<='1';q2<='1';</p><p>  q3<='1';q4<='

57、;1';</p><p>  q5<='1';q6<='1';</p><p>  q7<='1';q8<='1';</p><p><b>  else</b></p><p>  q1<=s1;q2<=s2;&

58、lt;/p><p>  q3<=s3;q4<=s4;</p><p>  q5<=s5;q6<=s6;</p><p>  q7<=s7;q8<=s8;</p><p><b>  end if;</b></p><p>  end process;</p&g

59、t;<p><b>  END a;</b></p><p>  對(duì)應(yīng)的管腳圖和仿真圖如下:</p><p>  圖3.14 鎖存模塊管腳圖</p><p>  圖3.15 鎖存模塊仿真圖</p><p>  搶答成功揚(yáng)聲器發(fā)聲相關(guān)程序:</p><p>  LIBRARY ieee

60、;</p><p>  USE ieee.std_logic_1164.ALL;</p><p>  USE ieee.std_logic_unsigned.ALL;</p><p>  ENTITY cnt IS</p><p>  PORT(clk,en: in STD_LOGIC;</p><p>  sound

61、1:out STD_LOGIC);</p><p><b>  END cnt;</b></p><p>  ARCHITECTURE a OF cnt IS</p><p><b>  BEGIN</b></p><p>  process(en,clk)</p><p>

62、<b>  begin</b></p><p>  if(clk'event and clk='1') then</p><p>  if(en='1') then</p><p>  sound1<='1';</p><p><b>  else

63、</b></p><p>  sound1<='0';</p><p>  end if;end if;</p><p>  end process;</p><p><b>  END a;</b></p><p>  對(duì)應(yīng)的管腳圖和仿真圖如下:</p&g

64、t;<p>  圖3.16 搶答成功揚(yáng)聲器發(fā)聲模塊管腳圖</p><p>  圖3.17 搶答成功揚(yáng)聲器發(fā)聲模塊仿真圖</p><p>  數(shù)碼管顯示管相關(guān)程序:</p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_1164.ALL;</p><p>

65、  USE ieee.std_logic_unsigned.ALL;</p><p>  ENTITY display IS</p><p>  PORT(m: INSTD_LOGIC_VECTOR(3 downto 0);</p><p>  BCD: out STD_LOGIC_VECTOR(7 downto 0));</p><p>

66、  END display;</p><p>  ARCHITECTURE a OF display IS</p><p><b>  BEGIN</b></p><p>  PROCESS(m) </p><p><b>  BEGIN</b></p><p

67、><b>  CASE m IS</b></p><p>  WHEN "0000" => BCD <="00111111";</p><p>  WHEN "0001" => BCD <="00000110";</p><p> 

68、 WHEN "0010" => BCD <="01011011";</p><p>  WHEN "0011" => BCD <="01001111";</p><p>  WHEN "0100" => BCD <="01100110&qu

69、ot;;</p><p>  WHEN "0101" => BCD <="01101101";</p><p>  WHEN "0110" => BCD <="01111101";</p><p>  WHEN "0111" =>

70、BCD <="00000111";</p><p>  WHEN "1000" => BCD <="01111111";</p><p>  WHEN "1001" => BCD <="01101111";</p><p>  WHE

71、N OTHERS => BCD <="00000000";</p><p><b>  END CASE;</b></p><p>  END PROCESS; </p><p><b>  END a;</b></p><p>  對(duì)應(yīng)的管腳圖和仿真圖如下:<

72、/p><p>  圖3.18 數(shù)碼管顯示管模塊管腳圖</p><p>  圖3.19 數(shù)碼管顯示管模塊仿真圖</p><p><b>  2、編譯管腳設(shè)置:</b></p><p>  程序輸入完成后然后選擇用于編程的目標(biāo)芯片:選擇菜單 “Assign”→“Device”, 窗口中的 Device Family 是器件序列欄

73、, 先在此欄中選擇 MAX7000S。然后選擇 EMP7128SLC84- 15 器件, 按 OK,就可以進(jìn)行編譯了,經(jīng)“MAX+PLUSE II”中的“Compiler”菜單編譯,以驗(yàn)證設(shè)計(jì)結(jié)果是否符合要求,如果有問(wèn)題,則返回原設(shè)計(jì)文件再次進(jìn)行修改, 直到正確為止。</p><p>  圖3.20 編碼管腳</p><p>  編譯無(wú)誤后經(jīng)“MAX+PLUSE II”中的“FLOORP

74、LAN EDITOR” 菜單,進(jìn)行輸入、輸出管腳設(shè)置,將元件端口放置到 EPM7128SLC84- 15芯片適當(dāng)?shù)腎/O 口,并用手工調(diào)整按上圖所示設(shè)置。</p><p><b>  4 系統(tǒng)仿真</b></p><p>  4.1 頂層模塊及管腳介紹</p><p>  編譯成功后進(jìn)行仿真。首先建立波形文件。波形文件建好 并存盤(pán)后。選擇菜單“

75、Max plusII”→“simulator”,啟動(dòng)仿真操作,結(jié)束后觀察仿真波形如圖4.2所示。從仿真波形看, 符合設(shè)計(jì)要求(對(duì)應(yīng)的管腳圖和仿真圖如下)。</p><p>  圖4.1 頂層文件管腳圖</p><p>  圖4.2 頂層仿真波形圖</p><p>  s1,s2,s3,s4,s5,s6,s7,s8輸入</p><p>  q1

76、,q2,q3,q4,q5,q6,q7,q8鎖存輸出</p><p>  M編碼輸出和BCD顯示輸入</p><p><b>  clk時(shí)鐘控制信號(hào)</b></p><p>  clr 0,清零 1為開(kāi)始搶答</p><p><b>  en搶答成功</b></p><p> 

77、 BCD數(shù)碼管顯示輸出</p><p>  4.2 仿真結(jié)果分析</p><p>  搶答必須發(fā)聲在一個(gè)時(shí)鐘周期里且保證clr=1時(shí)才有效,而對(duì)應(yīng)數(shù)碼顯示管模塊可得知,若當(dāng)“s1”搶答則數(shù)碼管為"00111111"對(duì)應(yīng)顯示“06”,s1搶答成功且揚(yáng)聲器發(fā)聲,搶答完成,其他號(hào)碼搶答同理。</p><p>  圖4.2的仿真圖表示為:在第一個(gè)有效時(shí)鐘

78、周期里為s3搶答成功,第二個(gè)有效時(shí)鐘周期為s6搶答成功,第三個(gè)有效時(shí)鐘周期為s8搶答成功,第四個(gè)有效時(shí)鐘周期為s2搶答成功,第五個(gè)有效時(shí)鐘周期為s7搶答成功。則數(shù)碼管顯示分別為4F、7D、7F、5B、07。仿真無(wú)誤,由本次仿真結(jié)果可知該設(shè)計(jì)成功的實(shí)現(xiàn)了8路搶答器的搶答功能。</p><p><b>  小結(jié)</b></p><p>  本次設(shè)計(jì)是在指導(dǎo)老師xx的指導(dǎo)下

79、完成的。x老師是帶我們進(jìn)入VHDL世界的人,僅僅3個(gè)星期讓我們了解VHDL的世界,這是我這次課程設(shè)計(jì)能成功的最主要原因。在設(shè)計(jì)的過(guò)程中,xx老師還給予了指導(dǎo),并提供了很多與該設(shè)計(jì)相關(guān)的重要信息,培養(yǎng)了我們對(duì)課程設(shè)計(jì)的興趣,豐富了我們的知識(shí)。這都將非常有利于我們今后的學(xué)習(xí)和工作。在此表示衷心的感謝!</p><p>  在課程設(shè)計(jì)的這段時(shí)間里,我認(rèn)為收獲還是很多的,不但進(jìn)一步掌握了數(shù)字電子技術(shù)的基礎(chǔ)知識(shí)及一門(mén)專(zhuān)業(yè)仿

80、真軟件的基本操作,還提高了自己的設(shè)計(jì)能力及動(dòng)手能力,同時(shí)對(duì)于搶答器來(lái)了個(gè)系統(tǒng)的總結(jié)。更多的是讓我看清了自己,明白了凡事需要耐心,實(shí)踐是檢驗(yàn)學(xué)習(xí)的唯一標(biāo)準(zhǔn)。本次設(shè)計(jì)在程序上花費(fèi)的時(shí)間是最久的,我們上網(wǎng)找資料,上圖書(shū)館,盡可能的了解關(guān)于八路搶答器的知識(shí),在設(shè)計(jì)的過(guò)程中也遇到了很多問(wèn)題,理論知識(shí)的不足在這次課設(shè)中表現(xiàn)的很明顯。但這都將有助于我今后的學(xué)習(xí),端正自己的學(xué)習(xí)態(tài)度,從而更加努力的學(xué)習(xí)??傊?,通過(guò)本次課程設(shè)計(jì)不但讓我不僅學(xué)到了一些知識(shí),

81、而且也提高了我的綜合能力。使我在各方面都得到了鍛煉,非常感謝給予幫助的同學(xué),也非常感謝我們的xx老師,使我們這次的課程設(shè)計(jì)任務(wù)圓滿(mǎn)完成。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]邢建平,曾繁泰.VHDL程序設(shè)計(jì)教程[M].北京:清華大學(xué)出版社,2005年,11月.</p><p>  [2]甘登岱,田富鵬,朱利娜

82、. EDA培訓(xùn)教程[M].北京:機(jī)械工業(yè)出版社,2005年,3月.</p><p>  [3] 楊頌華. 電子線路EDA仿真技術(shù)[M].西安:西安交通大學(xué)出版社,2008年,2月.</p><p>  [4] 蔣小燕,俞偉均,張立臣.EDA技術(shù)及VHDL [M].南京:東南大學(xué)出版社,2008年,12月.</p><p>  [5] 劉欲曉.EDA技術(shù)與VHDL電路

83、開(kāi)發(fā)應(yīng)用實(shí)踐[M].北京:電子工業(yè)出版社,2009年,4月.</p><p>  [6] 王冬梅,張建秋.《八路搶答器設(shè)計(jì)與實(shí)現(xiàn)》[J]. 佳木斯大學(xué)學(xué)報(bào)(自然科學(xué)版), 2009,(06).22-26.</p><p>  [7] 丁建偉.《搶答器電路設(shè)計(jì)》[J].蘭州工業(yè)高等專(zhuān)科學(xué)校學(xué)報(bào),2008,(04).13-17.</p><p><b&g

84、t;  附錄1:程序</b></p><p><b>  元器件清單:</b></p><p><b>  編碼模塊程序:</b></p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_1164.ALL;</p><

85、p>  ENTITY change IS // 程序名稱(chēng):change</p><p>  PORT(q1,q2,q3,q4,q5,q6,q7,q8: IN STD_LOGIC; // 定義出入端q1~q8</p><p>  clr : IN STD_LOGIC; // 定義輸入端clr</p><p

86、>  m: OUT STD_LOGIC_vector(3 downto 0); // 定義輸出端m</p><p>  en: OUT STD_LOGIC); // 定義輸出端en</p><p>  END change;</p><p>  ARCHITECTURE a OF change IS</p>&l

87、t;p><b>  BEGIN</b></p><p>  process(q1,q2,q3,q4,q5,q6,q7,q8,clr)</p><p>  variable temp:STD_LOGIC_vector(7 downto 0);</p><p><b>  begin</b></p><

88、;p>  temp:=q1&q2&q3&q4&q5&q6&q7&q8;</p><p>  case temp is</p><p>  when"01111111"=>m<="0001"; // 當(dāng)temp=01111111時(shí)對(duì)應(yīng)的q1搶答,m顯示1</p&g

89、t;<p>  when"10111111"=>m<="0010"; // 當(dāng)temp=10111111時(shí)對(duì)應(yīng)的q2搶答,m顯示2</p><p>  when"11011111"=>m<="0011"; // 當(dāng)temp=11011111時(shí)對(duì)應(yīng)的q3搶答,m顯示3</p

90、><p>  when"11101111"=>m<="0100"; // 當(dāng)temp=11101111時(shí)對(duì)應(yīng)的q4搶答,m顯示4</p><p>  when"11110111"=>m<="0101"; // 當(dāng)temp=11110111時(shí)對(duì)應(yīng)的q5搶答,m顯示5<

91、/p><p>  when"11111011"=>m<="0110"; // 當(dāng)temp=11111011時(shí)對(duì)應(yīng)的q6搶答,m顯示6</p><p>  when"11111101"=>m<="0111"; // 當(dāng)temp=11111101時(shí)對(duì)應(yīng)的q7搶答,m顯示7&l

92、t;/p><p>  when"11111110"=>m<="1000"; // 當(dāng)temp=11111110時(shí)對(duì)應(yīng)的q8搶答,m顯示8</p><p>  when others=>m<="1111"; // 當(dāng)temp為其他情況則m顯示F</p><p>

93、<b>  end case;</b></p><p>  en <= temp(7) AND temp(6) AND temp(5) AND temp(4) AND temp(3) AND temp(2) AND temp(1) AND temp(0) AND clr;</p><p>  end process;</p><p>&l

94、t;b>  END a;</b></p><p><b>  鎖存模塊程序:</b></p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_1164.ALL;</p><p>  USE ieee.std_logic_unsigned.ALL;<

95、/p><p>  ENTITY lock IS // 程序名稱(chēng):lock</p><p>  PORT(s1: IN STD_LOGIC; // 定義輸入端s1</p><p>  s2: IN STD_LOGIC; // 定義輸入端s2</p><p>  s3: IN STD_

96、LOGIC; // 定義輸入端s3</p><p>  s4: IN STD_LOGIC; // 定義輸入端s4</p><p>  s5: IN STD_LOGIC; // 定義輸入端s5</p><p>  s6: IN STD_LOGIC; // 定義輸入端s6</p><p&

97、gt;  s7: IN STD_LOGIC; // 定義輸入端s7</p><p>  s8: IN STD_LOGIC; // 定義輸入端s8</p><p>  clr: INSTD_LOGIC; </p><p>  q1,q2,q3,q4,q5,q6,q7,q8: OUTSTD_LOGIC); //

98、 定義輸出端q1~q8</p><p><b>  END lock;</b></p><p>  ARCHITECTURE a OF lock IS</p><p><b>  BEGIN</b></p><p>  process(s1,s2,s3,s4,s5,s6,s7,s8,clr)<

99、/p><p><b>  begin</b></p><p>  if(clr ='0') then // 整個(gè)if語(yǔ)句實(shí)現(xiàn)鎖存功能,當(dāng)clr=0時(shí),s1~s8鎖住;當(dāng)clr=1q時(shí),s1~s8解鎖,q1~q8對(duì)應(yīng)輸出s1~s8的值</p><p>  q1<='1';q2<='1&#

100、39;; </p><p>  q3<='1';q4<='1';</p><p>  q5<='1';q6<='1';</p><p>  q7<='1';q8<='1';</p><p><b>

101、;  else</b></p><p>  q1<=s1;q2<=s2;</p><p>  q3<=s3;q4<=s4;</p><p>  q5<=s5;q6<=s6;</p><p>  q7<=s7;q8<=s8;</p><p><b> 

102、 end if;</b></p><p>  end process;</p><p><b>  END a;</b></p><p>  搶答成功揚(yáng)聲器發(fā)聲模塊程序:</p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_1164

103、.ALL;</p><p>  USE ieee.std_logic_unsigned.ALL;</p><p>  ENTITY cnt IS // 程序名稱(chēng):cut</p><p>  PORT(clk,en: in STD_LOGIC; // 定義輸入:clk,en</p><p>  

104、sound1:out STD_LOGIC); // 定義輸出:sound1</p><p><b>  END cnt;</b></p><p>  ARCHITECTURE a OF cnt IS</p><p><b>  BEGIN</b></p><p>  process(en,cl

105、k)</p><p><b>  begin</b></p><p>  if(clk'event and clk='1') then // 當(dāng)搶答控制開(kāi)關(guān)打開(kāi)即:clk=1時(shí)</p><p>  if(en='1') then // 當(dāng)en=1搶答成功&l

106、t;/p><p>  sound1<='1'; // 揚(yáng)聲器sound1<='1' 發(fā)聲</p><p><b>  else </b></p><p>  sound1<='0'; // 否則不發(fā)聲</p>&l

107、t;p>  end if;end if;</p><p>  end process;</p><p><b>  END a;</b></p><p>  數(shù)碼管顯示管對(duì)應(yīng)程序:</p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_11

108、64.ALL;</p><p>  USE ieee.std_logic_unsigned.ALL;</p><p>  ENTITY display IS // 程序名稱(chēng):display</p><p>  PORT(m: INSTD_LOGIC_VECTOR(3 downto 0); //

109、定義輸入端m</p><p>  BCD: out STD_LOGIC_VECTOR(7 downto 0)); // 定義輸出端 BCD</p><p>  END display;</p><p>  ARCHITECTURE a OF display IS</p><p><b>  BEGIN</b>&l

110、t;/p><p>  PROCESS(m) </p><p><b>  BEGIN</b></p><p><b>  CASE m IS</b></p><p>  WHEN "0000" => BCD <="00111111"

111、;; // 當(dāng)m=0時(shí),輸出BCD=3F</p><p>  WHEN "0001" => BCD <="00000110"; // 當(dāng)m=1時(shí),輸出BCD=06</p><p>  WHEN "0010" => BCD <="01011011"; //當(dāng)m=2時(shí),輸出

112、BCD=5B</p><p>  WHEN "0011" => BCD <="01001111"; //當(dāng)m=3時(shí),輸出BCD=4F</p><p>  WHEN "0100" => BCD <="01100110"; //當(dāng)m=4時(shí),輸出BCD=66</p>

113、<p>  WHEN "0101" => BCD <="01101101"; //當(dāng)m=5時(shí),輸出BCD=6D</p><p>  WHEN "0110" => BCD <="01111101"; //當(dāng)m=6時(shí),輸出BCD=7D</p><p>  WHEN &

114、quot;0111" => BCD <="00000111"; //當(dāng)m=7時(shí),輸出BCD=07</p><p>  WHEN "1000" => BCD <="01111111"; //當(dāng)m=8時(shí),輸出BCD=7F</p><p>  WHEN "1001" =&

115、gt; BCD <="01101111"; //當(dāng)m=9時(shí),輸出BCD=6F</p><p>  WHEN OTHERS => BCD <="00000000"; //當(dāng)m為其他數(shù)時(shí),輸出BCD=00</p><p><b>  END CASE;</b></p><p&

116、gt;  END PROCESS; </p><p><b>  END a;</b></p><p>  頂層文件模塊對(duì)應(yīng)程序:</p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_1164.all; </p><p>  LIBRARY w

117、ork;</p><p>  ENTITY qiangdaqi IS // 程序名稱(chēng):qiangdaqi</p><p><b>  PORT</b></p><p><b>  (</b></p><p>  clr : IN STD_LOGIC;

118、// 定義輸入端 clr</p><p>  clk : IN STD_LOGIC; // 定義輸入端時(shí)鐘信號(hào) clk</p><p>  s1 : IN STD_LOGIC; // 定義搶答信號(hào)輸入端 s1</p><p>  s2 : IN STD_LOGIC; // 定義搶答信號(hào)輸入端 s2</p>

119、<p>  s3 : IN STD_LOGIC; // 定義搶答信號(hào)輸入端 s3</p><p>  s4 : IN STD_LOGIC; // 定義搶答信號(hào)輸入端 s4</p><p>  s5 : IN STD_LOGIC; // 定義搶答信號(hào)輸入端 s5</p><p>  s6 : IN STD

120、_LOGIC; // 定義搶答信號(hào)輸入端 s6</p><p>  s7 : IN STD_LOGIC; // 定義搶答信號(hào)輸入端 s7</p><p>  s8 : IN STD_LOGIC; // 定義搶答信號(hào)輸入端 s8</p><p>  BCD : OUT STD_LOGIC_VECTOR(7 DOWNTO

121、0); // 定義輸出端數(shù)碼顯示管BCD</p><p>  SOUND : OUT STD_LOGIC // 定義輸出端揚(yáng)聲器SOUND</p><p><b>  );</b></p><p>  END qiangdaqi;</p><p>  ARCHITECTURE bdf_type

122、 OF qiangdaqi IS </p><p>  COMPONENT change</p><p>  PORT(q1 : IN STD_LOGIC; // 定義輸入端q1 </p><p>  q2 : IN STD_LOGIC; // 定義輸入端q2</p><p>  q3 : IN STD_LOGIC;

123、 // 定義輸入端q3</p><p>  q4 : IN STD_LOGIC; // 定義輸入端q4</p><p>  q5 : IN STD_LOGIC; // 定義輸入端q5</p><p>  q6 : IN STD_LOGIC; // 定義輸入端q6</p><p>  q7 : IN STD_LOGI

124、C; // 定義輸入端q7</p><p>  q8 : IN STD_LOGIC; // 定義輸入端q8</p><p>  clr : IN STD_LOGIC; // 定義輸入端clr</p><p>  en : OUT STD_LOGIC; // 定義輸出端en</p><p>  m : OUT

125、STD_LOGIC_VECTOR(3 DOWNTO 0) //定義輸出端m</p><p><b>  );</b></p><p>  END COMPONENT;</p><p>  COMPONENT cnt</p><p>  PORT(clk : IN STD_LOGIC; // 輸入端clk&l

溫馨提示

  • 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)論