EDA課程設(shè)計數(shù)字密碼鎖_第1頁
EDA課程設(shè)計數(shù)字密碼鎖_第2頁
EDA課程設(shè)計數(shù)字密碼鎖_第3頁
EDA課程設(shè)計數(shù)字密碼鎖_第4頁
EDA課程設(shè)計數(shù)字密碼鎖_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

.PAGE.目錄TOC\o"1-3"\u目錄2摘要3關(guān)鍵詞31引言41.1課程設(shè)計背景41.2課程設(shè)計目的41.3課程設(shè)計內(nèi)容42數(shù)字密碼鎖設(shè)計42.1系統(tǒng)設(shè)計42.2模塊功能52.2.1控制模塊52.2.2比較模塊72.2.3寄存模塊73仿真分析83.1控制模塊的仿真83.2比較模塊的仿真93.3寄存模塊的仿真103.4系統(tǒng)的仿真波形103.5系統(tǒng)的引腳鎖定124設(shè)計總結(jié)12參考文獻13摘要:隨著數(shù)字集成技術(shù)和電子設(shè)計自動化<EDA>技術(shù)的迅速發(fā)展,數(shù)字密碼鎖應(yīng)運而生。本文采用先進的EDA技術(shù),利用QUARTUSⅡ工作平臺和VHDL語言,設(shè)計了一種新型的數(shù)字密碼鎖,它不但可以完成鎖具的基本功能,還能附加一些其他的智能,例如:報警、識別功能,數(shù)字密碼鎖具功能齊全,安全系數(shù)高,有機械鎖無可比擬的優(yōu)越性,它的造價成本低,易于操作,越來越受到眾多客戶的青睞,可以優(yōu)先占領(lǐng)市場有利份額。關(guān)鍵詞:EDA技術(shù);QUARTUSⅡ工作平臺;VHDL語言;數(shù)字密碼鎖1引言1.1課程設(shè)計背景數(shù)字密碼鎖隨著電子工業(yè)的發(fā)展,數(shù)字電子技術(shù)已經(jīng)深入到了人們生活的各個層面,而且各種各樣的電子產(chǎn)品也正在日新月異地向著高精尖技術(shù)發(fā)展。由于電子產(chǎn)品的功能不斷增加,使用也越來越方便,有些產(chǎn)品已經(jīng)成為了人們?nèi)粘I钪胁豢扇鄙俚谋貍湮锲?。發(fā)展歷史悠久的機械式門鎖,因其功能單一,安全性能較差等缺點,必將被新一代的電子門鎖所代替。新穎的多功能電子門鎖,集電子門鎖、防盜報警器,門鈴等功能于一身,而且還具有定時器呼喚,斷電自動報知,顯示屋內(nèi)有無人和自動留言等諸多附加功能。在未來的生活中,數(shù)字密碼鎖必將在學(xué)領(lǐng)域再創(chuàng)新的成績,將給我們的生活帶來更大的便利,前景不可估量。1.2課程設(shè)計目的1.掌握VHDL語言編程方法,通過實踐加深對理論知識的理解。2.學(xué)會QuartusⅡ軟件的使用方法。3.掌握數(shù)字密碼鎖的設(shè)計方法。4.掌握波形仿真,學(xué)會分析實驗現(xiàn)象,提高分析問題的能力。1.3課程設(shè)計內(nèi)容設(shè)計一個數(shù)字密碼鎖,用戶可輸入4位的二進制數(shù),可有用戶任意輸入正確時開鎖,密碼輸入錯誤時報警.碼可手動預(yù)置,并可進行修改密碼,取消報警。給出系統(tǒng)總體組成框圖,設(shè)計思路,完成以上模塊的VHDL實現(xiàn)及功能仿真,頂層文件及整體仿真。2數(shù)字密碼鎖設(shè)計2.1系統(tǒng)設(shè)計根據(jù)系統(tǒng)的設(shè)計要求,系統(tǒng)設(shè)計采用自頂向下的設(shè)計方法。頂層設(shè)計采用原理圖的設(shè)計方式和系統(tǒng)的整體組裝,分別由控制模塊、寄存器模塊、比較器模塊等部分組成。即按照這三個組成模塊定義相應(yīng)的芯片引腳和輸入輸出的參數(shù)。2.2模塊功能系統(tǒng)主要由3個模塊組成,分別是控制模塊、寄存器模塊、比較器模塊??刂颇K控制模塊采用有限狀態(tài)機設(shè)計,將系統(tǒng)分為7個狀態(tài),即開鎖狀態(tài)〔outlock、安鎖狀態(tài)<inlock>、輸入密碼狀態(tài)<input>、密碼初驗正確狀態(tài)<right>、密碼初驗錯誤狀態(tài)<wrong>、報警狀態(tài)<alarm>、修改密碼狀態(tài)<change>。狀態(tài)轉(zhuǎn)移圖如圖2-2-1。enter=’0’enter=’enter=’0enter=’0lock=’0enter=’0’start=’enter=’0start=’0enter=’0changeoutlockrightxinputwrongalarminlockenter=’1xiu=’0enter=’1’yes=’1yes=’0start=’1enter=’1enter=’1圖圖2-2-1狀態(tài)轉(zhuǎn)移圖系統(tǒng)上電時,處于開鎖狀態(tài),當(dāng)輸入修改密碼xiu信號時,系統(tǒng)進入修改密碼狀態(tài);若輸入安鎖lock信號,系統(tǒng)進入安鎖狀態(tài),鎖閉合:在安鎖狀態(tài),輸入輸入密碼start信號,系統(tǒng)進入輸入密碼狀態(tài);在輸入密碼狀態(tài),如輸入密碼內(nèi)容和長度均正確,進入密碼初驗正確狀態(tài),如果密碼錯誤,進入密碼初驗錯誤狀態(tài);在密碼初驗正確狀態(tài),輸入確認信號enter時,進入開鎖狀態(tài),在開鎖狀態(tài)kai信號等于‘1’;在密碼初驗錯誤狀態(tài),輸入確認信號enter時,進入報警狀態(tài);在報警狀態(tài)。warn信號等于‘1’。VHDL代碼如下:libraryieee;useieee.std_logic_1164.all;entitymimaisport<clk,lock,start,xiu,enter,yes:instd_logic;warn,kai,wr,en:outstd_logic>;end;architecturebhvofmimaistypestateis<inlock,input,rightx,wrong,unlock,change,alarm>;signalps,ns:state;beginprocess<clk>beginifclk'eventandclk='1'thenps<=ns;endif;endprocess;process<ps,lock,start,xiu,enter,yes>begincasepsiswheninlock=>kai<='0';en<='0';warn<='0';wr<='0';if<start='1'>thenns<=input;elsens<=inlock;endif;wheninput=>en<='1';kai<='0';warn<='0';wr<='0';if<yes='1'>thenns<=rightx;elsens<=wrong;endif;whenrightx=>en<='0';kai<='0';warn<='0';wr<='0';ifenter='1'thenns<=unlock;elsens<=rightx;endif;whenwrong=>en<='0';kai<='0';warn<='0';wr<='0';ifenter='1'thenns<=alarm;elsens<=wrong;endif;whenunlock=>kai<='1';warn<='0';en<='0';wr<='0';iflock='1'thenns<=inlock;elsifxiu='1'thenns<=change;elsens<=unlock;endif;whenalarm=>warn<='1';kai<='0';en<='0';wr<='0';ifenter='1'thenns<=inlock;elsens<=alarm;endif;whenchange=>en<='1';warn<='0';kai<='1';wr<='1';ifenter='1'thenns<=unlock;elsens<=change;endif;endcase;endprocess;end;比較模塊在數(shù)字密碼器中,比較器模塊的功能是對按鍵輸入和寄存器模塊的輸出進行比較,然后將比較的結(jié)果送入到控制器模塊。比較器的具體工作原理是:當(dāng)比較結(jié)果相等時,c輸出為1;當(dāng)比較結(jié)果不相等時,c的輸出為0。VHDL代碼如下:libraryieee;useieee.std_logic_1164.all;entitybiisport<a,b:instd_logic_vector<3downto0>;c:outstd_logic>;end;architecturebhvofbiisbeginc<='1'whena=belse'0';end;寄存模塊寄存器模塊用于存放預(yù)設(shè)和修改后的密碼,并在開鎖時將所存密碼輸出到比較器與按鍵輸入的密碼進行比較,判斷由按鍵輸入密碼是否正確的結(jié)果。VHDL代碼如下:libraryieee;useieee.std_logic_1164.all;entityjiisport<clk,wr,en:instd_logic;data_in:instd_logic_vector<3downto0>;data_out:outstd_logic_vector<3downto0>>;end;architecturebhvofjiissignalm:std_logic_vector<3downto0>;beginprocess<clk>beginifclk'eventandclk='1'thenif<en='1'andwr='1'>thendata_out<=data_in;m<=data_in;elsedata_out<=m;endif;endif;endprocess;end;3仿真分析3.1控制模塊的仿真控制模塊是系統(tǒng)的核心,其仿真波形如圖3-1所示。各端口功能如下:輸入信號:clk輸入時鐘,lock安鎖信號,start開始輸入密碼,xiu修改密碼,enter密碼確認,Yes密碼比較。輸出信號:warn警告信號,kai密碼正誤顯示信號,wr寄存器讀寫信號,en密碼輸入使能。圖3-1圖3-1控制模塊仿真波形圖3-1控制器仿真波形波形仿真分析:起始初始密碼為"0000",安鎖后鎖關(guān)閉kai信號為‘0’;開鎖時,按下start開鎖鍵,密碼比較yes信號為‘1’有效,輸入密碼正確,按下enter確認鍵,鎖開,鎖開標(biāo)志信號kai為’1’;開鎖狀態(tài)下,按下xiu修改密碼鍵,輸入新密碼后按確認鍵start,密碼修改成功,再按下lock安鎖,此時密碼為新輸入密碼;按下輸入密碼鍵start輸入密碼鍵若輸入密碼錯誤,按下確認鍵enter后,報警warm信號有效。3.2比較模塊的仿真比較器模塊的工作原理是:當(dāng)比較結(jié)果相等時,輸出為1;當(dāng)比較結(jié)果不相等時,輸出為0。其仿真波形如圖3-2。各端口功能如下:輸入信號:a按鍵輸入的密碼,b寄存器儲存的密碼。輸出信號:c按鍵輸入與寄存器的密碼是否相等。圖圖3-2比較器仿真波形波形仿真分析:起始寄存器輸出密碼為"0001",鍵盤輸入為"0101"時不相等,所以輸出c為0;當(dāng)寄存器輸出密碼為"0011",鍵盤輸入為"0011"時相等,所以輸出c為1,其他與此相同。3.3寄存模塊的仿真開鎖時將所存密碼輸出到比較器與按鍵輸入的密碼進行比較,達到判斷由按鍵輸入密碼是否正確的結(jié)果。圖4是寄存器模塊的仿真波形。圖3-3圖3-3寄存器仿真波形波形仿真分析:當(dāng)使能信號en和wr都有效時,將data_in輸入的信號存儲到寄存器中,無論輸入信號data_in為多少,輸出信號data_out都為寄存器所存內(nèi)容。其他情況下,輸出data_out信號,不隨data_in輸入改變。3.4系統(tǒng)的仿真波形圖圖3-4系統(tǒng)仿真波形波形分析:上電后,系統(tǒng)的初始密碼為"0000",按下start鍵由鍵盤key輸入密碼"0000",輸入密碼正確按確認鍵enter鍵鎖開按,鎖關(guān)閉開鎖輸出標(biāo)志信號kai無效為1,顯示開鎖;在開鎖狀態(tài)下按xiu修改密碼鍵后,由鍵盤key輸入新密碼0001后按確認鍵enter密碼修改成功,按lock鍵密碼鎖上鎖,此時密碼鎖密碼為新密碼;若按下start鍵后輸入的密碼錯誤如圖"1111"與密碼鎖密碼"0000"不同,warm報警信號有效,鎖不開且報警。若按下start鍵后輸入的密碼正確如圖"1111"與密碼鎖密碼"1111"相同,kai開鎖信號有效,鎖開且不報警。頂層文件VHDL代碼如下:libraryieee;useieee.std_logic_1164.all;entitytopisport<clk,lock,start,xiu,enter:instd_logic;key:instd_logic_vector<3downto0>;warn,kai:outstd_logic>;end;architecturebhvoftopiscomponentmimaisport<clk,lock,start,xiu,enter,yes:instd_logic;warn,kai,wr,en:outstd_logic>;endcomponent;componentjiisport<clk,wr,en:instd_logic;data_in:instd_logic_vector<3downto0>;data_out:outstd_logic_vector<3downto0>>;endcomponent;componentbiisport<a,b:instd_logic_vector<3downto0>;c:outstd_logic>;endcomponent;signald,e,g:std_logic;signalf:std_logic_vector<3downto0>;beginu1:mimaportmap<clk=>clk,lock=>lock,start=>start,xiu=>xiu,enter=>enter,yes=>g,kai=>kai,warn=>warn,wr=>d,en=>e>;u2:jiportmap<clk=>clk,wr=>d,en=>e,data_in=>k

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論