電子密碼鎖的EDA設計

隨着社會物質財富的日益增長,安全防盜已成爲全社會關注的問題。EDA是電子設計自動化(Electronic Design Automation)的縮寫,在20世紀90年代初從計算機輔助設計(CAD)、計算機輔助製造(CAM)、計算機輔助測試(CAT)和計算機輔助工程(CAE)的概念發展而來的。EDA技術就是以計算機爲工具,設計者在EDA軟件平臺上,用硬件描述語言HDL完成設計文件,然後由計算機自動地完成邏輯編譯、化簡、分割、綜合、優化、佈局、佈線和仿真,直至對於特定目標芯片的適配編譯、邏輯映射和編程下載等工作。

電子密碼鎖的EDA設計

EDA在通信行業(電信)裏的另一個解釋是企業數據架構,EDA給出了一個企業級的數據架構的總體視圖,並按照電信企業的特徵,進行了框架和層級的劃分。 EDA是電子設計自動化(Electronic Design Automation)的縮寫,在20世紀60年代中期從計算機輔助設計(CAD)、計算機輔助製造(CAM)、計算機輔助測試(CAT)和計算機輔助工程(CAE)的概念發展而來的。利用EDA工具,電子設計師可以從概念、算法、協議等開始設計電子系統,大量工作可以通過計算機完成,並可以將電子產品從電路設計、性能分析到設計出IC版圖或PCB版圖的整個過程的計算機上自動處理完成。現在對EDA的概念或範疇用得很寬。包括在機械、電子、通信、航空航天、化工、礦產、生物、醫學、軍事等各個領域,都有EDA的應用。目前EDA技術已在各大公司、企事業單位和科研教學部門廣泛使用。例如在飛機制造過程中,從設計、性能測試及特性分析直到飛行模擬,都可能涉及到EDA技術。

  1 電子密碼鎖的基本功能

電子密碼鎖主要實現的功能包括:

(1)數碼輸入:按下一個數字鍵,其對應的數字就顯示在最右邊的數碼管上,同時將先前輸入的所有數字向左移動一位。設計密碼爲4位,系統只能顯示前4位輸人的數碼。

(2)數碼清除:當按下清除鍵時,清除前面輸入的`所有值,並顯示爲“----”。

(3)密碼解除:按下55#鍵,可以將電子密碼鎖的舊密碼解除。

(4)密碼更改:將舊密碼解除之後,可以進行密碼更改。輸入任意四位密碼數字,再按#號就可以將輸入的數碼當作新的密碼。

(5)密碼上鎖:輸入新的密碼之後,按下11#鍵,可以進行密碼上鎖操作。

(6)密碼解鎖:按下99#鍵,再輸入數碼;如果輸入與系統儲存密碼一致,密碼鎖就能開啓;否則不能解鎖。

  2 電子密碼鎖的結構原理

2.1 電子密碼鎖的整體結構

電子密碼鎖的整體結構如圖1所示,它包括密碼鎖輸入模塊、控制模塊和顯示模塊等。

2.2 密碼鎖輸入模塊

密碼鎖輸入模塊的電路框圖如圖2所示,它由時序產生電路、鍵盤掃描電路、彈跳消除電路、鍵盤譯碼電路和按鍵存儲電路組成。

時序產生電路用於產生電路中三種不同頻率的工作脈衝波形,包括系統時鐘信號、彈跳消除取樣信號和鍵盤掃描信號。

鍵盤電路可提供鍵盤掃描信號。該信號由ky3~ky0進入鍵盤,其變化的順序爲1110-1101-1011-0111-1110……周而復始。掃描信號 0111代表掃描的爲*、0、#這一排按鍵,當*這個按鍵被按下時,由kx2~kx0讀出的值爲011。按鍵位置的數碼關係如表1所列。

彈跳消除電路可避免誤操作發生。由於設計中採用的矩陣式鍵盤是機械開關結構,因此,在開關切換的瞬間,會在接觸點出現信號來回彈跳的現象。爲使電子密碼鎖可靠工作,必須加上彈跳消除電路。彈跳消除電路採用軟件延時的方法消除抖動,其仿真波形如圖3所示。從圖3中可以看出,若採樣信號連續兩次或超過兩次檢測到高電平信號,說明按鍵狀態確實發生了變化,此時電路輸出一個時鐘週期的按鍵信號;否則當作抖動處理而不予理會,以此來消除抖動。

對於鍵盤譯碼電路,由於圖2中的鍵盤按鍵分爲數字按鍵和功能按鍵,每一個按鍵可負責不同的功能,而鍵盤所產生的輸出(也就是掃描回覆信號)卻無法直接拿來用作密碼鎖控制電路的輸入,所以必須由鍵盤譯碼電路來規劃每個按鍵的輸出形式,以便執行相應的動作。

鍵盤存儲電路可將每次掃描產生的新按鍵數據存儲下來,因此新數據可能會覆蓋前面的數據,所以需要一個按鍵存儲電路,以將整個鍵盤掃描完畢的結果記錄下來。

圖4所示是密碼鎖輸入模塊的仿真波形,圖中,數字鍵數據“0、1、2、3、4、5、6、7、8、9”和功能鍵數據“0100、0001”所得到的輸出不同,由此可證明密碼鎖輸入模塊的正確性。