EDA技術(shù)及應(yīng)用實(shí)踐課程設(shè)計(jì)報(bào)告_第1頁
EDA技術(shù)及應(yīng)用實(shí)踐課程設(shè)計(jì)報(bào)告_第2頁
EDA技術(shù)及應(yīng)用實(shí)踐課程設(shè)計(jì)報(bào)告_第3頁
EDA技術(shù)及應(yīng)用實(shí)踐課程設(shè)計(jì)報(bào)告_第4頁
EDA技術(shù)及應(yīng)用實(shí)踐課程設(shè)計(jì)報(bào)告_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、EDA技術(shù)及應(yīng)用實(shí)踐課程設(shè)計(jì)報(bào)告目錄1電子密碼鎖整體設(shè)計(jì).3 1.1 設(shè)計(jì)要求.31.2 設(shè)計(jì)思路.3 1.2.1輸入模塊.3 1.2.2控制模塊.31.3設(shè)計(jì)結(jié)構(gòu)總圖.41.4整體設(shè)計(jì)的仿真結(jié)果.52、各個(gè)功能模塊的設(shè)計(jì).62.1按鍵輸入模塊.62.1.1按鍵輸入與對(duì)應(yīng)的編碼輸出之間的關(guān)系.6 2.1.2輸入模塊程序.7 2.1.3輸入模塊仿真結(jié)果.8 2.1.4生成元件.8 2.2系統(tǒng)控制模塊.9 2.2.1控制模塊程序.10 2.2.2控制模塊仿真結(jié)果.13 2.2.3生成元件.133、下載與硬件測(cè)試.144、課程設(shè)計(jì)感想.145、參考文獻(xiàn).15電子密碼鎖設(shè)計(jì)隨著人們生活水平的提高,如何

2、實(shí)現(xiàn)家庭防盜這一問題也變的尤其的突出,傳統(tǒng)的機(jī)械鎖由于其構(gòu)造的簡(jiǎn)單,被撬的事件屢見不鮮,電子鎖由于其保密性高,使用靈活性好,安全系數(shù)高,受到了廣大用戶的青睞。本次課程設(shè)計(jì)采用VHDL語言,利用Maxplus軟件完成相應(yīng)的電子密碼鎖功能設(shè)計(jì)。1、電子密碼鎖整體設(shè)計(jì)1.1設(shè)計(jì)要求:設(shè)計(jì)一個(gè)電子密碼鎖,在鎖開的狀態(tài)下輸入密碼,密碼共4位,用數(shù)據(jù)開關(guān)K1K10分別代表數(shù)字1、2、9、0,輸入的密碼用數(shù)碼管顯示,最后輸入的密碼顯示在最右邊的數(shù)碼管上,即每輸入一位數(shù),密碼在數(shù)碼管上的顯示左移一位。可刪除輸入的數(shù)字,刪除的是最后輸入的數(shù)字,每刪除一位,密碼在數(shù)碼管的顯示右移一位,并在左邊空出的位上補(bǔ)充“0”

3、。用一位輸出電平的狀態(tài)代表鎖的開閉狀態(tài)。為保證密碼鎖主人能打開密碼鎖,設(shè)置一個(gè)萬能密碼,在主人忘記密碼時(shí)使用。1.2設(shè)計(jì)思路:總的來說,設(shè)計(jì)成2個(gè)模塊,即輸入模塊,控制模塊,最后顯示管靜態(tài)顯示。1.2.1輸入模塊:在輸入模塊,我是用時(shí)鐘脈沖clk來控制什么時(shí)候輸入一位密碼,即每來一個(gè)上升沿,輸入一個(gè)數(shù),且輸入的數(shù)只在上升沿到來時(shí)有效,在其他時(shí)候視為無效。如果clk信號(hào)為系統(tǒng)設(shè)置的,那么很難做到自己輸入密碼的頻率能與clk信號(hào)同步,因此本設(shè)計(jì)決定將clk信號(hào)設(shè)為手動(dòng),即輸入好一位密碼后,讓clk信號(hào)由0到1,則該密碼輸入成功。1.2.2控制模塊:在密碼控制模塊中,主要實(shí)現(xiàn)以下功能:每輸入一位數(shù),

4、數(shù)碼管左移一位,設(shè)置刪除信號(hào)back,每按一次,刪除最后輸入的數(shù)字,密碼在數(shù)碼管顯示右移一位,左邊空處0。設(shè)置密碼確認(rèn)信號(hào)set,在四位密碼輸入完畢后,按下set,則密碼被送到寄存器鎖存,比較器模塊得到數(shù)據(jù)A,同時(shí)密碼顯示電路清零。設(shè)置密碼鎖狀態(tài)顯示信號(hào)lock。Lock=0表示鎖未開,lock=1表示鎖開,設(shè)置關(guān)鎖信號(hào)close,當(dāng)密碼送到寄存器模塊鎖存后,按下close,則lock=0。設(shè)置密碼檢驗(yàn)信號(hào)compare ,在lock=0下從數(shù)據(jù)開關(guān)輸入四位開鎖數(shù)據(jù),按下compare,則開鎖數(shù)碼送寄存器鎖存,數(shù)據(jù)比較模塊得到數(shù)據(jù)B,若A=B,則觸發(fā)器被置”1”。1.3設(shè)計(jì)結(jié)構(gòu)總圖:圖1(G1

5、模塊表示輸入模塊,G2表示控制模塊)1.4整體設(shè)計(jì)的仿真結(jié)果如下圖2、各個(gè)功能模塊的設(shè)計(jì)2.1按鍵輸入模塊:2.1.1按鍵輸入與對(duì)應(yīng)的編碼輸出之間的關(guān)系如表2-1所示表2-1 按鍵編碼按鍵輸入編碼輸出對(duì)應(yīng)的數(shù)字0000000001000110000000010001020000000100001130000001000010040000010000010150000100000011060001000000011170010000000100080100000000100191000000000000002.1.2輸入模塊程序:library ieee;use ieee.std_logic_1

6、164.all; use ieee.std_logic_unsigned.all;entity g1 isport( data:in std_logic_vector(9 downto 0);clk:in std_logic; dout:out std_logic_vector(3 downto 0); end g1;architecture at of g1 is signal temp:std_logic_vector(3 downto 0);beginprocess(clk)beginif clkevent and clk=1 thencase data is when 00000000

7、01=temptemptemptemptemptemptemptemptemptemptemp=1111;end case;end if;end process;dout=temp; end at;2.1.3輸入模塊仿真結(jié)果:2.1.4選擇 default symbol選項(xiàng)創(chuàng)建元件符號(hào)如下:2.2系統(tǒng)控制模塊密碼鎖的控制電路是整個(gè)電路的控制中心。設(shè)置set為密碼設(shè)置端口,compare為密碼檢驗(yàn)端口,close為關(guān)鎖端口,back為刪除密碼端口,clk1時(shí)鐘輸入端口,db3.0為3位數(shù)字輸入端口,sout15.0為16位輸出端口,lock密碼鎖狀態(tài)顯示端口。在此電路中每輸一位數(shù),密碼在數(shù)碼管上

8、左移一位。設(shè)置刪除密碼back,每按下一次back,刪除最后輸入的數(shù)字,左邊空處補(bǔ)0。設(shè)置密碼確認(rèn)信號(hào)set,當(dāng)四位密碼輸入完畢,按下set,設(shè)置的密碼被存儲(chǔ)。設(shè)置密碼鎖狀態(tài)信號(hào)lock, lock=0表示鎖未開,lock=1表示鎖開。設(shè)置關(guān)鎖信號(hào)close,按下close,則鎖關(guān)閉。設(shè)置密碼檢驗(yàn)信號(hào)compare,在lock=0下從數(shù)據(jù)開關(guān)輸入四位開鎖數(shù)字,按下compare,若數(shù)據(jù)等于設(shè)置的密碼或萬能密碼,則lock=1。模塊程序流程圖如圖:2.2.1控制部分程序:library ieee; use ieee.std_logic_1164.all;use ieee.std_logic_un

9、signed.all; entity g2 isport( set,compare,close,back,clk:in std_logic; db:in std_logic_vector(3 downto 0);dout:out std_logic_vector(15 downto 0); lock:out std_logic); end g2; architecture aa of g2 is signal ch:std_logic; beginprocess(clk,db) variable lock1:std_logic;variable mima:std_logic_vector(15

10、 downto 0);variable temp1,temp2,temp3,temp4:std_logic_vector(3 downto 0);begin ch=not(db(0) and db(1) and db(2) and db(3); lock1:=0;if clkevent and clk=1 then if ch=1 then temp4:=temp3; temp3:=temp2; temp2:=temp1; temp1:=db;end if; if back=1 then temp1:=temp2; temp2:=temp3;temp3:=temp4;temp4:=0000;

11、lock1:=0; end if; if set=1 then mima:=temp4&temp3&temp2&temp1; lock1:=0; end if; if compare=1 then if mima=temp4&temp3&temp2&temp1 then lock1:=1; elsif temp4=1000 and temp3=1000 and temp2=1000 and temp1=1000 then lock1:=1; end if; end if; if close =1 thenlock1:=0; temp1:=0000;temp2:=0000;temp3:=0000

12、;temp4:=0000; end if;end if;dout=temp4&temp3&temp2&temp1;lock=lock1;end process;end aa;2.2.2控制模塊仿真結(jié)果:2.2.3選擇 default symbol選項(xiàng)創(chuàng)建元件符號(hào)如下:3、下載與硬件測(cè)試:根據(jù)實(shí)驗(yàn)箱實(shí)際邏輯器件選擇“Assign”|“Device”|“MAX7000S”|“EPM7128SLC84-6”/【“Assign”|“Device”|“FLEX10K”|“EPF10K10LC84-3”】/【“Assign”|“Device”|“FLEX10KA”|“EPF30AQC208-1”】,并根據(jù)

13、下載板上的標(biāo)識(shí)對(duì)管腳進(jìn)行配置。然后下載,進(jìn)行硬件測(cè)試,檢驗(yàn)結(jié)果是否正確。我選擇的是“Assign”|“Device”|“FLEX10K”|“EPF10K10LC84-3”,管腳安排如下:KEY0:K0 KEY1:K2 KEY2:K2 KEY3:K4KEY4:K5 KEY5:K6 KEY:6:K7 KEY7:K8KEY8:K9 KEY9:K10SET::K11 CLOSE:K12 BACK:K13CLK1:K14 COMPARE:K15 LOCK:L4其顯示的方式為靜態(tài)顯示,一次性直接顯示4位密碼,這與動(dòng)態(tài)顯示的原理有較大的不同。本次硬件測(cè)試的結(jié)果正確。4、課程設(shè)計(jì)感想:做課程設(shè)計(jì)的第一天,我們

14、在網(wǎng)上找了一些資料,了解了整體的設(shè)計(jì)思路后,我們決定根據(jù)自己的理解以及網(wǎng)上和參考資料上提供的一些思路,自己編寫程序。經(jīng)過兩天的努力,我們終于寫好了自己的程序??墒切量鄬懗龅某绦騾s漏洞百出,一開始由于編寫程序時(shí)的粗心大意,以及一些編程方法不懂,導(dǎo)致程序編譯出現(xiàn)很多錯(cuò)誤,經(jīng)過翻閱資料,我們進(jìn)行了修改,最后雖然程序編譯沒啥問題了,可是仿真波形卻不對(duì)。不管怎么找錯(cuò),我們都覺得自己的程序沒有問題,所以不知道怎么修改。問了很多同學(xué),他們也各自有各自的一些見解,面對(duì)他們不統(tǒng)一的說法,我們也不知到底怎么做好。于是請(qǐng)教了老師,在老師的點(diǎn)撥下,我們終于有了自己的思路,于是修改好了自己的程序。最后通過仿真下載后,準(zhǔn)確無誤。這次課程設(shè)計(jì)讓我受益匪淺。它給了我們一個(gè)將所學(xué)理論靈活運(yùn)用的機(jī)會(huì),讓我知道光學(xué)習(xí)理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,要將所學(xué)運(yùn)用于實(shí)踐,否則所學(xué)理論就是徒勞的。除此之外,它也讓我深刻體會(huì)到EDA編程的思想,也增加了我好好扎實(shí)學(xué)習(xí)的決心,因?yàn)閷W(xué)的踏實(shí),才更會(huì)靈活運(yùn)用,也讓我明白求學(xué)不僅需要認(rèn)真、踏實(shí)、嚴(yán)謹(jǐn)、細(xì)心、耐心的態(tài)度,而且需要協(xié)作配合,因?yàn)辇?/p>

溫馨提示

  • 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. 人人文庫(kù)網(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)論