eda專業(yè)課程設(shè)計(jì)--用vhdl來(lái)實(shí)現(xiàn)八位二—十進(jìn)制異步計(jì)數(shù)器_第1頁(yè)
已閱讀1頁(yè),還剩22頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  目 錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII</p><p>  1 MAX+plusⅡ簡(jiǎn)介1</p><p><b>  1.1 輸入1</b></p><

2、p>  1.2 MAX+plusⅡ仿真的實(shí)現(xiàn)1</p><p>  1.2.1 建立仿真項(xiàng)目的工程文件1</p><p>  1.2.2 設(shè)計(jì)圖形文件2</p><p>  1.2.3 創(chuàng)建波形文件3</p><p>  1.2.4 設(shè)計(jì)波形文件4</p><p>  1.2.5 仿真4</p&

3、gt;<p><b>  2原理的說(shuō)明5</b></p><p><b>  3 方案的比較6</b></p><p>  3.1 反饋歸零法6</p><p><b>  3.2級(jí)連法6</b></p><p><b>  3.3方案比較6&

4、lt;/b></p><p><b>  4方案的說(shuō)明8</b></p><p>  4.1計(jì)數(shù)器的設(shè)計(jì)8</p><p>  4.2 顯示部分的設(shè)計(jì)10</p><p>  4.3 兩部分電路的組合11</p><p>  5 總結(jié)與體會(huì)13</p><p&g

5、t;<b>  致 謝14</b></p><p><b>  參考文獻(xiàn)15</b></p><p><b>  源程序附錄16</b></p><p><b>  摘 要</b></p><p>  VHDL語(yǔ)言是一種用于電路設(shè)計(jì)的高級(jí)語(yǔ)言。它在

6、80年代的后期出現(xiàn)。最初是由美國(guó)國(guó)防部開(kāi)發(fā)出來(lái)供美軍用來(lái)提高設(shè)計(jì)的可靠性和縮減開(kāi)發(fā)周期的一種使用范圍較小的設(shè)計(jì)語(yǔ)言 。但是,由于它在一定程度上滿足了當(dāng)時(shí)的設(shè)計(jì)需求,于是他在1987年成為ANSI/IEEE的標(biāo)準(zhǔn)(IEEE STD 1076-1987)。1993年更進(jìn)一步修訂,變得更加完備,成為ANSI/IEEE的ANSI/IEEE STD 1076-1993標(biāo)準(zhǔn)。目前,大多數(shù)的CAD廠商

7、出品的EDA軟件都兼容了這種標(biāo)準(zhǔn)。</p><p>  VHDL(Very High Speed Integrated Circuit Hardware Descriptiong Language)翻譯成中文就是超高速集成電路硬件描述語(yǔ)言。因此它的應(yīng)用主要是應(yīng)用在數(shù)字電路的設(shè)計(jì)中。目前,它在中國(guó)的應(yīng)用多數(shù)是用在FPGA/CPLD/EPLD的設(shè)計(jì)中。本文章

8、主要說(shuō)明了用VHDL來(lái)實(shí)現(xiàn)八位二—十進(jìn)制異步計(jì)數(shù)器的方法。</p><p>  關(guān)鍵字:Maxplus2 VHDL 計(jì)數(shù)器 </p><p><b>  Abstract</b></p><p>  VHDL is a circuit design for the high-level language. In the late 1980s

9、 emerged. Initially by the United States Department of Defense developed for the U.S. troops used to improve the reliability and reduce the development cycle of use smaller language. However, to the extent that it satisf

10、ies the design requirements of the time. He then became the 1987 ANSI / IEEE standard (IEEE STD 1076-1987). Further amended in 1993, has become more complete, as ANSI / IEEE ANSI / IEEE 1076-1993 standard STD.</p>

11、<p>  VHDL is the brief description of VHSIC (Very High Speed Integrated Circuit Hardware Description Language). The translation into Chinese is ultra-high speed integrated circuits hardware description language. S

12、o it is primarily used in digital circuit design. Currently, it is used mostly in FPGA / CPLD / EPLD design in China. , This article mainly to explain the use VHDL to achieve eight two-decimal counter asynchronous method

13、。</p><p>  Keywords:Maxplus2VHDLCounter</p><p>  1 MAX+plusⅡ簡(jiǎn)介</p><p><b>  1.1 輸入</b></p><p>  1)原理圖輸入(Graphic Editor):MAX+PLUSII軟件具有圖形輸入能力,用戶可以方便的使用圖形編輯器

14、輸入電路圖,圖中的元器件可以調(diào)用元件庫(kù)中元器件,除調(diào)用庫(kù)中的元件以外,還可以調(diào)用該軟件中的符號(hào)功能形成的功能塊.</p><p>  2)硬件描述語(yǔ)言輸入(Text Editor):MAX+PLUSII軟件中有一個(gè)集成的文本編輯器,該編輯器支持VHDL,AHDL和Verilog硬件描述語(yǔ)言的輸入,同時(shí)還有一個(gè)語(yǔ)言模板使輸入程序語(yǔ)言更加方便,該軟件可以對(duì)這些程序語(yǔ)言進(jìn)行編譯并形成可以下載配置數(shù)據(jù)。</p>

15、;<p>  1.2 MAX+plusⅡ仿真的實(shí)現(xiàn)</p><p>  要在MAX+plus Ⅱ環(huán)境中實(shí)現(xiàn)仿真應(yīng)經(jīng)過(guò)如下幾個(gè)步驟:</p><p>  1.2.1 建立仿真項(xiàng)目的工程文件</p><p>  建立仿真項(xiàng)目的工程文件是實(shí)現(xiàn)對(duì)數(shù)字系統(tǒng)仿真分析與設(shè)計(jì)的前提??赏ㄟ^(guò)建立仿真設(shè)計(jì)與分析的圖形文件(*.GDF)并將仿真項(xiàng)目的工程文件指向該圖形文件來(lái)

16、完成.方法如下:</p><p>  啟動(dòng)MAX+plus Ⅱ(如果首次啟動(dòng),應(yīng)注冊(cè)),選擇File菜單的new子菜單,在彈出的對(duì)話框中選擇文件類型為Graphic Editor file,單擊OK進(jìn)入圖形文件編輯狀態(tài)。</p><p>  選擇File菜單的Save As子菜單,將新創(chuàng)建的未命名的圖形文件取個(gè)名字(因MAX+plus Ⅱ仿真時(shí)要產(chǎn)生文件,最好為仿真項(xiàng)目新建一個(gè)子目錄),單

17、擊OK保存。</p><p>  選擇File菜單Project子菜單下的Set Project To Current File將工程文件指向當(dāng)前圖形文件,如圖1。</p><p>  1.2.2 設(shè)計(jì)圖形文件</p><p>  1)在編輯區(qū)任意位置雙擊,將彈出電路符號(hào)放置對(duì)話框。圖中的中間文本框?yàn)镸AX+plus Ⅱ提供的元件庫(kù)。各庫(kù)簡(jiǎn)要說(shuō)明如下:</p&

18、gt;<p>  prim庫(kù):基本庫(kù),包括基本的邏輯單元電路及電路符號(hào)。如門電路、觸發(fā)器等。如and2表示2輸入與門,nand2表示2輸入與非門,or2表示2輸入或門,not表示反相器。dff、jkff、srff分別表示D觸發(fā)器、JK觸發(fā)器和RS觸發(fā)器。</p><p>  mf庫(kù):宏單元庫(kù),主要提供常用中、小規(guī)模器件所對(duì)應(yīng)的宏模塊。Mega-lpm庫(kù):參數(shù)化的模塊庫(kù),主要提供了門單元、算術(shù)運(yùn)算單元

19、、存儲(chǔ)器單元等模塊。在本教材中,主要用prim庫(kù)和mf庫(kù)。</p><p>  2)聯(lián)接電路:對(duì)繪圖各工具的含義予以簡(jiǎn)要說(shuō)明。</p><p>  3)編譯圖形文件全部連線完成后保存文件,選擇MAX+plus Ⅱ菜單的Compile子菜單,將出現(xiàn)圖2示的界面,單擊START按鈕,如果沒(méi)有錯(cuò)誤,系統(tǒng)將彈出編譯成功消息框。</p><p>  圖2 Compile界面&

20、lt;/p><p>  1.2.3 創(chuàng)建波形文件</p><p>  MaxplusII教學(xué)版軟件支持電路的功能仿真(或稱前仿真)和時(shí)序分析(或稱后仿真)。眾所周知,開(kāi)發(fā)人員在進(jìn)行電路設(shè)計(jì)時(shí),非常希望有比較先進(jìn)的高效的仿真工具出現(xiàn),這將為你的設(shè)計(jì)過(guò)程節(jié)約很多時(shí)間和成本。由于EDA工具的出現(xiàn),和它所提供的強(qiáng)大的(在線)仿真功能迅速地得到了電子工程設(shè)計(jì)人員的青睞,這也是當(dāng)今EDA(CPLD/FPG

21、A)技術(shù)非?;鸨脑蛑弧O旅婢停蚢xplusII軟件的仿真功能的基本應(yīng)用在本實(shí)驗(yàn)中作一初步介紹,在以后的實(shí)驗(yàn)例程中將不在一一介紹?!?lt;/p><p>  1)啟動(dòng)MaxplusII\Wavefrom editor菜單,進(jìn)入波形編輯窗口,如下圖3所示。</p><p>  圖3 Wavefrom editor窗口</p><p>  將鼠標(biāo)移至空白處并單擊右鍵,選

22、擇Enter nodes from snf選項(xiàng)并按左鍵確認(rèn)。</p><p>  出現(xiàn)下圖4所示對(duì)話筐,單擊和按鈕,選擇欲仿真的I/O管腳。</p><p>  圖4 Enter nodes from snf窗口</p><p>  3)單擊OK按鈕,列出仿真電路的輸入、輸出管腳圖</p><p>  1.2.4 設(shè)計(jì)波形文件</p&g

23、t;<p>  波形文件是MAX+plus Ⅱ仿真的必須文件,其主要作用是定義各輸入信號(hào)及要觀察的輸出信號(hào)。對(duì)各工具的含義予以簡(jiǎn)要說(shuō)明。</p><p><b>  1.2.5 仿真</b></p><p>  保存文件,選擇MAX+plus Ⅱ菜單的Simulator子菜單,將出現(xiàn)Simulator界面的界面。單擊START按鈕,如果沒(méi)有錯(cuò)誤,系統(tǒng)將彈

24、出仿真成功消息框。確定消息框內(nèi)容后,單擊Open_SCF按鈕,可觀察仿真波形。</p><p><b>  2原理的說(shuō)明</b></p><p>  異步計(jì)數(shù)器又稱行波計(jì)數(shù)器,它將低/高位計(jì)數(shù)器的輸出做為高/低位計(jì)數(shù)器的時(shí)鐘信號(hào),這一級(jí)一級(jí)串行連接起來(lái)就構(gòu)成了一個(gè)異步計(jì)數(shù)器。異步計(jì)數(shù)器與同步計(jì)數(shù)器不同之處就在于時(shí)鐘脈沖的提供方式,但是,由于異步計(jì)數(shù)器采用行波計(jì)數(shù),從而

25、使計(jì)數(shù)延遲增加,在要求延遲小的領(lǐng)域受到了很大限制。盡管如此,由于它的電路簡(jiǎn)單,仍有廣泛的應(yīng)用。</p><p>  二進(jìn)制計(jì)數(shù)器具有電路結(jié)構(gòu)簡(jiǎn)單、運(yùn)算方便等特點(diǎn),但是日常生活中我們所接觸的大部分都是十進(jìn)制數(shù),特別是當(dāng)二進(jìn)制數(shù)的位數(shù)較多時(shí),閱讀非常困難,還有必要討論十進(jìn)制計(jì)數(shù)器。在十進(jìn)制計(jì)數(shù)體制中,每位數(shù)都可能是0,1,2,…,9十個(gè)數(shù)碼中的任意一個(gè),且“逢十進(jìn)一”。根據(jù)計(jì)數(shù)器的構(gòu)成原理,必須由四個(gè)觸發(fā)器的狀態(tài)來(lái)表

26、示一位十進(jìn)制數(shù)的四位二進(jìn)制編碼。而四位編碼總共有十六個(gè)狀態(tài)。所以必須去掉其中的六個(gè)狀態(tài),至于去掉哪六個(gè)狀態(tài),可有不同的選擇。這里考慮去掉1010~1111六個(gè)狀態(tài),即采用8421BCD碼的編碼方式來(lái)表示一位十進(jìn)制數(shù)</p><p>  在十進(jìn)制運(yùn)算時(shí),當(dāng)相加二數(shù)之和大于9時(shí),便產(chǎn)生進(jìn)位??墒怯肂CD碼完成十進(jìn)制數(shù)運(yùn)算時(shí),當(dāng)和數(shù)大于9時(shí),必須對(duì)和數(shù)進(jìn)行加6修正。這是因?yàn)?采用BCD碼后,在二數(shù)相加的和數(shù)小于等于9時(shí)

27、,十進(jìn)制運(yùn)算的結(jié)果是正確的;而當(dāng)相加的和數(shù)大于9時(shí),結(jié)果不正確,必須加6修正后才能得出正確的結(jié)果。因此,當(dāng)?shù)谝淮谓魄笾禃r(shí),可將它看成每一級(jí)是一個(gè)4位二進(jìn)制加法器來(lái)執(zhí)行,就好像和是普通4位二進(jìn)制數(shù)一樣。設(shè)代表這樣得到的4位二進(jìn)制數(shù)和, 為輸出進(jìn)位,而代表正確的BCD和, 代表正確的進(jìn)位,那么</p><p><b>  當(dāng)時(shí), </b></p><p><b&g

28、t;  當(dāng)時(shí), </b></p><p>  顯然,當(dāng)或時(shí),輸出進(jìn)位。因此,可利用的狀態(tài)來(lái)產(chǎn)生所要求的校正因子。時(shí),校正因子為6;時(shí)校正因子為0。</p><p><b>  3 方案的比較</b></p><p><b>  3.1 反饋歸零法</b></p><p>  反饋歸零法是

29、利用清零端Cr修改計(jì)數(shù)周期。如果使用的計(jì)數(shù)器有直接復(fù)位端(也叫異步清零端),可采用反饋歸零法(也叫復(fù)位法),這是一種可將大模數(shù)計(jì)數(shù)器修改成小模數(shù)計(jì)數(shù)器經(jīng)常使用的一種方法。為了得到任意模數(shù)M的計(jì)數(shù)器,在M個(gè)計(jì)數(shù)脈沖作用下,將計(jì)數(shù)器所有的觸發(fā)器的輸出端通過(guò)一個(gè)與門(或與非門)去控制計(jì)數(shù)器的直接復(fù)位端,使計(jì)數(shù)器回到全“0”狀態(tài),從而變成了M進(jìn)制計(jì)數(shù)器。</p><p>  用反饋歸零法修改后的計(jì)數(shù)器,計(jì)數(shù)器計(jì)數(shù)到譯碼位

30、,即M狀態(tài)時(shí),才會(huì)歸零,于是在同一個(gè)時(shí)鐘周期內(nèi),先是M后是0。狀態(tài)M與全“0”合占一個(gè)時(shí)鐘周期,所以在觸發(fā)器的Q端可能會(huì)出現(xiàn)瞬間尖峰。這種修改計(jì)數(shù)周期的方法,它穩(wěn)定的最大數(shù)是M-1,計(jì)數(shù)器是從0計(jì)數(shù)到M-1,將集成計(jì)數(shù)器原有的編碼從0開(kāi)始保留一段,去掉最后的若干個(gè)狀態(tài)。由于給觸發(fā)器置0,一旦有一個(gè)觸發(fā)器從“1”置為“0”,譯碼位的清零作用消失。如果有某個(gè)觸發(fā)器動(dòng)作速度比較慢,有可能清零失敗而不能使全部觸發(fā)器歸零。解決的辦法是通過(guò)一個(gè)基本

31、RS觸發(fā)器,以保持清零電平,使觸發(fā)器全部清零。等到時(shí)鐘的另外半個(gè)周期到來(lái)時(shí),使基本RS觸發(fā)器置“1”,解除對(duì)觸發(fā)器的強(qiáng)迫置“0”。等到下一個(gè)時(shí)鐘來(lái)到時(shí),計(jì)數(shù)器進(jìn)入正常計(jì)數(shù)狀態(tài)。</p><p><b>  3.2級(jí)連法 </b></p><p>  對(duì)于計(jì)數(shù)長(zhǎng)度大于最大模數(shù)的計(jì)數(shù)器可用級(jí)連法來(lái)擴(kuò)展。所謂級(jí)連法就是把兩個(gè)以上的計(jì)數(shù)器串接起來(lái),從而得到一個(gè)預(yù)定的任意進(jìn)制的

32、計(jì)數(shù)器。例如用級(jí)連法構(gòu)成24進(jìn)制計(jì)數(shù)器,24可以分解成3*8, 4*6,因此可以有四種接法,現(xiàn)以8*3為例,即第一片(個(gè)位)接成8進(jìn)制計(jì)數(shù)器,第二片(十位)接成3進(jìn)制計(jì)數(shù)器。</p><p><b>  3.3方案比較</b></p><p>  級(jí)連法和反饋歸零法有以下3點(diǎn)不同之處:</p><p>  1)級(jí)連法的每一片都是獨(dú)立的,都接成某

33、一進(jìn)制的計(jì)數(shù)器,而反饋歸零法每一片都不獨(dú)立,除個(gè)位構(gòu)成十進(jìn)制計(jì)數(shù)器外,其余各片并不構(gòu)成固定模數(shù)的計(jì)數(shù)器。</p><p>  2)低位觸發(fā)高位的方式不一樣,反饋歸零法低位均接成十進(jìn)制計(jì)數(shù)器;而級(jí)連法低位并不接成十進(jìn)制計(jì)數(shù)器。</p><p>  3)顯示方式不一樣。</p><p>  級(jí)連法和反饋歸零法有以下相同之處 : 無(wú)論是反饋歸零法還是級(jí)連法,當(dāng)接成M>

34、;N的計(jì)數(shù)器時(shí),所接成的計(jì)數(shù)器從宏觀上看為異步計(jì)數(shù)器。</p><p>  所以本次采用級(jí)連法來(lái)實(shí)現(xiàn)。</p><p><b>  4方案的說(shuō)明</b></p><p>  八位二—十進(jìn)制異步計(jì)數(shù)器設(shè)計(jì)主要分兩部分。第一部分是計(jì)數(shù)器的設(shè)計(jì),第二部分是顯示部分的設(shè)計(jì)。設(shè)計(jì)流程如圖6所示:</p><p>  圖5八位二—十

35、進(jìn)制異步計(jì)數(shù)器的設(shè)計(jì)流程圖</p><p><b>  4.1計(jì)數(shù)器的設(shè)計(jì)</b></p><p>  用74LS390兩個(gè)宏連接成八位二—十進(jìn)制異步計(jì)數(shù)器。如圖7所示:</p><p>  圖6 74LS390兩個(gè)宏連接成計(jì)數(shù)器的結(jié)構(gòu)圖</p><p>  74LS390 TTL是雙十進(jìn)制計(jì)數(shù)器,它的引腳如圖8所示&l

36、t;/p><p>  圖7 74LS390的引腳圖</p><p>  其功能表如表1,表2所示</p><p>  表1 BCD 計(jì)數(shù)順序(注A) 表2 5-2 進(jìn)制計(jì)數(shù)順序(注B)</p><p>  H=高電平 L=低電平</p><p>  注A:對(duì)于BCD(十進(jìn))計(jì)數(shù),輸出QA 連到輸入

37、B 計(jì)數(shù)</p><p>  注B:對(duì)于5-2 進(jìn)制計(jì)數(shù),輸出QD 連到輸入A 計(jì)數(shù)</p><p>  進(jìn)行vhdl編程后能夠?qū)崿F(xiàn)指定的運(yùn)算,其仿真波形入圖8所示</p><p>  圖8計(jì)數(shù)器單元的仿真波形圖</p><p>  4.2 顯示部分的設(shè)計(jì)</p><p>  顯示部分主要用來(lái)對(duì)加法器的輸出進(jìn)行顯示。顯

38、示部分display主要由seg_sel、data_sel和seg_dec三個(gè)單元構(gòu)成,其結(jié)構(gòu)圖如圖9所示:</p><p>  圖9 display單元的電路結(jié)構(gòu)圖</p><p>  其中seg_sel單元由高頻時(shí)鐘控制,其輸出sel用來(lái)依次選擇3個(gè)7段數(shù)碼管中的一個(gè),并控制data_sel單元的輸出;data_sel由sel控制,用來(lái)選擇輸出right[7..4]、right[3.

39、.0]和cin中的一個(gè),即當(dāng)seg_sel選擇數(shù)碼管個(gè)位時(shí),data_sel同時(shí)選擇right[3..0]輸出;當(dāng)seg_sel選擇數(shù)碼管的十位時(shí),data_sel同時(shí)選擇right[7..4]輸出。而seg_sel主要用來(lái)把data_sel的輸出變換成7段數(shù)碼管可以接受的信號(hào),即起顯示譯碼的作用,其功能表如表3所示:</p><p>  表3seg_dec單元的功能表</p><p>

40、  對(duì)display單元設(shè)定輸入并仿真后,可得其仿真圖如圖10所示。</p><p>  圖10display單元電路的仿真波形圖</p><p>  4.3 兩部分電路的組合</p><p>  到此,計(jì)數(shù)器單元和顯示譯碼部分單元的設(shè)計(jì)和仿真都結(jié)束了,把兩部分的電路連接起來(lái)就組成了八位二—十進(jìn)制異步計(jì)數(shù)器,其電路結(jié)構(gòu)圖如圖12所示:</p><

41、;p>  圖11 counter和display單元結(jié)合后的結(jié)構(gòu)圖</p><p>  對(duì)該單元進(jìn)行仿真,得其仿真波形圖如圖13所示</p><p>  圖12組合單元的仿真波形</p><p>  通過(guò)波形圖可以看出設(shè)計(jì)的八位二—十進(jìn)制異步計(jì)數(shù)器計(jì)數(shù)正確,這次設(shè)計(jì)能夠滿足設(shè)計(jì)要求。</p><p><b>  5 總結(jié)與體會(huì)

42、</b></p><p>  VHDL語(yǔ)言主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語(yǔ)句外,VHDL的語(yǔ)言形式和描述風(fēng)格與句法是十分類似于一般的計(jì)算機(jī)高級(jí)語(yǔ)言。VHDL的程序結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱設(shè)計(jì)實(shí)體(可以是一個(gè)元件,一個(gè)電路模塊或一個(gè)系統(tǒng))分成外部(或稱可是部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實(shí)體的內(nèi)部功能和算法完成部分。在對(duì)一個(gè)設(shè)計(jì)實(shí)體定義了外部

43、界面后,一旦其內(nèi)部開(kāi)發(fā)完成后,其他的設(shè)計(jì)就可以直接調(diào)用這個(gè)實(shí)體。這種將設(shè)計(jì)實(shí)體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)計(jì)的基本點(diǎn)。 </p><p>  在設(shè)計(jì)編譯過(guò)程中遇到了不少問(wèn)題,有時(shí)編譯也不能一次成功,自己應(yīng)該注意檢查和修改,在此之中,學(xué)會(huì)了很多。想真正掌握一門語(yǔ)言,短時(shí)間是不大可能的,以后應(yīng)該經(jīng)常使用,VHDL語(yǔ)言會(huì)使以后的設(shè)計(jì)變的簡(jiǎn)單高效。</p><p><b>  致

44、 謝</b></p><p>  在這次設(shè)計(jì)中充分的利用了實(shí)驗(yàn)室良好的環(huán)境和資源,并得到了廣大同學(xué)的百忙中的幫助,我感到很高興,合作的感覺(jué)真的很好。在此我對(duì)同學(xué)表示衷心的感謝。</p><p>  特別感謝老師,她深刻的思想,嚴(yán)謹(jǐn)?shù)淖黠L(fēng),熱心的幫助,耐心的指導(dǎo)對(duì)我的報(bào)告的完成起到了舉足輕重的作用,將對(duì)我的人生產(chǎn)生重大的影響。</p><p><b&

45、gt;  參考文獻(xiàn)</b></p><p>  [1] 黃志強(qiáng)等. VHDL設(shè)計(jì)實(shí)例與仿真. 北京:機(jī)械工業(yè)出版社,2007</p><p>  [2] 潘松, 黃繼業(yè)編. EDA技術(shù)與VHDL. 北京:清華大學(xué)出版社,2007</p><p>  [3] 雷伏容編. VHDL電路設(shè)計(jì). 北京:清華大學(xué)出版社,2006</p><p&

46、gt;  [4] 張凱, 林偉編. VHDL實(shí)例剖析. 北京:國(guó)防工業(yè)出版社,2004 </p><p>  [5] 康華光主編. 電子技術(shù)基礎(chǔ):模擬部分. 北京:高等教育出版社,2006</p><p>  [6] 劉光祜, 饒妮妮編. 模擬電路基礎(chǔ). 成都:電子科技大學(xué)出版社 ,2001</p><p>  [7] Mark Zwolinski. Digital

47、 System Design with VHDL. Prentice Hall,2003</p><p><b>  源程序附錄</b></p><p>  1)data_sel單元的程序</p><p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;<

48、/p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY data_sel IS</p><p>  PORT( sel: IN STD_LOGIC_VECTOR(2 DOWNTO 0);</p><p>  q: IN STD_LOGIC_VECTOR(7 DOWNTO 0);<

49、/p><p>  dout: OUT STD_LOGIC_VECTOR(3 DOWNTO 0));</p><p>  END data_sel;</p><p>  ARCHITECTURE behavier OF data_sel IS </p><p><b>  BEGIN</b></p><p&

50、gt;  PROCESS(sel)</p><p><b>  BEGIN</b></p><p>  CASE sel IS</p><p>  WHEN "000"=>dout<=q(3)&q(2)&q(1)&q(0);</p><p>  WHEN OTHER

51、S=>dout<=q(7)&q(6)&q(5)&q(4);</p><p><b>  END CASE;</b></p><p>  END PROCESS;</p><p>  END behavier;</p><p>  seg_dec單元的程序</p><

52、p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY seg_dec IS</p><p>  PORT ( segin: IN STD_LOGIC_VECT

53、OR(3 DOWNTO 0);</p><p>  segout: OUT STD_LOGIC_VECTOR(6 DOWNTO 0));</p><p>  END seg_dec;</p><p>  ARCHITECTURE behavier OF seg_dec IS</p><p><b>  BEGIN</b>

54、</p><p>  PROCESS(segin)</p><p><b>  BEGIN</b></p><p>  CASE segin IS</p><p>  WHEN "0000"=>segout<="1111110";</p><p>

55、;  WHEN "0001"=>segout<="0110000";</p><p>  WHEN "0010"=>segout<="1101101";</p><p>  WHEN "0011"=>segout<="1111001";

56、</p><p>  WHEN "0100"=>segout<="0110011";</p><p>  WHEN "0101"=>segout<="1011011";</p><p>  WHEN "0110"=>segout<=

57、"0011111";</p><p>  WHEN "0111"=>segout<="1110000";</p><p>  WHEN "1000"=>segout<="1111111";</p><p>  WHEN OTHERS=>s

58、egout<="1111011";</p><p><b>  END CASE;</b></p><p>  END PROCESS;</p><p>  END behavier;</p><p>  seg_sel單元的程序</p><p>  LIBRARY IE

59、EE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY seg_sel IS</p><p>  PORT( clk,reset: IN STD_LOGIC;</p><p&

60、gt;  sel: OUT STD_LOGIC_VECTOR(2 DOWNTO 0));</p><p>  END seg_sel;</p><p>  ARCHITECTURE behavier OF seg_sel IS</p><p><b>  BEGIN</b></p><p>  PROCESS(clk,r

61、eset)</p><p>  VARIABLE a:STD_LOGIC_VECTOR(2 DOWNTO 0):="000";</p><p><b>  BEGIN</b></p><p>  IF(reset='0') THEN</p><p><b>  a:=&quo

62、t;000";</b></p><p>  ELSIF(clk'EVENT AND clk='1') THEN</p><p><b>  a:=a+1;</b></p><p>  IF (a="010") THEN</p><p><b> 

63、 a:="000";</b></p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p><b>  sel<=a;</b></p><p>  END PROCESS;</

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論