freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

等精度數(shù)字頻率計(jì)的與仿真的畢業(yè)論文(編輯修改稿)

2025-07-24 16:50 本頁面
 

【文章內(nèi)容簡介】 類型、子程序或數(shù)據(jù)對象,使之適用于更一般的訪問和調(diào)用范圍。程序包的內(nèi)容主要由常數(shù)說明、VHDL數(shù)據(jù)類型說明、元件定義、子程序四種基本結(jié)構(gòu)組成。(5)配置 配置(CONFIGURATION)可利用其從多個(gè)結(jié)構(gòu)體中每次為設(shè)計(jì)實(shí)體指定一個(gè)結(jié)構(gòu)體,通過比較每次仿真的結(jié)果,選出性能最佳的結(jié)構(gòu)體。即配置主要是為頂層設(shè)計(jì)實(shí)體指定結(jié)構(gòu)體,或?yàn)閰⑴c例化的元件實(shí)體指定所希望的結(jié)構(gòu)體,以層次方式來對元件例化作結(jié)構(gòu)配置。 VHDL的語法(1)VHDL的語言要素是編程語句的基本要素,主要包含VHDL的文字規(guī)則、數(shù)據(jù)對象、數(shù)據(jù)類型、類型轉(zhuǎn)換、操作符等規(guī)定。(2)VHDL的描述語句包括一系列順序語句及并行語句兩大基本描述語句。順序語句只能出現(xiàn)在進(jìn)程和子程序中,仿真執(zhí)行順序與其書寫順序基本一致。流程控制語句(IF、CASE、LOOP、NEXT、EXIT)、等待語句(WAIT)、返回語句(RETURN)和空操作語句(NULL)都是順序語句。并行語句可以直接構(gòu)成結(jié)構(gòu)體,是最具有VHDL特色的語句 。并行語句包括進(jìn)行語句(PROCESS)、條件信號賦值語句(WHENELSE)、選擇信賦值語句(WITHSELECTWHEN)、塊語句(BLOCK)、元件例化語句、生成語句(GENERATE)等。子程序是具有某一特定功能的VHDL程序模塊,利用子程序能夠有效地完成重復(fù)性的工作。子程序有兩種類型:函數(shù)(FUNCTION)和過程(PROCEDURE),它們均能被重載。斷言語句(ASSERT)和報(bào)告語句(REPORT)用于仿真時(shí)給出的一些信息。屬性描述語句用于對信號或其他項(xiàng)目的多種屬性進(jìn)行檢測或測試。 3 頻率計(jì)系統(tǒng)方案的分析 根據(jù)在概述中,對本設(shè)計(jì)原理的分析,在本章中將詳細(xì)說明對于第一章中方案一的設(shè)計(jì)思路。 時(shí)鐘模塊的方案 在本次頻率計(jì)的設(shè)計(jì)仿真中,需要對計(jì)數(shù)模塊提供高電平為1s 的基準(zhǔn)周期,用于計(jì)數(shù)在此期間內(nèi)被測方波信號的脈沖個(gè)數(shù),最終得到被測信號頻率的目的。 根據(jù)此需求,即可將給定的輸入系統(tǒng)時(shí)鐘經(jīng)過若干合適的分頻均可得到所需的基準(zhǔn)時(shí)鐘信號。如將1Hz經(jīng)二分頻,2Hz經(jīng)四分頻,4Hz經(jīng)八分頻,等依次類推,均可實(shí)現(xiàn)此功能。方案一:。如:library ieee。use 。use 。use 。entity div_clk is port(clk:in std_logic。 clk1:out std_logic)。end div_clk。architecture div_clk of div_clk is signal clk_counter:integer range 0 to 1。 begin process(clk) 時(shí)鐘二分頻,高電平脈寬為1s begin if(clk39。event and clk=39。139。)then if(clk_counter=1)then clk1=39。139。 clk_counter=0。 else clk_counter=clk_counter+1。 clk1=39。039。 end if。 end if。 end process。 end div_clk。其例化后的結(jié)構(gòu)如下:圖31 時(shí)鐘模塊方案一的例化結(jié)構(gòu)圖仿真的波形如下圖所示:圖32 時(shí)鐘模塊方案一的仿真結(jié)果根據(jù)上圖所示,其能正確滿足所需設(shè)計(jì)要求。 方案二:。由以上理論分析可知,上述兩方案均可實(shí)現(xiàn)要求,并且經(jīng)過實(shí)現(xiàn)仿真驗(yàn)證,二者都滿足設(shè)計(jì)需要。但由于方案一比較普遍,不能突出本設(shè)計(jì)的與眾不同,故采取方案二。 換檔模塊的方案 本設(shè)計(jì)加入了可根據(jù)實(shí)際需求選擇不同檔位的功能,使最終的頻率顯示分為100、1000檔的不同選擇。方案一:將時(shí)鐘信號倍頻,如將1s的基準(zhǔn)信號依次進(jìn)行1倍頻、10倍頻、100倍頻、1000倍頻,分別得到1s、。在此時(shí)鐘的高電平計(jì)數(shù)周期下,得到相應(yīng)的被測信號頻率的實(shí)際顯示數(shù)值,然后需要對其乘以相應(yīng)的倍頻倍數(shù),100、1000。進(jìn)行實(shí)現(xiàn)此設(shè)計(jì)要求。方案二:將被測信號分頻,如將1s的被測信號依次進(jìn)行1分頻、10分頻、100分頻、1000分頻,分別得到1s、10s、100s、1000s的分頻信號。在1s的高電平計(jì)數(shù)時(shí)鐘周期下,得到相應(yīng)的被測信號頻率的實(shí)際顯示數(shù)值,然后再對其分別擴(kuò)大相應(yīng)的分頻位數(shù),100、1000。同樣能滿足所需功能。由于對在數(shù)字電路中,對分頻的完成比對倍頻的完成較易實(shí)現(xiàn),在能同樣達(dá)到設(shè)計(jì)要求的情況下,選擇方案二,通過較簡單的分頻思想來實(shí)現(xiàn)此功能的設(shè)計(jì)要求。 計(jì)數(shù)模塊的方案整個(gè)頻率計(jì)的設(shè)計(jì)中,最核心的模塊即為對被測信號的計(jì)數(shù)模塊。在一定的計(jì)數(shù)時(shí)間(可選擇為1s的高電平)內(nèi),通過計(jì)數(shù)對被測信號脈沖的個(gè)數(shù),并以四位(千、百、十、個(gè)位),且每位均為十進(jìn)制的數(shù)值方式輸出。方案一:將頻率計(jì)的四位十進(jìn)制計(jì)數(shù)過程分別用四個(gè)相同的單個(gè)十進(jìn)制計(jì)數(shù)器實(shí)現(xiàn),即首個(gè)計(jì)數(shù)器的進(jìn)位輸出端與次個(gè)計(jì)數(shù)器的時(shí)鐘信號輸入端相連,完成逐級計(jì)數(shù)。如:LIBRARY IEEE。USE 。USE 。ENTITY CNT10 IS PORT(CLK,RST,EN:IN STD_LOGIC。 CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 COUT:OUT STD_LOGIC)。END CNT10。ARCHITECTURE behave OF CNT10 ISBEGIN PROCESS(CLK,RST,EN) VARIABLE CQI:STD_LOGIC_VECTOR(3 DOWNTO 0)。 BEGIN IF RST=39。139。THEN CQI:=(OTHERS=39。039。)。 ELSIF CLK39。EVENT AND CLK=39。139。THEN IF EN=39。139。THEN IF CQI1001THEN CQI:=CQI+1。 ELSE CQI:=(OTHERS=39。039。)。 END IF。 END IF。 END IF。 IF CQI=1001THEN COUT=39。139。 ELSE COUT=39。039。 END IF。 CQ=CQI。 END PROCESS。END behave。其例化元件如下:圖33 計(jì)數(shù)模塊方案一的例化結(jié)構(gòu)圖整體電路的連接如下圖所示:圖34 計(jì)數(shù)模塊方案一的仿真結(jié)果方案二:將能夠?qū)崿F(xiàn)四位十進(jìn)制計(jì)數(shù)的模塊用一段整體的硬件描述語言實(shí)現(xiàn),直接完成所需的計(jì)數(shù)功能。通過以上兩個(gè)方案的比較,在均能實(shí)現(xiàn)相同設(shè)計(jì)要求的情況下,方案一的單一模塊簡單,但總體連接就稍顯麻煩,方案二雖硬件描述語言相對復(fù)雜,但其例化后的結(jié)構(gòu)卻簡潔,使得后續(xù)電路的連接也較易方便。故本設(shè)計(jì)中選擇方案二的思路。4 功能模塊的VHDL描述整個(gè)系統(tǒng)通過元件例化來實(shí)現(xiàn),共包括五個(gè)功能模塊及頂層文件,五個(gè)模塊程序分別為分頻程序、位選程序、時(shí)鐘程序、計(jì)數(shù)程序和顯示程序。 分頻程序library ieee。use 。entity fp isport(fb1:in std_logic。 ——輸入端口 ao,bo,co,do:buffer std_logic)。 ——輸出端口end fp。architecture bhv of fp isbeginao=fb1。 ——輸出的ao與輸入信號相同process(fb1) ——以輸入信號為敏感信號variable nu,nu1,nu2:integer range 0 to 1000。beginif(fb139。event and fb1=39。139。)then ——遇輸入信號脈沖的上升沿計(jì)數(shù) nu:=nu+1。nu1:=nu1+1。nu2:=nu2+1。if(nu=5)then bo=not bo。 nu:=0。end if。 ——完成對被測信號的10分頻,并由bo輸出if(nu1=50)then co=not co。 nu1:=0。end if。 ——完成對被測信號的100分頻,并由co輸出if(nu2=500)then do=not do。 nu2:=0。end if。 ——完成對被測信號的1000分頻,并由do輸出end if。end process。end bhv。 位選程序library ieee。use 。entity wx isport(ai,bi,ci,di,rst:in std_logic。 k1,k2,k3,k4:in std_logic。 g1,g2,g3,g4:out std_logic。 fb0:out std_logic)。 ——定義輸入輸出信號end wx。architecture bhv of wx isbegin process(rst,k1,k2,k3,k4,ai,bi,ci,di)beginif(rst=39。139。)then g1=39。039。g2=39。039。g3=39。039。g4=39。039。 fb0=39。039。 ——當(dāng)為系統(tǒng)的總體復(fù)位時(shí),所有的輸出均為低電平,無輸出elsif(k1=39。139。)then g1=39。139。g2=39。039。g3=39。039。g4=39。039。 fb0=ai。 ——當(dāng)選擇1檔位時(shí),即對被測信號1分頻,使輸出信號與ai一致elsif(k2=39。139。)then g1=39。039。g2=39。139。g3=39。039。g4=39。039。 fb0=bi。 ——當(dāng)選擇2檔位時(shí),即對被測信號10分頻,使輸出信號與bi一致elsif(k3=39。139。)then g1=39。039。g2=39。039。g3=39。139。g4=39。039。 fb0=ci。 ——當(dāng)選擇3檔位時(shí),即對被測信號100分頻,使輸出信號與ci一致elsif(k4=39。139。)then g1=39。039。g2=39。039。g3=39。039。g4=39。139。 fb0=di。 ——當(dāng)選擇4檔位時(shí),即對被測信號1000分頻,使輸出信號與di一致end if。end process。end bhv。 時(shí)鐘程序library ieee。use 。entity sz isgeneric (v:integer:=8)。port(clki:in std_logic。 clko:buffer std_logic)。 ——定義輸入輸出變量end sz。architecture bhv of sz isbegin process(clki)variable count:integer range 0 to v。beginif(clki39。event and clki=39。139。)then ——在輸入信號的上升沿出現(xiàn)時(shí)開始計(jì)數(shù) count:=count+1。 if(count=v)then clko=not clko。 count:=0。 end if。 ——完成對輸入信號的16分頻end if。end process。end bhv。 計(jì)數(shù)程序library ieee。use 。use 。entity countt is port(CP,clk1:in std_logic。 C:out std_logic。 Q1,Q2,Q3,Q4:out std_logic_vector(3 downto 0))。 ——定義輸入輸出變量end countt。 architecture countt of countt is signal t_1:std_logic_vector(3 downto 0)。 signal t_10:std_logic_vector(3 downto 0)。 signal t_100:std_logic_vector(3 downto 0)。 signal t_1000:std_logic_vector(3 downto 0)。 signal t:std_logic。 begin process(CP,clk1) ——以輸入信號為進(jìn)程的敏感變量 begin if(CP39。event and CP=39。139。)then ——在輸入信號的上升沿出現(xiàn)時(shí)開始計(jì)數(shù) if(clk1=39。139。)then if(t_1=1001)then
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1