北航三系verilog實(shí)驗(yàn)報(bào)告2015_第1頁
北航三系verilog實(shí)驗(yàn)報(bào)告2015_第2頁
北航三系verilog實(shí)驗(yàn)報(bào)告2015_第3頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2014-2015-2-G02A3050-1

電子電路設(shè)計(jì)訓(xùn)練(數(shù)字EDA部分)實(shí)驗(yàn)報(bào)告(2015年5月20日)教學(xué)班學(xué)號(hào)姓名組長(zhǎng)簽名成績(jī)120324120311**趙****120324120311**劉***120324120311**任***自動(dòng)化科學(xué)與電氣工程學(xué)院北京航空航天大學(xué)電子電路設(shè)計(jì)訓(xùn)練(數(shù)字EDA部分)實(shí)驗(yàn)報(bào)告圖1(插入交叉引用圖只有標(biāo)簽和編號(hào))。圖SEQ圖\*ARABIC1示例的圖題注(插入題注)4.2實(shí)驗(yàn)任務(wù)2——樓梯燈4.2.1實(shí)驗(yàn)要求樓下到樓上依次有3個(gè)感應(yīng)燈:燈1、燈2、燈3。當(dāng)行人上下樓梯時(shí),各個(gè)燈感應(yīng)到后自動(dòng)點(diǎn)亮,若在8s內(nèi)感應(yīng)信號(hào)消失,則點(diǎn)亮8s,若感應(yīng)信號(hào)存在時(shí)間超過8s,則感應(yīng)信號(hào)消失4s后燈自動(dòng)關(guān)閉。任務(wù)1:做出如上邏輯電路設(shè)計(jì)并仿真;任務(wù)2:考慮去抖,對(duì)于感應(yīng)信號(hào)到達(dá)存在毛刺(小于0.5s),設(shè)計(jì)邏輯并剔出。4.2.2模塊的核心邏輯設(shè)計(jì)Switch代表信號(hào)。可以看出,出現(xiàn)switch信號(hào)后,脫離off狀態(tài),燈一直處于開啟狀態(tài)。如果switch不到8秒,則狀態(tài)機(jī)一直處于on狀態(tài)等待,燈一直亮,count記錄燈亮?xí)r間。若不到8秒switch信號(hào)消失的話,會(huì)進(jìn)入DELAY_SHORT狀態(tài),在沒有信號(hào)時(shí),會(huì)繼續(xù)點(diǎn)亮直道燈亮?xí)r間count到達(dá)8,則切換到off狀態(tài)等關(guān)閉。若輸入信號(hào)switch大于八秒,將由ON狀態(tài),切換到LONG狀態(tài),一直等待到switch信號(hào)消失為止,switch信號(hào)消失后,進(jìn)入DELAY_LONG狀態(tài),再用count計(jì)時(shí)4秒。之后回到off狀態(tài),關(guān)閉燈。在這些過程中,若有switch信號(hào)消失后又出現(xiàn)情況,全部回到ON狀態(tài)重新開始循環(huán)。防抖部分,專門作一個(gè)去抖動(dòng)的模塊anti_jitter(也是一個(gè)時(shí)序電路),輸入帶有抖動(dòng)的信號(hào),去抖后得到穩(wěn)定的信號(hào)。粘貼分析部分代碼:modulelamp(clock,reset_n,switch,light,debug_state,debug_nstate,debug_count,debug_tolerance);//定義時(shí)鐘,信號(hào),燈狀態(tài),狀態(tài)state,和下一個(gè)狀態(tài)nstate,。inputclock,reset_n,switch;outputlight;output[3:0]debug_state,debug_nstate;output[7:0]debug_count,debug_tolerance;reg[3:0]state,nstate;reg[7:0]count;reg[7:0]tolerance;//四秒鐘定時(shí)器parameterOFF=4'b0001,ON=4'b0011,LONG=4'b0111,DELAY_SHORT=4'b1011,DELAY_LONG=4'b1111;parameterNUM_WAIT=80,NUM_DELAY=40;//T=0.1s,兩個(gè)定時(shí)器,一個(gè)存8s,一個(gè)存4salways@(posedgeclockornegedgereset_n)begin//由時(shí)鐘上升沿或使能信號(hào)觸發(fā)if(!reset_n)begin//若當(dāng)前沒有使能信號(hào),則一直為off狀態(tài)。state<=OFF;endelsebegin//orientedtoeveryedgecase(state)//case語句通過當(dāng)前狀態(tài)選擇執(zhí)行的操作。OFF:begin//off狀態(tài)時(shí),計(jì)時(shí)器清零,新狀態(tài)給當(dāng)前狀態(tài)。 count<=0; state<=nstate; endON:begin//當(dāng)前狀態(tài)為ON時(shí),需要執(zhí)行的操作。if(nstate==LONG)count<=0;elsecount<=count+1;//nstate==ON||DELAY_SHORTstate<=nstate;end……always@(stateorswitchorcountortolerance)begin//由狀態(tài)信號(hào)、輸入信號(hào)等觸發(fā)case(state)…… ON://on狀態(tài)中,按照狀態(tài)圖所示判斷switch信號(hào)存在時(shí)間,n狀態(tài)轉(zhuǎn)入對(duì)應(yīng)狀態(tài)內(nèi)。 if(switch) if(count<NUM_WAIT-1)nstate=ON;//from0toNUM_WAIT-2, //andpostpone1periodtothenextstate,totalnumisNUM_WAIT elsenstate=LONG; elsenstate=DELAY_SHORT;//!switch4.2.3測(cè)試程序的核心邏輯設(shè)計(jì)initialbegin//SCENARIO#1short_pulsefrom10secto55secswitch=0;#100switch=1;//產(chǎn)生兩秒的測(cè)試信號(hào)#20switch=0;#100switch=1;//產(chǎn)生大于八秒的測(cè)試信號(hào)#30switch=0;//產(chǎn)生三秒的測(cè)試信號(hào)#40switch=1;//#60switch=0;//SUM=350#50switch=1;#99.5switch=0;#50.5switch=1;#90switch=0;#30switch=1;#10switch=0;//SUM=330end4.2.4仿真實(shí)驗(yàn)關(guān)鍵結(jié)果及其解釋在信號(hào)存在時(shí)間超過8s后,燈再亮4s后熄滅。在輸入信號(hào)不到8s時(shí),燈會(huì)亮夠8s再熄滅。加入防抖功能后,輸出信號(hào)將落后輸入信號(hào)0.5s,因?yàn)槌^0.5s后才會(huì)判斷為真正的輸入而非抖動(dòng)。4.3實(shí)驗(yàn)任務(wù)3——選作樓梯燈4.3.1實(shí)驗(yàn)要求任務(wù)3:若為節(jié)約能源,下一個(gè)燈點(diǎn)亮的同時(shí)將自動(dòng)關(guān)閉上一個(gè)燈,做出如上邏輯設(shè)計(jì)并仿真;任務(wù)4:考慮存在多個(gè)人上下樓梯的情況,比如:行人1已經(jīng)從燈1到達(dá)燈2,燈2受感應(yīng)自動(dòng)點(diǎn)亮,但此時(shí)行人2剛上樓梯到達(dá)燈1的位置,則燈1和燈2都須點(diǎn)亮,更加復(fù)雜一點(diǎn),如果行人2是下樓梯剛到達(dá)燈3位置,做出如上邏輯設(shè)計(jì)并仿真;4.3.2模塊的核心邏輯設(shè)計(jì)節(jié)能問題比一人的情況多加了save信號(hào),在信號(hào)消失后延遲亮燈的時(shí)間里,若臨近樓梯有人,則把本層滅燈。而對(duì)于多人上下樓的情況,生成一個(gè)swh信號(hào),用于存儲(chǔ)上樓的人和下樓的人的并集,并把該新信號(hào)當(dāng)作輸入信號(hào),如同一個(gè)人上下樓一樣考慮狀態(tài)的轉(zhuǎn)換。基本的編程思路和語句與基礎(chǔ)任務(wù)相似?!璂ELAY_LONG://在等待狀態(tài)中,如果save信號(hào)有效,則進(jìn)入滅燈狀態(tài)off if(switch)nstate=ON; elseif(save)nstate=OFF;//save_power elseif(count<NUM_DELAY-1)nstate=DELAY_LONG; elsenstate=OFF;……4.3.3測(cè)試程序的核心邏輯設(shè)計(jì)在驗(yàn)證多人上下樓時(shí)的仿真應(yīng)給出至少兩個(gè)信號(hào)輸入,并把兩個(gè)信號(hào)取并集。……reg[2:0]up,down;wire[2:0]swh;wire[2:0]lamp;……//給出不同的上下樓信號(hào),如長(zhǎng)信號(hào)、短信號(hào)等。assignswh=up|down;swh為up與down信號(hào)的并集?!?.3.4仿真實(shí)驗(yàn)關(guān)鍵結(jié)果及其解釋可以看出有save信號(hào)時(shí),沒信號(hào)輸入的等

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論