![VHDL語(yǔ)言的層次化設(shè)計(jì)_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/1adbee8e-f967-4bec-9b82-5ed99c82e15b/1adbee8e-f967-4bec-9b82-5ed99c82e15b1.gif)
![VHDL語(yǔ)言的層次化設(shè)計(jì)_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/1adbee8e-f967-4bec-9b82-5ed99c82e15b/1adbee8e-f967-4bec-9b82-5ed99c82e15b2.gif)
![VHDL語(yǔ)言的層次化設(shè)計(jì)_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/1adbee8e-f967-4bec-9b82-5ed99c82e15b/1adbee8e-f967-4bec-9b82-5ed99c82e15b3.gif)
![VHDL語(yǔ)言的層次化設(shè)計(jì)_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/1adbee8e-f967-4bec-9b82-5ed99c82e15b/1adbee8e-f967-4bec-9b82-5ed99c82e15b4.gif)
![VHDL語(yǔ)言的層次化設(shè)計(jì)_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-1/14/1adbee8e-f967-4bec-9b82-5ed99c82e15b/1adbee8e-f967-4bec-9b82-5ed99c82e15b5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、狀態(tài)機(jī)的優(yōu)化設(shè)計(jì)l不同的編程風(fēng)格會(huì)有不同的效率,或使速度提高,或使占用資源減少。l在有些情況下需要在速度和占用資源上作出妥協(xié)。有些設(shè)計(jì)需要很多的觸發(fā)器,較少的乘積項(xiàng),則用FPGA實(shí)現(xiàn)合適。有些設(shè)計(jì)需要較少觸發(fā)器,較多的乘積項(xiàng),則采用CPLDl有時(shí)最優(yōu)化設(shè)計(jì)并不是設(shè)計(jì)系統(tǒng)所最關(guān)注的,而是怎樣縮短設(shè)計(jì)時(shí)間,提高代碼的可讀性狀態(tài)機(jī)的優(yōu)化設(shè)計(jì)N ext -St at el ogi cSt at eRegi st erO ut PutLogi cI nput傳統(tǒng)的狀態(tài)機(jī)設(shè)計(jì)中輸出與狀態(tài)關(guān)系狀態(tài)機(jī)的優(yōu)化設(shè)計(jì)使輸出的就是用于表示狀態(tài)的寄存器輸出N ext -St at el ogi cSt at eRegi
2、 st erI nputO ut put1、由于狀態(tài)寄存器不經(jīng)過組合邏輯直接作為輸出,可達(dá)到更快的速度。2、但程序相對(duì)來說變得復(fù)雜狀態(tài)機(jī)的優(yōu)化設(shè)計(jì)stateO1 O2Idle00decision00read100read201Read311Read411write00stateO1O2st1St2Q0Q1Q2Q3Idle0000Decision0001Read10010Read20100Read31000Read41100write0011最簡(jiǎn)化狀態(tài)經(jīng)過轉(zhuǎn)換后的狀態(tài)機(jī)圖One-hot Encodingl用n個(gè)觸發(fā)器代表狀態(tài)機(jī)的n個(gè)狀態(tài),每個(gè)狀態(tài)都只會(huì)有一個(gè)觸發(fā)器為1。l優(yōu)點(diǎn):把當(dāng)前狀態(tài)機(jī)進(jìn)行譯
3、碼得到輸出信號(hào)時(shí),或者由當(dāng)前狀態(tài)轉(zhuǎn)變到下一個(gè)狀態(tài)時(shí),需要的組合邏輯更少l缺點(diǎn):需要更多的觸發(fā)器Moore狀態(tài)機(jī)和Mealy狀態(tài)機(jī)lMoore狀態(tài)機(jī)的輸出只與當(dāng)前狀態(tài)有關(guān)lMealy狀態(tài)機(jī)的輸出與當(dāng)前狀態(tài)機(jī)及當(dāng)前輸入信號(hào)有關(guān)N ext -St at el ogi cSt at eRegi st erI nputO ut putO ut putLogi c層次化設(shè)計(jì)l詳細(xì)地定義設(shè)計(jì)中的模塊,使多個(gè)設(shè)計(jì)者之間并行工作l對(duì)于每個(gè)模塊,便于減少錯(cuò)誤和Debugl可對(duì)每個(gè)模塊單獨(dú)仿真l分階段完成設(shè)計(jì)庫(kù)(Library)l已編譯的數(shù)據(jù)集合l存放包集合、實(shí)體、構(gòu)造體、和配置的定義l庫(kù)的種類- VHDL 系統(tǒng)庫(kù)
4、- IEEE標(biāo)準(zhǔn)庫(kù)- STD標(biāo)準(zhǔn)庫(kù)- VHDL工作庫(kù)-WORK庫(kù)- 存放當(dāng)前正在設(shè)計(jì)的編譯結(jié)果,比如其他成員的設(shè)計(jì)結(jié)果- 廠家自定義庫(kù)- Max+PlusII中有l(wèi)pm庫(kù),定義了許多數(shù)字電路基本元件包(Package)l在VHDL程序的Architecture中,定義的Type、Component、Function或其他的聲明對(duì)于其他設(shè)計(jì)文件來說都是不可見的。lPackage中定義的這些對(duì)于其他設(shè)計(jì)這是可見的。lUse library_name.package_name.iteml如果想Package中所有定義都可見,則item用all來代替包(Package)LIBRARY ieee;USE
5、 ieee.std_logic_1164.ALL;PACKAGE ram_constants IS constant width : integer :=8;END ram_constants; LIBRARY ieee;USE ieee.std_logic_1164.ALL;LIBRARY work;USE work.ram_constants.ALL;元件(Component)l 在上層設(shè)計(jì)文件中,下層的設(shè)計(jì)以Component的形式存在LIBRARY ieee;USE ieee.std_logic_1164.ALL;PACKAGE my_package IS Component dflo
6、p is port( data_in,clock: in std_logic; data_out : out std_logic); end component;END my_package; LIBRARY ieee;USE ieee.std_logic_1164.ALL;LIBRARY work;USE work.my_package.ALL;Entity my_design is port( data_in,clock: in std_logic; data_out : out std_logic);End my_design;Architecture a of my_design is
7、Begin U1: dflop port map(d=data_in, clk = clock, q =data_out);End a;函數(shù)(Function)- 一般用于計(jì)算、類型轉(zhuǎn)換、操作符重載- 只能處理組合邏輯- 參數(shù)均為輸入模式- RETURN語(yǔ)句返回結(jié)果- 內(nèi)部語(yǔ)句順序執(zhí)行- 可以在Package、process、architecture中定義或說明- 能用在process中的語(yǔ)句都可以用在函數(shù)中- 函數(shù)中不能聲明新的Signalarchitecture behave of test isfunction maxval(in1,in2:std_logic_vector)return
8、 std_logic_vector isVariable temp:std_logic_vector(in1length-1 downto 0);beginif in1in2 then temp:=in1; else temp:=in2;end ifreturn temp;end maxval;begin C=maxval(A,B);end behave;函數(shù)(Function)-類型轉(zhuǎn)換Function bv2I(bv:bit_vector) return integer is Variable result, abit : integer := 0; begin for I in bvlo
9、w to bvhigh loop abit := 0; if(bv(I) = 1) then abit := 2 * (I bvlow); end if; result := result + abit; end loop;return (result);函數(shù)-代替Component只能代替只有一個(gè)輸出的Component,且其中不允許有時(shí)序邏輯Function inc_bv (a: bit_vector) return bit_vector is variable s : bit_vector(arange); variable carry : bit;Begin carry := 1; f
10、or I in alow to ahigh loop s(I) := a(I) xor carry; carry := a(I) and carry; end loop;End inc_bv;過程(Procedure)- 可以有多個(gè)返回值- 能處理組合邏輯和時(shí)序邏輯- 內(nèi)部語(yǔ)句順序執(zhí)行- 可以在Package、architecture中定義或說明- 能用在process中的語(yǔ)句都可以用在過程中architecture behave of test isprocedure increment( signal Clk, din:std_logic; signal dout: out std_log
11、ic) isBegin if(clkevent and clk=1) then dout=din+1; End if;end increment;begin increment(A,CLK,C);end behave;實(shí)驗(yàn)報(bào)告的內(nèi)容l跑表功能精度為1/100秒最長(zhǎng)時(shí)長(zhǎng)為1個(gè)小時(shí)2輸入按鍵,1個(gè)1KHz的時(shí)鐘6個(gè)數(shù)碼管顯示l報(bào)告要求系統(tǒng)功能,模塊功能詳細(xì)描述每個(gè)模塊實(shí)現(xiàn)基本思想以及關(guān)鍵代碼每個(gè)模塊的特征仿真波形心得體會(huì)lFang_,5月15日之前交結(jié)構(gòu)組成鍵盤輸入電路控制電路時(shí)鐘分頻電路時(shí)間計(jì)數(shù)器Key1_i nKey2_i nKey1Key2100HzResetEnabl eRef r esh
12、跑表功能框圖控制模塊S1:1、Key1按下,將計(jì)數(shù)清0,保持狀態(tài)不變 2、Key2按下,將計(jì)數(shù)清0,并重新開始計(jì)數(shù),狀態(tài)至S2S2:1、Key1按下,顯示停止,但計(jì)數(shù)繼續(xù),狀態(tài)至S3 2、Key2按下,顯示停止,計(jì)數(shù)停止,狀態(tài)至S1S3:1、Key1按下,顯示繼續(xù)為當(dāng)前時(shí)間,計(jì)數(shù)繼續(xù),回到S2狀態(tài) 2、Key2按下,刷新顯示當(dāng)前時(shí)間,計(jì)數(shù)繼續(xù),保持S3狀態(tài)控制模塊l輸入按鍵Key1、Key2時(shí)鐘1KHzl輸出計(jì)數(shù)清除信號(hào)Reset計(jì)數(shù)使能信號(hào)Enable顯示刷新信號(hào)Refresh按鍵輸入模塊1、消除抖動(dòng),提示用RS觸發(fā)器的特性來實(shí)現(xiàn)2、脈沖整形按鍵輸入要作為控制模塊中的信號(hào)輸入,因此脈沖寬度要限制狀態(tài)機(jī)轉(zhuǎn)換時(shí)鐘的一個(gè)周期。時(shí)鐘分頻模塊l輸入為1KHzl輸出100Hz,作為跑表計(jì)數(shù)器的時(shí)鐘,經(jīng)過10分頻電路得到l消除抖動(dòng)需要的時(shí)鐘計(jì)數(shù)器模塊l輸入:100Hz的時(shí)鐘計(jì)數(shù)清除信號(hào)Reset計(jì)數(shù)使能信號(hào)Enabl
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 木工承包合同內(nèi)腳手架
- 啤酒銷售合同書
- 農(nóng)村住房安全保障工程實(shí)施指南
- 網(wǎng)站維護(hù)與SEO優(yōu)化作業(yè)指導(dǎo)書
- 投資理財(cái)與風(fēng)險(xiǎn)防范作業(yè)指導(dǎo)書
- 2025年甘肅貨運(yùn)從業(yè)資格證題目答案
- 2025年三明道路貨運(yùn)駕駛員從業(yè)資格證考試題庫(kù)完整
- 2025年貨車從業(yè)資格證答題軟件
- 2024-2025學(xué)年四年級(jí)語(yǔ)文上冊(cè)第二單元明月4走月亮作業(yè)設(shè)計(jì)北師大版
- 個(gè)人前臺(tái)自我總結(jié)
- 初一英語(yǔ)閱讀理解100篇七年級(jí)上冊(cè)英語(yǔ)閱讀理解及答案
- 2024年廣東省深圳市中考道德與法治試題卷
- 腫瘤性發(fā)熱及護(hù)理
- 光伏工程施工組織設(shè)計(jì)
- DB4101-T 121-2024 類家庭社會(huì)工作服務(wù)規(guī)范
- 五年級(jí)上冊(cè)小數(shù)四則混合運(yùn)算練習(xí)100道及答案
- 【財(cái)務(wù)共享服務(wù)模式探究的文獻(xiàn)綜述4000字】
- 敬語(yǔ)專項(xiàng)練習(xí)-高考日語(yǔ)復(fù)習(xí)
- 窗簾工程招標(biāo)書
- 手術(shù)室術(shù)中物品清點(diǎn)不清的應(yīng)急預(yù)案演練流程及劇本
- 壓力管道安全技術(shù)監(jiān)察規(guī)程-工業(yè)管道
評(píng)論
0/150
提交評(píng)論