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

正文內(nèi)容

基于fpga控制的數(shù)字頻率計(jì)設(shè)計(jì)論文含程序、仿真圖(編輯修改稿)

2025-02-14 14:58 本頁面
 

【文章內(nèi)容簡介】 tlow=0。end//end//always@(negedge en)//beginif(!en)beginif((cout4==0)amp。amp。(cout3=9)amp。amp。(cout2=9)amp。amp。(cout1=9)) begin tlow=1。lock=0。endelse if(tover) begin lock=0。tlow=0。endelse begin lock=1。tlow=0。 endif((cout4==0)amp。amp。(cout3==0)amp。amp。(cout2==0)amp。amp。(cout1==0)) begin tlow=0。tover=0。lock=0。endendendendmodule分頻器是本系統(tǒng)最重要的功能部件之一,由它產(chǎn)生閘門電平和控制器、計(jì)數(shù)器的控制脈沖。它有四個(gè)輸入:標(biāo)準(zhǔn)時(shí)鐘脈沖輸入CLK102溢出處理觸發(fā)TRIGGER、復(fù)位觸發(fā)RESET和檔位狀態(tài)STAT[1..0]。三個(gè)輸出:計(jì)數(shù)閘門電平FGATE、控制器工作脈沖FTRIGGER、計(jì)數(shù)器控制器清零脈沖FCLR。:Clk count_clkResetSelect[] 單個(gè)分頻器模塊分頻器采用計(jì)數(shù)分頻的辦法,即使用一內(nèi)部寄存器,在時(shí)鐘脈沖上升沿加一計(jì)數(shù),當(dāng)計(jì)到一定值時(shí)就改變FGATE的狀態(tài),從而達(dá)到分頻的目的。由于輸入標(biāo)準(zhǔn)時(shí)鐘脈沖為1024Hz,約為20,誤差很大,這樣第三、四檔公用一個(gè)閘門電平,同時(shí)在計(jì)數(shù)和鎖存時(shí)要做相應(yīng)的移位,因?yàn)闇y量第四檔頻率時(shí)有4位有效數(shù)字。要得到10s、1s、分別要計(jì)數(shù)到1021024和103。從組成圖中也可以看出分頻器由這三種計(jì)數(shù)器并聯(lián)組成,通過3個(gè)4選1選擇器(一個(gè)74LS153和一個(gè)4_1MUX),由STAT[1..0]選擇使用的FGATE、FCLR和FTRIGGER[7]。 輸出FGATE送計(jì)數(shù)器EN作為計(jì)數(shù)器使能閘門電平。FTRIGGER送控制器TRIGGER作為控制器工作脈沖。FCLR送計(jì)數(shù)器CLRN作為每次計(jì)數(shù)開始前的清零信號,送控制器CLR作為控制器內(nèi)部觸發(fā)信號。FGATE由高變低,即計(jì)數(shù)結(jié)束時(shí),F(xiàn)TRIGGER信號才產(chǎn)生,這時(shí)控制器開始工作,判斷計(jì)數(shù)是否有效,然后發(fā)出一系列指令直到FCLR信號到來,計(jì)數(shù)器清零,準(zhǔn)備進(jìn)入下一次計(jì)數(shù)。采用這樣的像CPU時(shí)鐘一樣的信號的原因,一方面,處理計(jì)數(shù)數(shù)據(jù)只用了很短的時(shí)間,兩次測量之間時(shí)間很短,加快了頻率計(jì)的響應(yīng)速度;另一方面,解決了異步時(shí)序邏輯的競爭,使系統(tǒng)工作在異步時(shí)序狀態(tài)下,既保持了很高的響應(yīng)速度,又有很高的穩(wěn)定性。為了解決在第一檔向第二檔轉(zhuǎn)換時(shí)等待時(shí)間過長的問題,分頻器由TRIGGER端口接收一個(gè)計(jì)數(shù)器的溢出脈沖,當(dāng)計(jì)數(shù)器溢出時(shí),在脈沖上升沿將內(nèi)部計(jì)數(shù)器置為FGATE結(jié)束高電平的最后一個(gè)計(jì)數(shù)器值。這樣,由于控制器此時(shí)溢出已被置位,馬上就能進(jìn)入一次換檔處理,保證了換檔的快速。另外,RESET信號上升沿到來時(shí),計(jì)數(shù)器被置為零,這樣就可以馬上重新開始計(jì)數(shù),實(shí)現(xiàn)了復(fù)位的效果。分頻器單元FREQCER_10240的源程序如下:module DivFreq(clk,reset,select,count_clk)。output count_clk。input clk,reset。input [1:0] select。reg count_clk。reg [23:0] num。//always @ (posedge clk) //begin if(reset) count_clr=1。 // else count_clr=0。 //endalways @ (posedge clk ) begin if(!reset) case(select) 239。b00: begin if(num==499) begin count_clk=~count_clk。 num=0。 end else num=num+1。 end 239。b01: begin if(num==4999) begin count_clk=~count_clk。 num=0。 end else num=num+1。 end 239。b11: begin if(num==49999) begin count_clk=~count_clk。 num=0。 end else num=num+1。 end default: begin if(num==4999) begin count_clk=~count_clk。 num=0。 end else num=num+1。 end endcase else begin num=0。 count_clk=1。 end endendmodule 如果計(jì)數(shù)器輸出直接與譯碼器相連接,那么在計(jì)數(shù)過程中輸出端則隨輸入脈沖數(shù)的增加而不斷跳變,那么顯示數(shù)碼管則也會(huì)不斷閃爍跳變,讓人不能看到穩(wěn)定的輸出,設(shè)鎖存器后,則不再跳變,便可清晰讀出計(jì)數(shù)結(jié)果。由control控制模塊產(chǎn)生的latch信號來提供鎖存脈沖。:Lock Cout1[]Cin[] 單個(gè)鎖存器模塊這模塊實(shí)現(xiàn)了對六位計(jì)數(shù)結(jié)果和溢出信號over的鎖存功能。程序很簡單,即鎖存信號的上升沿來時(shí)送數(shù),其它時(shí)候則保持不變。鎖存器有八個(gè)輸入:時(shí)鐘脈沖CLK,置位端SET,復(fù)位端RESET,4個(gè)4bit十進(jìn)制BCD輸入IN1[3..0]~I(xiàn)N4[3..0],檔位狀態(tài)STAT[1..0]。五個(gè)輸出:5個(gè)5bit十進(jìn)制BCD輸出。組成圖見附圖2左上部分。由一橋接器BRIDGE和4個(gè)LATCH_4_11個(gè)LATCH_4_1鎖存器組成[8]。 橋接器BRIDGE主要是為了數(shù)據(jù)對齊。因?yàn)?兩檔使用同一個(gè)分頻器,故測量第四檔時(shí)有4位有效數(shù)字,通過橋接器轉(zhuǎn)換后就能保證數(shù)據(jù)有效數(shù)字最高位與鎖存器第五位對齊。: 輸入輸出功能表STAT = 0 , 1 , 2STAT = 3OUT5= IN3= IN4OUT4= IN2= IN3OUT3= IN1= IN2OUT20= IN1: 橋接器功能表CLK(IN)SET(IN)RESET(IN)OUT00= IN01010F000F鎖存器單元LATCH_4_1和LATCH_4_16均為4bit鎖存器,其唯一不同在于置位時(shí),LATCH_4_16鎖存器內(nèi)容置為F,另一個(gè)置1。下面將LATCH_4_16的功能表和源程序列出:/鎖存模塊module Lock(lock,cin,cout)。input lock。input [3:0]cin。output [3:0]cout。reg [3:0]cout。always@(posedge lock)beginif(lock) cout=cin。endendmodule控制器CONTROLER是整個(gè)系統(tǒng)最復(fù)雜也是最關(guān)鍵的部件,附圖1左上部分是控制器組成。它由一個(gè)控制器核心模塊CONTROL_CORE和寄存器OFREGISTER組成OFREGISTER由CLK端接受計(jì)數(shù)器溢出脈沖在其上升沿置1,當(dāng)控制器核心開始換檔工作時(shí),通過CLR清除OFREGISTER。: 輸入輸出功能表輸入輸入輸出CLKCLROF10:Clk std_f_sel[]Clear resetCntover light_1kCntlow light_10k light_100k 單個(gè)控制器模塊CONTROL_CORE模塊是控制器的核心,有六個(gè)輸入端口:時(shí)序脈沖CLK、清零脈沖CLR、復(fù)位脈沖RESET、溢出檢測輸入OF、計(jì)數(shù)器輸出第4位IN3[3..0]和IN4[3..0]。輸出端口四個(gè):鎖存器工作脈沖LATCH_CLK、OFREGISTER清零脈沖CLROF、鎖存器狀態(tài)LATCH_STAT[1..0]和當(dāng)前檔位狀態(tài)STAT[1..0]。另外還有寄存器stat_reg[1..0],用在轉(zhuǎn)換檔位時(shí)臨時(shí)保存檔位。count寄存器,用來標(biāo)志當(dāng)前工作脈沖序號。flag寄存器,用來標(biāo)志當(dāng)前計(jì)數(shù)置溢出或不夠。reset_reg寄存器,用來標(biāo)志復(fù)位周期。由上述介紹可知有三種情況能到達(dá)狀態(tài):計(jì)數(shù)結(jié)束、計(jì)數(shù)中溢出和復(fù)位。這個(gè)時(shí)候就需要檢測。RESET信號在上升沿將reset_reg置為1,并進(jìn)行復(fù)位操作,即狀態(tài)寄存器分別置值。在 時(shí)刻第工作脈沖到來時(shí),首先檢測是不是復(fù)位周期,是則跳過,不作任何動(dòng)作。不
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1