




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、VHDLf言及應用課程設計論文一VHDL平臺下密碼鎖的設計學院:電子信息學院專業(yè):_學號:_姓名:_指導老師:_團隊成員:完成日期:目錄1 .引言12 .實驗目的13 .實驗任務與要求14 .設計原理及工作流程24.1 密碼鎖設計原理24.2 密碼鎖系統(tǒng)框圖24.3 密碼鎖設計提示25 .密碼鎖的頂層設計源程序36 .密碼鎖各功能模塊源程序及其仿真分析56.1 密碼設定鎖存器源程序及其仿真分析56.2 密碼輸入鎖存器源程序及其仿真分析66.3 開鎖控制系統(tǒng)源程序及其仿真分析86.4 比較器源程序及其仿真分析96.5 LED顯示源程序及其仿真分析116.6 頂層源文件白仿真分析12七.密碼鎖設計
2、源程序的下載調試137.1 電路結構137.2 管腳分配147.3 程序下載調試過程148 .實驗分析與總結159 .組內分工16十.參考文獻161 .引言隨著社會物質財富的日益增長和人們生活水平的提高,安全成為現(xiàn)代居民最關心的問題之一。因此人們對鎖要求甚高,既要求可靠地防盜,又要使用方便,這也是制鎖者長期以來研制的主題。傳統(tǒng)的門鎖既要備有大量的鑰匙,又要擔心鑰匙丟失后的麻煩。數(shù)字密碼鎖是二十一世紀制鎖業(yè)的一次革命,鎖的特點是不用鑰匙、無鎖孔、機械傳動、不易損壞、不磨損、不易被破譯、可多次更換密碼、換號不換鎖、一把鎖多個密碼,具有防撥、防砸、防撬、防堵等功能。安裝門鎖時不破壞原門的結構,避免用
3、鑰匙開啟旋芯式鎖具的一切煩惱(如丟、落、拆、堵門被反鎖等),數(shù)字密碼鎖是利用數(shù)字密碼來開啟的鎖具,其重復概率極低,有著很高的安全性;而旋芯式鎖具使用不夠安全。通過對社會各階層千余人的調查,百分之百的人對目前身上掛著的用串鑰匙無可奈何,都愿意一身輕松沒有任何顧慮的出入家門,都愿意用上一種既安全方便又不用鑰匙的鎖具。因此,數(shù)字密碼鎖產(chǎn)品的市場發(fā)展前景極為廣闊。而EDA技術設計電子系統(tǒng)具有用軟件的方式設計硬件,設計過程中可用有關軟件進行各種仿真,系統(tǒng)可現(xiàn)場編程、在線升級,整個系統(tǒng)可集成在一個芯片上等特點;不但設計周期短、設計成本低,而且將提高產(chǎn)品或設備的性能,縮小產(chǎn)品體積、提高產(chǎn)品的技術含量,提高產(chǎn)
4、品的附加值??梢?,用VHDL可以更加快速、靈活地設計出符合各種要求的密碼鎖,優(yōu)于其他設計方法,使設計過程達到高度自動化。本設計的各個模塊由相應的VHDLE序具體實現(xiàn),并在QuartusH9.0環(huán)境下進行了整體電路的模擬仿真,最終實現(xiàn)“密碼鎖設計”的要求。2 .實驗目的1 .掌握VHDI®言的使用,學會用VHDL®言來編程解決實際問題;2 .學會使用EDAFF發(fā)軟件設計小型綜合電路,掌握仿真的技巧;3 .學會應用開發(fā)系統(tǒng)實現(xiàn)硬件電路,檢驗電路的功能;4 .設計一個八位二進制密碼鎖,實現(xiàn)所要求的功能。5 .實驗任務與要求1、安鎖狀態(tài)。按下開關鍵SETUP密碼設置燈亮時,方可進行
5、密碼設置操作。設置初始密碼09(或二進制8位數(shù)),必要時可以更換。再按SETUPS,密碼有效。2、開鎖過程。(1)、按啟動鍵(START啟動開鎖程序,此時系統(tǒng)內部應處于初始狀態(tài)。(2)、依次鍵入09(或二進制8位數(shù))。(3)、按開門鍵(OPEN準備開門。若按上述程序執(zhí)行且撥號正確,則開門指示燈A亮,若按錯密碼或未按上述程序執(zhí)行,則按動開門鍵OPENt,報警裝置鳴叫、燈B亮。(4)、開鎖處理事務完畢后,應將門關上,按SETUP®使系統(tǒng)重新進入安鎖狀態(tài)。若在報警狀態(tài),按SETUP8或STARTS應不起作用,應另用一按鍵RESET才能使系統(tǒng)進入安鎖狀態(tài)。3、使用者如按錯號碼可在按OPENS
6、之前,按START1重新啟動開鎖程序。4、設計符合上述功能的密碼鎖,并用層次化方法設計該電路。5、用功能仿真方法驗證,通過觀察有關波形確認電路設計是否正確。6、完成電路設計后,通過在實驗系統(tǒng)中下載,驗證設計的正確性。四.設計原理及工作流程4.1 密碼鎖設計原理如下示框圖,密碼鎖系統(tǒng)主要由開鎖控制,設置密碼的鎖存器,輸入密碼的鎖存器,比較器,LED顯示和報警系統(tǒng)幾個部分組成。每一個模塊功能的實現(xiàn)都是通過VHD印言實現(xiàn)的,并通過頂層電路與例化語句將功能模塊整合起來,之后對整個系統(tǒng)進行模擬仿真和硬件實現(xiàn)。4.2 密碼鎖系統(tǒng)框圖4.3 密碼鎖設計提示(1)鎖存器:用于實現(xiàn)設定密碼和輸入密碼的鎖存。(2
7、)比較器:用于將設定密碼與輸入密碼相比較。其中,CLK為外部輸入的時鐘信號。若輸入密碼正確,則A燈亮;否則B燈亮,同時比較器輸出與CLK一樣的信號,驅動蜂鳴器發(fā)出報警聲。(3)開鎖控制:當反饋信號下降沿來到時,開鎖控制輸出低電平,用于在輸入錯誤密碼后禁止再次安鎖;當RESET?為高電平時,開鎖控制輸出高電平,打開與門,這時鎖存器1使能端的變化受控于SETUPS,重新進入安鎖狀態(tài)。(4)LED顯示:用于設定密碼或輸入密碼的顯示。此項設計的目的是為了在下載演示時,能清楚地看到設置和輸入的密碼值。五.密碼鎖的頂層設計源程序調用各模塊形成元件例化語句:LIBRARYIEEE;USEIEEE.std_l
8、ogic_1164.All;ENTITYtopfileISPORT(SETUP,RESET,START,OPN,CLK:INSTD_LOGIC;setpassword:INSTD_LOGIC_VECTOR(7DOWNTO0);inputpassword:INSTD_LOGIC_VECTOR(7DOWNTO0);led_A,led_B,warner:OUTSTD_LOGIC;DOUT11,DOUT12,DOUT21,DOUT22:OUTSTD_LOGIC_VECTOR(6DOWNTO0);ENDENTITYtopfile;ARCHITECTUREbrfOFtopfileISCOMPONENTlo
9、ckcontrolPORT(RESET,FEEDBACK:INSTD_LOGIC;Y:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTcodesetPORT(ENABLE:INSTD_LOGIC;PASEWORD:INSTD_LOGIC_VECTOR(7DOWNTO0);Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0);ENDCOMPONENT;COMPONENTcodeinputPORT(ENABLE:INSTD_LOGIC;PASEWORD:INSTD_LOGIC_VECTOR(7DOWNTO0);Q:OUTSTD_LOGIC_VECTOR(7DOWN
10、TO0);ENDCOMPONENT;COMPONENTcomparatorPORT(OPN,CLK,RESET:INSTD_LOGIC;rightpassword,password:INSTD_LOGIC_VECTOR(7DOWNTO0);A,B,warner:OUTSTD_LOGIC;D11,D12,D21,D22:OUTSTD_LOGIC_VECTOR(3DOWNTO0);ENDCOMPONENT;COMPONENTAND2PORT(a,b:INSTD_LOGIC;c:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTNOR2PORT(e,d:INSTD_LOGIC;
11、f:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTLEDPORT(DATA:INSTD_LOGIC_VECTOR(3DOWNTO0);DOUT7:OUTSTD_LOGIC_VECTOR(6DOWNTO0);ENDCOMPONENT;SIGNALnet1,net2:STD_LOGIC_VECTOR(7DOWNTO0);SIGNALnet8,net9,net10,net11:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALnet3,net4,net5,net6,net7:STD_LOGIC;BEGINU0:lockcontrolPORTMAP(RESET
12、=>RESET,feedback=>net3,y=>net4);U1:AND2PORTMAP(a=>net3,b=>START,c=>net5);U2:AND2PORTMAP(a=>SETUP,b=>net4,c=>net6);U3:CODEINPUTPORTMAP(PASEWORD=>inputpassword,ENABLE=>net5,Q=>net1);U4:codesetPORTMAP(PASEWORD=>setpassword,ENABLE=>net6,Q=>net2);U5:comparator
13、PORTMAP(rightpassword=>net2,password=>net1,OPN=>OPN,CLK=>CLK,A=>led_A,B=>net7,warner=>warner,RESET=>RESET,D12=>net9,D11=>net8,D21=>net10,D22=>net11);U6:NOR2PORTMAP(e=>net7,d=>net7,f=>net3);U7:LEDPORTMAP(DATA=>net8,DOUT7=>DOUT11);U8:LEDPORTMAP(DATA=&
14、gt;net9,DOUT7=>DOUT12);U9:LEDPORTMAP(DATA=>net10,DOUT7=>DOUT21);U10:LEDPORTMAP(DATA=>net11,DOUT7=>DOUT22);led_B<=net7;ENDARCHITECTUREbrf;六.密碼鎖各功能模塊源程序及其仿真波形6.1 密碼設定鎖存器源程序及其仿真波形源程序為:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYcodesetISPORT(ENABLE:INST
15、D_LOGIC;PASSWORD:INSTD_LOGIC_VECTOR(7DOWNTO0);Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0);ENDcodeset;ARCHITECTUREbhvOFcodesetISBEGINPROCESS(ENABLE,PASSWORD)BEGINIFENABLE='1'THENQ<=PASSWORD;Q(6)<=PASSWORD(6);Q(5)<=PASSWORD(5);Q(4)<=PASSWORD(4);Q(3)<='0'Q(2)<='0'Q(1)<=
16、'0'Q(0)<='0'ENDIF;ENDPROCESS;ENDbhv;仿真波形圖為:使能控制端高電平時:使能控制端變回低電平時:通過由于硬件設備限制,不能檢驗全部端口,因此將低位的四位設置為低電平,改變使能控制端與高位的電平觀察正確性。6.2 密碼輸入鎖存器源程序及其仿真波形源程序為:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYcodeinputISPORT(ENABLE:INSTD_LOGIC;PASSWORD:INSTD_LOGIC_VECTO
17、R(7DOWNTO0);Q:OUTSTD_LOGIC_VECTOR(7DOWNTO0);ENDcodeinput;ARCHITECTUREbhvOFcodeinputISBEGINPROCESS(ENABLE,PASSWORD)BEGINIFENABLE='1'THENQ<=PASSWORD;Q(6)<=PASSWORD(6);Q(5)<=PASSWORD(5);Q(4)<=PASSWORD(4);Q(3)<='0'Q(2)<='0'Q(1)<='0'Q(0)<='0'
18、;ENDIF;IFENABLE='0'THENQ<="00000000"ENDIF;ENDPROCESS;ENDbhv;仿真波形為:當使能信號為低電平,鎖存器輸出狀態(tài)保持不變,輸入信號沒有讀入;當使能信號有低電平變?yōu)楦唠娖?,鎖存器開始讀入輸入的信號。6.3 開鎖控制系統(tǒng)源程序及其仿真波形源程序為:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYlockcontrolISPORT(FEEDBACK,RESET:INSTD_LOGIC;Y:OUTSTD_
19、LOGIC);ENDlockcontrol;ARCHITECTUREbhvOFlockcontrolISBEGINPROCESS(FEEDBACK,RESET)BEGINY<='1'IFFEEDBACK='0'THENY<='0'ENDIF;IFRESET='1'THENY<='1'ENDIF;ENDPROCESS;ENDbhv;仿真波形為:FEEDBACK反饋信號,RESE必重置密碼信號。當反饋信號下降沿來到時,開鎖控制輸出Y低電平,用于在輸入錯誤密碼后禁止再次安鎖;當RESET?為高電平時,開
20、鎖控制輸出高電平。6.4 比較器源程序以及仿真波形源程序為:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.All;ENTITYcomparatorISPORT(rightpassword,password:INSTD_LOGIC_VECTOR(7DOWNTO0);OPN,CLK,RESET:INSTD_LOGIC;A,B,warner:OUTSTD_LOGIC;D11,D12,D21,D22:OUTSTD_LOGIC_VECTOR(3DOWNTO0);ENDcomparator;ARCHITECTUREbhvOFcomparatorISBEGINPROCESS(OPN,
21、CLK,RESET,rightpassword,password)BEGIND11(3)<=rightpassword;D11(2)<=rightpassword(6);D11<=rightpassword(5);D11(0)<=rightpassword(4);D12(3)<=rightpassword(3);D12(2)<=rightpassword(2);D12(1)<=rightpassword(l);D12(0)<=rightpassword(O);D21(3)<=password;D21(2)<=password(6);D
22、21(1)<=password(5);D21(0)<=password(4);D22(3)<=password(3);D22(2)<=password(2);D22(1)<=password(1);D22(0)<=password(0);IFOPN='1'THENIFrightpassword=passwordTHENA<='1'B<='0'warner<='0'ENDIF;IFrightpassword/=passwordTHENA<='0'B<=
23、'1'warner<=CLK;IFRESET='1'THENA<='0'B<='0'warner<='0'ENDIF;ENDIF;ELSEA<='0'B<='0'warner<='0'ENDIF;ENDPROCESS;ENDbhv;仿真波形為:(1)密碼正確時:密碼匹配時,如果OPENF打開,電路不工作,如果OPEN丁開,則A燈變?yōu)楦唠娖剑珺燈和蜂鳴器不工作。而D11D12始終顯示正確密碼,D21D22始終顯示當前輸入密碼。(
24、2)密碼錯誤時:密碼不匹配時,如果OPENF打開,電路不工作,如果OPEN丁開,則A燈不工作,B燈亮,蜂鳴器隨CLK周期而周期性鳴響。止匕時,關閉OPEM啟動RESET才可以使比較器停止工作并可以再次輸入密碼。6.5 LED顯示源程序及其仿真波形源程序為:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYLEDISPORT(DATA:INSTD_LOGIC_VECTOR(3DOWNTO0);DOUT7:OUTSTD_LOGIC_VECTOR(6DOWNTO0);ENDENTITYLED;ARC
25、HITECTUREaOFLEDISBEGINPROCESS(DATA)BEGINCASEDATAISWHEN"0001"=>DOUT7<="0000110”;WHEN"0010"=>DOUT7<="1011011”;WHEN"0000"=>DOUT7<="0111111”;WHEN"0011"=>DOUT7<="1001111”;WHEN"0100"=>DOUT7<="1100110”;
26、WHEN"0101"=>DOUT7<="1101101”;WHEN"0110"=>DOUT7<="1111101”;WHEN"0111"=>DOUT7<="0001111”;WHEN"1000"=>DOUT7<="1111111”;WHEN"1001"=>DOUT7<="1101111”;WHENOTHERS=>DOUT7<="0000000”;ENDCASE;ENDPROCESS;ENDARCHITECTUREa;仿真波形為:可以由二進制代碼的值判斷出仿真結果真確,從圖中還可以觀察到,當輸入的四位數(shù)中有兩位及以上同時跳變時,出現(xiàn)了競爭冒險現(xiàn)象。6.6 頂層源文件的仿真波形分析(1)密碼輸入正確時:按下SETU限置密碼。按啟動鍵START啟動開鎖程序,當輸入的密碼與設定的密碼相同,按下OPEN1,A燈亮起,鎖打開,B燈和蜂鳴器不工作。(2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 大數(shù)據(jù)助力訂單農(nóng)業(yè)精準化供應鏈管理
- 2025至2030迷你酒吧行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 江西省撫州市宜黃縣2024年九上化學期末調研試題含解析
- 福建省寧德市2025屆九年級化學第一學期期末質量檢測試題含解析
- 江蘇省南京市六合區(qū)2025屆數(shù)學八上期末考試試題含解析
- 貴州省從江縣2025屆數(shù)學八年級第一學期期末質量跟蹤監(jiān)視試題含解析
- 人才派遣代理招聘服務合同
- 蘇州園林教學設計
- 鄉(xiāng)村衛(wèi)生院網(wǎng)絡信息化建設與升級方案
- 綠色環(huán)保型自修復環(huán)氧樹脂產(chǎn)品的開發(fā)
- 廣州市藝術中學招聘教師考試真題2024
- 工業(yè)自動化設備保修及維修管理措施
- 期末作文預測外研版七年級英語下冊
- 2025-2030中國兒童魚油行業(yè)銷售動態(tài)及競爭策略分析報告
- 統(tǒng)編版五年級升六年級語文暑期銜接《課外閱讀》專項測試卷及答案
- 小小理財家課件
- DB43-T 2622-2023 醫(yī)療導管標識管理規(guī)范
- 譯林版一年級下冊全冊英語知識點梳理
- 案場物業(yè)制度管理制度
- 護理事業(yè)十五五發(fā)展規(guī)劃(2026-2030)
- CJ/T 316-2009城鎮(zhèn)供水服務
評論
0/150
提交評論