




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、摘要EDA 技術(shù)的應(yīng)用引起了電子產(chǎn)品系統(tǒng)開發(fā)的革命性變革。利用先進的EDA 工具,基于硬件描述語言,可以進行系統(tǒng)級數(shù)字邏輯電路的設(shè)計。本文簡述了VHDL語言的功能及其特點,并以4位串行手機鍵盤電子密碼鎖設(shè)計為例,介紹了一種在Quartus6.0開發(fā)軟件下,基于VHDL 硬件描述語言的復雜可編程邏輯器件(CPLD)的新型電子密碼鎖設(shè)計方法,闡述了其工作原理和軟硬件設(shè)計方法。該密碼鎖通過掃描電路、鍵盤譯碼電路、彈跳消除電路、控制電路和七段譯碼電路等實現(xiàn)了密碼輸入、數(shù)碼清除、密碼激活、電鎖解除、密碼更改和誤碼報警等功能。本論文對該密碼鎖的程序進行了功能和時序仿真,結(jié)果表明該密碼鎖的功能滿足設(shè)計要求,
2、能夠?qū)崿F(xiàn)正常開鎖、上鎖和修改密碼。該密碼鎖體積小、功耗低、易于維護和升級,有很好的市場前景。關(guān)鍵詞:EDA,VHDL,F(xiàn)PGA,Quartus,電子密碼鎖IIIAbstractABSTRACTElectronic product and system development are being changed revolutionarily with EDA technology. We can design all kinds of digital logical circuits with advanced EDA tools and VHDL. The paper introduces
3、the function and characteristic of programming of VHDL language briefly. Taking the design of the serial 4-bit electron coded lock for example, this paper introduces a new way to design electron coded lock with CPLD and Quartus6.0 as development software and VHDL as hardware description language. It
4、s operating principles and the designing methods of hardware and software are explained in this article. This coded lock can perform the following functions, such as code input, code clear, code activating, code releasing, code correcting and wrong code alarming by scanning circuit, keyboard decode
5、circuit, bounce eliminating circuit, control circuit. The functional and timing simulations are made. The results show that the design specification of the electronic coded lock is met and the unlock/lock and code correcting can be realized .This new electron coded lock has small size, low power. It
6、s maintenance and upgrade are very convenient. And it has a better application prospect.Keywords: EDA , VHDL , FPGA, Quartus, Electron coded lock目錄目錄第1章 引言11.1 課題背景11.2 國內(nèi)外研究現(xiàn)狀21.3 課題主要研究工作2第2章 EDA技術(shù)與VHDL語言簡介32.1 EDA技術(shù)32.1.1 EDA技術(shù)的發(fā)展32.1.2 EDA技術(shù)的基本設(shè)計方法52.2 VHDL簡介62.2.1 VHDL語言62.2.2 VHDL語言的特點9第3章 CPL
7、D/FPGA硬件平臺103.1 可編程邏輯器件的發(fā)展歷史及概述103.2 FPGA/CPLD 概述113.3 CPLD工作原理123.4 FPGA工作原理13第4章 系統(tǒng)的原理設(shè)計144.1 系統(tǒng)設(shè)計要求144.2 系統(tǒng)設(shè)計方案144.2.1 密碼鎖輸入電路的設(shè)計174.2.2 密碼鎖控制電路的設(shè)計234.2.3 密碼鎖顯示電路的設(shè)計244.3 密碼鎖的整體組裝設(shè)計25第5章 系統(tǒng)的程序?qū)崿F(xiàn)265.1 鍵盤輸入去抖電路的VHDL源程序265.2 密碼鎖輸入電路的VHDL源程序295.3 密碼鎖控制電路的VHDL源程序345.4 密碼鎖顯示電路的VHDL源程序38第6章 系統(tǒng)仿真分析及硬件驗證4
8、06.1 系統(tǒng)仿真分析406.1.1 鍵盤輸入去抖電路的仿真406.1.2 密碼鎖輸入電路的仿真406.1.3 密碼鎖控制電路的仿真416.1.4 密碼鎖顯示電路的仿真436.2 系統(tǒng)硬件驗證44第7章 小結(jié)48參考文獻49致謝50第1章 引言第1章 引言1.1 課題背景自古以來,鎖具都是人們心目中的“鐵將軍”,隨著社會物質(zhì)財富的日益增長和人們生活水平的不斷提高,人們對它要求也越來越高,即要安全可靠,又要使用方便。傳統(tǒng)的機械鎖由于其密碼量少,構(gòu)造簡單,安全性差,結(jié)構(gòu)上的局限已難以滿足當前社會管理和防盜要求,特別是在人員經(jīng)常變動的公共場所,如辦公室、賓館、倉庫等地方。電子密碼鎖是集計算機技術(shù)、電
9、子技術(shù)、數(shù)字密碼技術(shù)為一體的機電一體化高科技產(chǎn)品,由于其保密性高,使用靈活性好,安全系數(shù)高,受到了廣大用戶的親呢。而目前大部分電子密碼鎖采用單片機進行設(shè)計,電路比較復雜,性能不夠靈活,其成本高且可靠性較差。因此,密碼鎖的安全性和實用性一直是鎖具的制造者長期以來研究的主題。電子密碼鎖是在實際應(yīng)用中使用得極其廣泛的一種數(shù)字電路,它的主要功能是用來對某些物品進行加密保護,目的是避免無權(quán)人員使用某些設(shè)施或者進行越權(quán)操作,例如銀行自動柜員機、自動售貨機、門卡系統(tǒng)或者保險柜中都含有這種數(shù)字密碼鎖。在電子技術(shù)飛速發(fā)展的今天,具有防盜報警等功能的電子密碼鎖代替彈子鎖和密碼量少、安全性差的機械式密碼鎖已是必然趨
10、勢。電子密碼鎖具有機械鎖無可比擬的優(yōu)越性,它不但可以完成鎖本身的功能,還可以兼有多種功能,如記憶、識別、報警等,電子密碼鎖以其安全性高、成本低、功耗低、易操作等優(yōu)點受到越來越多人的歡迎。通常不同系統(tǒng)中的電子密碼鎖具有不同的功能和操作過程,但基本是相同的,首先輸入密碼,然后系統(tǒng)進行密碼驗證,最后根據(jù)密碼驗證的結(jié)果來進行不同的操作。運用大規(guī)模、超大規(guī)??删幊踢壿嬈骷cEDA(電子設(shè)計自動化)技術(shù)已經(jīng)成為現(xiàn)代數(shù)字技術(shù)發(fā)展的潮流,20世紀90年代,集成電路產(chǎn)業(yè)銷售額增長最快的產(chǎn)業(yè)是現(xiàn)場可編程邏輯集成電路。HDL非常適用于可編程邏輯器件的應(yīng)用設(shè)計。尤其在大容量CPLD和FPGA的應(yīng)用設(shè)計中,若采用以往的
11、布爾方程或門級描述方式,很難快速有效地完成。VHDL 能提供高級語言結(jié)構(gòu),方便地描述大型電路,快速地完成設(shè)計。它支持設(shè)計單元庫的創(chuàng)建,以存儲設(shè)計中重復使用的元件。它是一種標準語言,它的設(shè)計描述可被不同的工具所支持,可用不同器件來實現(xiàn)。1.2 國內(nèi)外研究現(xiàn)狀據(jù)有關(guān)資料介紹,電子密碼鎖的研究從20世紀30年代就開始了,在一些特殊場所早就有所應(yīng)用。這種鎖是通過鍵盤輸入一組密碼,完成開鎖過程。研究這種鎖的初衷,就是為提高鎖具的安全性。由于電子鎖的密鑰量(密碼量)極大,可以與機械鎖配合使用,并且可以避免因鑰匙被仿制而留下安全隱患。電子鎖只需記住一組密碼,無需攜帶金屬鑰匙,免除了人們攜帶金屬鑰匙的煩惱,而
12、被越來越多的人所欣賞、電子鎖的種類繁多,例如數(shù)碼鎖,指紋鎖,磁卡鎖,IC卡鎖,生物鎖等。但較實用的還是按鍵式電子密碼鎖。20世紀80年代后,隨著電子鎖專用集成電路的出現(xiàn),電子鎖的體積縮小,可靠性提高,成本較高,只適合使用在安全性要求較高的場合,且需要有電源提供能量,使用還局限在一定范圍,難以普及,所以對它的研究一直沒有明顯進展。目前,在西方發(fā)達國家,電子密碼鎖己被廣泛應(yīng)用于智能門禁系統(tǒng)中,通過多種更加安全,更加可靠的技術(shù)實現(xiàn)大門的管理。在我國電子密碼鎖的成本還很高,應(yīng)用還不廣泛。希望通過不斷的努力,使電子密碼鎖在我國也能得到廣泛應(yīng)用。目前市場上的幾類密碼鎖都存在不同程度的缺陷:操作繁瑣;密碼輸
13、入不易;密碼量少;無法實現(xiàn)聲音報警功能;也無法拒絕非法用戶多次嘗試。1.3 課題主要研究工作近年來,電子密碼鎖的使用越來越廣泛,目前使用的電子密碼鎖大部分是基于單片機用分離元件實現(xiàn)的,其電路比較復雜、性能不夠靈活、成本較高且可靠性和安全性差?;诖?,為了克服當前市面上的密碼鎖的不足以滿足用戶的不同需求,本設(shè)計采用先進的EDA技術(shù)和VHDL語言,在Quartus環(huán)境下, 采用CPLD(復雜可編程邏輯芯片)為核心器件的新型電子密碼鎖的設(shè)計方法,該電子密碼鎖具有密碼預置、誤碼報警和萬能密碼等功能、體積小、功耗底、價格便宜、安全可靠,維護和升級都十分方便;具有較好的應(yīng)用前景。本課題要完成的主要任務(wù)是基
14、于VHDL語言的電子密碼鎖的設(shè)計和具體的實現(xiàn),重點完成各個模塊的設(shè)計,并保證整個系統(tǒng)的穩(wěn)定性、可靠性和擴展性,充分考慮后續(xù)階段的開發(fā)。3第2章 EDA技術(shù)與VHDL語言簡介第2章 EDA技術(shù)與VHDL語言簡介2.1 EDA技術(shù)2.1.1 EDA技術(shù)的發(fā)展EDA是電子設(shè)計自動化(Electronic Design Automation)的縮寫,在20世紀90年代初從計算機輔助設(shè)計(CAD)、計算機輔助制造(CAM)、計算機輔助測試(CAT)和計算機輔助工程(CAE)的概念發(fā)展而來的。EDA技術(shù)就是以計算機為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言VHDL完成設(shè)計文件,然后由計算機自動地完成
15、邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。EDA技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可靠性,減輕了設(shè)計者的勞動強度。人類社會已進入到高度發(fā)達的信息化社會,信息社會的發(fā)展離不開電子產(chǎn)品的進步?,F(xiàn)代電子產(chǎn)品在性能提高、復雜度增大的同時,價格卻一直呈下降趨勢,而且產(chǎn)品更新?lián)Q代的步伐也越來越快,實現(xiàn)這種進步的主要原因就是生產(chǎn)制造技術(shù)和電子設(shè)計技術(shù)的發(fā)展。前者以微細加工技術(shù)為代表,目前已進展到深亞微米階段,可以在幾平方厘米的芯片上集成數(shù)千萬個晶體管;后者的核心就是EDA技術(shù)。EDA是指以計算機為工作平臺,融合了應(yīng)用電子技術(shù)、計算機技
16、術(shù)、智能化技術(shù)最新成果而研制成的電子CAD通用軟件包,主要能輔助進行三方面的設(shè)計工作:IC設(shè)計、電子電路設(shè)計以及PCB設(shè)計。沒有EDA技術(shù)的支持,想要完成上述超大規(guī)模集成電路的設(shè)計制造是不可想象的,反過來,生產(chǎn)制造技術(shù)的不斷進步又必將對EDA技術(shù)提出新的要求。回顧近30年電子設(shè)計技術(shù)的發(fā)展歷程,可將EDA技術(shù)分為三個階段。七十年代為CAD階段,這一階段人們開始用計算機輔助進行IC版圖編輯和PCB布局布線,取代了手工操作,產(chǎn)生了計算機輔助設(shè)計的概念。八十年代為CAE階段,與CAD相比,除了純粹的圖形繪制功能外,又增加了電路功能設(shè)計和結(jié)構(gòu)設(shè)計,并且通過電氣連接網(wǎng)絡(luò)表將兩者結(jié)合在一起,以實現(xiàn)工程設(shè)計
17、,這就是計算機輔助工程的概念。CAE的主要功能是:原理圖輸入,邏輯仿真,電路分析,自動布局布線,PCB后分析。九十年代為ESDA階段。盡管CAD/CAE技術(shù)取得了巨大的成功,但并沒有把人從繁重的設(shè)計工作中徹底解放出來。在整個設(shè)計過程中,自動化和智能化程度還不高,各種EDA軟件界面千差萬別,學習使用困難,并且互不兼容,直接影響到設(shè)計環(huán)節(jié)間的銜接。基于以上不足,人們開始追求貫徹整個設(shè)計過程的自動化,這就是ESDA即電子系統(tǒng)設(shè)計自動化。ESDA代表了當今電子設(shè)計技術(shù)的最新發(fā)展方向,它的基本特征是:設(shè)計人員按照"自頂向下"的設(shè)計方法,對整個系統(tǒng)進行方案設(shè)計和功能劃分,系統(tǒng)的關(guān)鍵電路
18、用一片或幾片專用集成電路(ASIC)實現(xiàn),然后采用硬件描述語言(HDL)完成系統(tǒng)行為級設(shè)計,最后通過綜合器和適配器生成最終的目標器件。這樣的設(shè)計方法被稱為高層次的電子設(shè)計方法。下面介紹與ESDA基本特征有關(guān)的幾個概念。 (1) “自頂向下”的設(shè)計方法 10年前,電子設(shè)計的基本思路還是選擇標準集成電路“自底向上”(Bottom-Up)地構(gòu)造出一個新的系統(tǒng),這樣的設(shè)計方法就如同一磚一瓦地建造金字塔,不僅效率低、成本高而且還容易出錯。高層次設(shè)計給我們提供了一種“自頂向下”(Top-Down)的全新的設(shè)計方法,這種設(shè)計方法首先從系統(tǒng)設(shè)計入手,在頂層進行功能方框圖的劃分和結(jié)構(gòu)設(shè)計。在方框圖一級進行仿真、
19、糾錯,并用硬件描述語言對高層次的系統(tǒng)行為進行描述,在系統(tǒng)一級進行驗證。然后用綜合優(yōu)化工具生成具體門電路的網(wǎng)表,其對應(yīng)的物理實現(xiàn)級可以是印刷電路板或?qū)S眉呻娐?。由于設(shè)計的主要仿真和調(diào)試過程是在高層次上完成的,這不僅有利于早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計上的錯誤,避免設(shè)計工作的浪費,而且也減少了邏輯功能仿真的工作量,提高了設(shè)計的一次成功率。(2) ASIC設(shè)計現(xiàn)代電子產(chǎn)品的復雜度日益加深,一個電子系統(tǒng)可能由數(shù)萬個中小規(guī)模集成電路構(gòu)成,這就帶來了體積大、功耗大、可靠性差的問題,解決這一問題的有效方法就是采用ASIC(Application Specific Integrated Circuits)芯片進行設(shè)計。A
20、SIC按照設(shè)計方法的不同可分為:全定制ASIC,半定制ASIC,可編程ASIC(也稱為可編程邏輯器件)。設(shè)計全定制ASIC芯片時,設(shè)計師要定義芯片上所有晶體管的幾何圖形和工藝規(guī)則,最后將設(shè)計結(jié)果交由IC廠家掩膜制造完成。優(yōu)點是:芯片可以獲得最優(yōu)的性能,即面積利用率高、速度快、功耗低。缺點是:開發(fā)周期長,費用高,只適合大批量產(chǎn)品開發(fā)。半定制ASIC芯片的版圖設(shè)計方法有所不同,分為門陣列設(shè)計法和標準單元設(shè)計法,這兩種方法都是約束性的設(shè)計方法,其主要目的就是簡化設(shè)計,以犧牲芯片性能為代價來縮短開發(fā)時間。可編程邏輯芯片與上述掩膜ASIC的不同之處在于:設(shè)計人員完成版圖設(shè)計后,在實驗室內(nèi)就可以燒制出自己
21、的芯片,無須IC廠家的參與,大大縮短了開發(fā)周期。可編程邏輯器件自七十年代以來,經(jīng)歷了PAL、GAL、CPLD、FPGA幾個發(fā)展階段,其中 CPLD/FPGA屬高密度可編程邏輯器件,目前集成度已高達200萬門/片,它將掩膜ASIC集成度高的優(yōu)點和可編程邏輯器件設(shè)計生產(chǎn)方便的特點結(jié)合在一起,特別適合于樣品研制或小批量產(chǎn)品開發(fā),使產(chǎn)品能以最快的速度上市,而當市場擴大時,它可以很容易的轉(zhuǎn)由掩膜ASIC實現(xiàn),因此開發(fā)風險也大為降低。上述ASIC芯片,尤其是CPLD/FPGA器件,已成為現(xiàn)代高層次電子設(shè)計方法的實現(xiàn)載體。2.1.2 EDA技術(shù)的基本設(shè)計方法 EDA技術(shù)的每一次進步,都引起了設(shè)計層次上的一個
22、飛躍。物理級設(shè)計主要指IC版圖設(shè)計,一般由半導體廠家完成,對電子工程師并沒有太大的意義,因此本文重點介紹電路級設(shè)計和系統(tǒng)級設(shè)計。(1) 電路級設(shè)計電子工程師接受系統(tǒng)設(shè)計任務(wù)后,首先確定設(shè)計方案,同時要選擇能實現(xiàn)該方案的合適元器件,然后根據(jù)具體的元器件設(shè)計電路原理圖。接著進行第一次仿真,包括數(shù)字電路的邏輯模擬、故障分析、模擬電路的交直流分析、瞬態(tài)分析。系統(tǒng)在進行仿真時,必須要有元件模型庫的支持,計算機上模擬的輸入輸出波形代替了實際電路調(diào)試中的信號源和示波器。這一次仿真主要是檢驗設(shè)計方案在功能方面的正確性。仿真通過后,根據(jù)原理圖產(chǎn)生的電氣連接網(wǎng)絡(luò)表進行PCB板的自動布局布線。在制作PCB板之前還可
23、以進行后分析,包括熱分析、噪聲及竄擾分析、電磁兼容分析、可靠性分析等,并且可以將分析后的結(jié)果參數(shù)反標回電路圖,進行第二次仿真,也稱為后仿真,這一次仿真主要是檢驗PCB板在實際工作環(huán)境中的可行性。由此可見,電路級的EDA技術(shù)使電子工程師在實際的電子系統(tǒng)產(chǎn)生之前,就可以全面地了解系統(tǒng)的功能特性和物理特性,從而將開發(fā)過程中出現(xiàn)的缺陷消滅在設(shè)計階段,不僅縮短了開發(fā)時間,也降低了開發(fā)成本。(2) 系統(tǒng)級設(shè)計進入90年代以來,電子信息類產(chǎn)品的開發(fā)出現(xiàn)了兩個明顯的特點:一是產(chǎn)品的復雜程度加深,二是產(chǎn)品的上市時限緊迫。然而電路級設(shè)計本質(zhì)上是基于門級描述的單層次設(shè)計,設(shè)計的所有工作(包括設(shè)計輸入,仿真和分析,設(shè)
24、計修改等)都是在基本邏輯門這一層次上進行的,顯然這種設(shè)計方法不能適應(yīng)新的形勢,為此引入了一種高層次的電子設(shè)計方法,也稱為系統(tǒng)級的設(shè)計方法。高層次設(shè)計是一種“概念驅(qū)動式”設(shè)計,設(shè)計人員無須通過門級原理圖描述電路,而是針對設(shè)計目標進行功能描述,由于擺脫了電路細節(jié)的束縛,設(shè)計人員可以把精力集中于創(chuàng)造性的概念構(gòu)思與方案上,一旦這些概念構(gòu)思以高層次描述的形式輸入計算機后,EDA系統(tǒng)就能以規(guī)則驅(qū)動的方式自動完成整個設(shè)計。這樣,新的概念得以迅速有效的成為產(chǎn)品,大大縮短了產(chǎn)品的研制周期。不僅如此,高層次設(shè)計只是定義系統(tǒng)的行為特性,可以不涉及實現(xiàn)工藝,在廠家綜合庫的支持下,利用綜合優(yōu)化工具可以將高層次描述轉(zhuǎn)換成
25、針對某種工藝優(yōu)化的網(wǎng)表,工藝轉(zhuǎn)化變得輕松容易。EDA技術(shù)是電子設(shè)計領(lǐng)域的一場革命,目前正處于高速發(fā)展階段,每年都有新的EDA工具問世。2.2 VHDL簡介2.2.1 VHDL語言硬件描述語言(HDL-Hardware Description Language)是一種用于設(shè)計硬件電子系統(tǒng)的計算機語言,它用軟件編程的方式來描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接形式,與傳統(tǒng)的門級描述方式相比,它更適合大規(guī)模系統(tǒng)的設(shè)計,而且VHDL語言可讀性強,易于修改和發(fā)現(xiàn)錯誤。HDL是電子系統(tǒng)硬件行為描述、結(jié)構(gòu)描述、數(shù)據(jù)流描述的語言。目前利用硬件描述語言可以進行數(shù)字電子系統(tǒng)的設(shè)計。隨著研究的深入,利用硬件描述語言
26、進行模擬電子系統(tǒng)設(shè)計或混合電子系統(tǒng)設(shè)計,也正在探索中。硬件描述的語言種類很多,有的從PASCAL發(fā)展而來,也有一些從C語言發(fā)展而來。有些HDL成為IEEE標準,但大部分是本企業(yè)標準。HDL發(fā)展的技術(shù)源頭是:在HDL形成發(fā)展之前,已有了許多程序設(shè)計語言,如匯編、C、PASCAL、FORTRAN、PROLOG等。這些語言運行在不同硬件平臺、不同的操作環(huán)境中,它們適合于描述過程和算法,不適合作硬件描述。在利用EDA工具進行電子設(shè)計時,邏輯圖、分立電子元件作為整個越來越復雜的電子系統(tǒng)的設(shè)計已不適用。任何一種EDA工具,都需要一種硬件描述語言作為EDA工具的工作語言。早期的硬件描述語言,如ABEL-HD
27、L、AHDL,是由不同的EDA廠商開發(fā)的,互相不兼容,而且不支持多層次設(shè)計,層次間翻譯工作要由人工完成。為了克服以上缺陷,1985年美國國防部正式推出了VHDL(Very High Speed IC Hardware Description Language)語言,即超高速集成電路硬件描述語言;1987年IEEE采納VHDL為硬件描述語言標準(IEEESTD-1076)。VHDL是一種全方位的硬件描述語言,包括系統(tǒng)行為級、寄存器傳輸級和邏輯門級多個設(shè)計層次,支持結(jié)構(gòu)、數(shù)據(jù)流、行為三種描述形式的混合描述,因此VHDL幾乎覆蓋了以往各種硬件描述語言的功能,整個自頂向下或自底向上的電路設(shè)計過程都可以
28、用VHDL來完成。另外,VHDL還具有以下優(yōu)點:VHDL的寬范圍描述能力使它成為高層次設(shè)計的核心,將設(shè)計人員的工作重心提高到了系統(tǒng)功能的實現(xiàn)與調(diào)試,只需花較少的精力用于物理實現(xiàn)。VHDL可以用簡潔明確的代碼描述來進行復雜控制邏輯的設(shè)計,靈活且方便,而且也便于設(shè)計結(jié)果的交流、保存和重用。VHDL的設(shè)計不依賴于特定的器件,方便了工藝的轉(zhuǎn)換。VHDL是一個標準語言,為眾多的EDA廠商支持,因此移植性好。目前數(shù)字系統(tǒng)的設(shè)計可以直接面向用戶需求,根據(jù)系統(tǒng)的行為和功能要求 ,自上而下地逐層完成相應(yīng)的描述、綜合、優(yōu)化、仿真與驗證,直到生成器件,實現(xiàn)電子設(shè)計自動化。其中電子設(shè)計自動化EDA的關(guān)鍵技術(shù)之一就是可
29、以用硬件描述語言來描述硬件電路。VHDL是用來描述從抽象到具體級別硬件的工業(yè)標準語言,它是由美國國防部在20世紀80年代開發(fā)的HDL,現(xiàn)在已成為 IEEE承認的標準硬件描述語言。VHDL 支持硬件的設(shè)計、驗證、綜合和測試,以及硬件設(shè)計數(shù)據(jù)的交換、維護、修改和硬件的實現(xiàn),具有描述能力強、生命周期長、支持大規(guī)模設(shè)計的分解和已有設(shè)計的再利用等優(yōu)點。VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu)、行為和功能,其程序結(jié)構(gòu)特點是將一個電路模塊或一個系統(tǒng)分成端口和內(nèi)部功能算法實現(xiàn)兩部分。對于一個電路模塊或者數(shù)字系統(tǒng)而言,定義了外部端口后,一旦內(nèi)部功能算法完成后,其他系統(tǒng)可以直接依據(jù)外部端口調(diào)用該電路模塊或數(shù)字系統(tǒng),而不
30、必知道其內(nèi)部結(jié)構(gòu)和算法。VHDL 的特點使得電子系統(tǒng)新的設(shè)計方法“自頂向下”設(shè)計方法更加容易實現(xiàn)。可以先對整個系統(tǒng)進行方案設(shè)計,按功能劃分成若干單元模塊,然后對每個單元模塊進一步細分,直到簡單實現(xiàn)的單元電路。VHDL語言的設(shè)計方法是一種高層次的設(shè)計方法,也稱為系統(tǒng)級的設(shè)計方法,其設(shè)計步驟如下: 第一步:按照“自頂向下”的設(shè)計方法進行系統(tǒng)劃分。第二步:輸入VHDL語言代碼,這是高層次設(shè)計中最為普遍的輸入方式。此外,還可以采用圖形輸入方式(框圖,狀態(tài)圖等),這種輸入方式具有直觀、容易理解的優(yōu)點。第三步:將以上的設(shè)計輸入編譯成標準的VHDL文件。對于大型設(shè)計,還要進行代碼級的功能仿真,主要是檢驗系統(tǒng)
31、功能設(shè)計的正確性,因為對于大型設(shè)計,綜合、適配要花費數(shù)小時,在綜合前對源代碼仿真,就可以大大減少設(shè)計重復的次數(shù)和時間,一般情況下,可略去這一仿真步驟。第四步:利用綜合器對VHDL源代碼進行綜合優(yōu)化處理,生成門級描述的網(wǎng)表文件,這是將高層次描述轉(zhuǎn)化為硬件電路的關(guān)鍵步驟。綜合優(yōu)化是針對ASIC芯片供應(yīng)商的某一產(chǎn)品系列進行的,所以綜合的過程要在相應(yīng)的廠家綜合庫支持下才能完成。綜合后,可利用產(chǎn)生的網(wǎng)表文件進行適配前的時序仿真,仿真過程不涉及具體器件的硬件特性,較為粗略。一般設(shè)計,這一仿真步驟也可略去。第五步:利用適配器將綜合后的網(wǎng)表文件針對某一具體的目標器件進行邏輯映射操作,包括底層器件配置、邏輯分割
32、、邏輯優(yōu)化和布局布線。適配完成后,產(chǎn)生多項設(shè)計結(jié)果:(1) 適配報告,包括芯片內(nèi)部資源利用情況,設(shè)計的布爾方程描述情況等;(2) 適配后的仿真模型;(3) 器件編程文件。根據(jù)適配后的仿真模型,可以進行適配后的時序仿真,因為已經(jīng)得到器件的實際硬件特性(如時延特性),所以仿真結(jié)果能比較精確地預期未來芯片的實際性能。如果仿真結(jié)果達不到設(shè)計要求,就需要修改VHDL源代碼或選擇不同速度品質(zhì)的器件,直至滿足設(shè)計要求。第六步:將適配器產(chǎn)生的器件編程文件通過編程器或下載電纜載入到目標芯片F(xiàn)PGA或CPLD中。如果是大批量產(chǎn)品開發(fā),通過更換相應(yīng)的廠家綜合庫,可以很容易轉(zhuǎn)由ASIC形式實現(xiàn)。2.2.2 VHDL語
33、言的特點應(yīng)用VHDL進行系統(tǒng)設(shè)計,有以下幾方面的特點:(1) 功能強大 VHDL具有功能強大的語言結(jié)構(gòu)。它可以用明確的代碼描述復雜的控制邏輯設(shè)計。并且具有多層次的設(shè)計描述功能,支持設(shè)計庫和可重復使用的元件生成。VHDL是一種設(shè)計、仿真和綜合的標準硬件描述語言。(2) 可移植性 VHDL語言是一個標準語言,其設(shè)計描述可以為不同的EDA工具支持。它可以從一個仿真工具移植到另一個仿真工具,從一個綜合工具移植到另一個綜合工具,從一個工作平臺移植到另一個工作平臺。此外,通過更換庫再重新綜合很容易移植為ASIC設(shè)計。(3) 獨立性 VHDL的硬件描述與具體的工藝技術(shù)和硬件結(jié)構(gòu)無關(guān)。設(shè)計者可以不懂硬件的結(jié)構(gòu)
34、,也不必管最終設(shè)計實現(xiàn)的目標器件是什么,而進行獨立的設(shè)計。程序設(shè)計的硬件目標器件有廣闊的選擇范圍,可以是各系列的CPLD、FPGA及各種門陣列器件。(4) 可操作性 由于VHDL具有類屬描述語句和子程序調(diào)用等功能,對于已完成的設(shè)計,在不改變源程序的條件下,只需改變端口類屬參量或函數(shù),就能輕易地改變設(shè)計的規(guī)模和結(jié)構(gòu)。(5) 靈活性 VHDL最初是作為一種仿真標準格式出現(xiàn)的,有著豐富的仿真語句和庫函數(shù)。使其在任何大系統(tǒng)的設(shè)計中,隨時可對設(shè)計進行仿真模擬。所以,即使在遠離門級的高層次(即使設(shè)計尚未完成時),設(shè)計者就能夠?qū)φ麄€工程設(shè)計的結(jié)構(gòu)和功能的可行性進行查驗,并做出決策。9第3章 CPLD/FPG
35、A硬件平臺第3章 CPLD/FPGA硬件平臺20世紀90年代,國際上電子和計算機技術(shù)較先進的國家,一直在積極探索新的電子電路設(shè)計方法,并在設(shè)計方法、工具等方面進行了徹底的變革,取得了巨大成功。在電子技術(shù)設(shè)計領(lǐng)域,可編程邏輯器件(如CPLD、FPGA)的應(yīng)用,已得到廣泛的普及,這些器件為數(shù)字系統(tǒng)的設(shè)計帶來了極大的靈活性。這些器件可以通過軟件編程而對其硬件結(jié)構(gòu)和工作方式進行重構(gòu),從而使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快捷。這一切極大地改變了傳統(tǒng)的數(shù)字系統(tǒng)設(shè)計方法、設(shè)計過程和設(shè)計觀念,促進了EDA技術(shù)的迅速發(fā)展。 3.1 可編程邏輯器件的發(fā)展歷史及概述 當今社會是數(shù)字化的社會,是數(shù)字集
36、成電路廣泛應(yīng)用的社會。數(shù)字集成電路本身在不斷地進行更新?lián)Q代。它由早期的電子管、晶體管、小中規(guī)模集成電路、發(fā)展到超大規(guī)模集成電路(VLSIC,幾萬門以上)以及許多具有特定功能的專用集成電路。但是,隨著微電子技術(shù)的發(fā)展,設(shè)計與制造集成電路的任務(wù)已不完全由半導體廠商來獨立承擔。系統(tǒng)設(shè)計師們更愿意自己設(shè)計專用集成電路(ASIC)芯片,而且希望ASIC的設(shè)計周期盡可能短,最好是在實驗室里就能設(shè)計出合適的ASIC芯片,并且立即投入實際應(yīng)用之中,因而出現(xiàn)了現(xiàn)場可編程邏輯器件(FPLD),其中應(yīng)用最廣泛的當屬現(xiàn)場可編程門陣列(FPGA)和復雜可編程邏輯器件(CPLD)。早期的可編程邏輯器件只有可編程只讀存貯器
37、(PROM)、紫外線可擦除只讀存貯器(EPROM)和電可擦除只讀存貯器(EEPROM)三種。由于結(jié)構(gòu)的限制,它們只能完成簡單的數(shù)字邏輯功能。 其后,出現(xiàn)了一類結(jié)構(gòu)上稍復雜的可編程芯片,即可編程邏輯器件(PLD),它能夠完成各種數(shù)字邏輯功能。典型的PLD由一個“與”門和一個“或”門陣列組成,而任意一個組合邏輯都可以用“與一或”表達式來描述,所以,PLD能以乘積和的形式完成大量的組合邏輯功能。這一階段的產(chǎn)品主要有PAL(可編程陣列邏輯)和GAL(通用陣列邏輯)。PAL由一個可編程的“與”平面和一個固定的“或”平面構(gòu)成,或門的輸。出可以通過觸發(fā)器有選擇地被置為寄存狀態(tài)。PAL器件是現(xiàn)場可編程的,它的
38、實現(xiàn)工藝有反熔絲技術(shù)、EPROM技術(shù)和EEPROM技術(shù)。還有一類結(jié)構(gòu)更為靈活的邏輯器件是可編程邏輯陣列(PLA),它也由一個“與”平面和一個“或”平面構(gòu)成,但是這兩個平面的連接關(guān)系是可編程的。PLA器件既有現(xiàn)場可編程的,也有掩膜可編程的。在PAL的基礎(chǔ)上,又發(fā)展了一種通用陣列邏輯GAL (Generic Array Logic),如GAL16V8,GAL22V10 等。它采用了EEPROM工藝,實現(xiàn)了電可按除、電可改寫,其輸出結(jié)構(gòu)是可編程的邏輯宏單元,因而它的設(shè)計具有很強的靈活性,至今仍有許多人使用。 這些早期的PLD器件的一個共同特點是可以實現(xiàn)速度特性較好的邏輯功能,但其過于簡單的結(jié)構(gòu)也使它
39、們只能實現(xiàn)規(guī)模較小的電路。為了彌補這一缺陷,20世紀80年代中期。Altera和Xilinx分別推出了類似于PAL結(jié)構(gòu)的擴展型 CPLD(Complex Programmab1e Logic Dvice)和與標準門陣列類似的FPGA(Field Programmable Gate Array),它們都具有體系結(jié)構(gòu)和邏輯單元靈活、集成度高以及適用范圍寬等特點。這兩種器件兼容了PLD和通用門陣列的優(yōu)點,可實現(xiàn)較大規(guī)模的電路,編程也很靈活。與門陣列等其它ASIC(Application Specific IC)相比,它們又具有設(shè)計開發(fā)周期短、設(shè)計制造成本低、開發(fā)工具先進、標準產(chǎn)品無需測試、質(zhì)量穩(wěn)定以
40、及可實時在線檢驗等優(yōu)點,因此被廣泛應(yīng)用于產(chǎn)品的原型設(shè)計和產(chǎn)品生產(chǎn)(一般在10,000件以下)之中。幾乎所有應(yīng)用門陣列、PLD和中小規(guī)模通用數(shù)字集成電路的場合均可應(yīng)用FPGA和CPLD器件。3.2 FPGA/CPLD 概述FPGA(現(xiàn)場可編程門陣列)與 CPLD(復雜可編程邏輯器件)都是可編程邏輯器件,它們是在PAL,GAL等邏輯器件的基礎(chǔ)之上發(fā)展起來的。同以往的PAL,GAL等相比較,F(xiàn)PGA/CPLD的規(guī)模比較大,它可以替代幾十甚至幾千塊通用IC芯片。這樣的FPGA/CPLD實際上就是一個子系統(tǒng)部件。這種芯片受到世界范圍內(nèi)電子工程設(shè)計人員的廣泛關(guān)注和普遍歡迎。經(jīng)過了十幾年的發(fā)展,許多公司都開
41、發(fā)出了多種可編程邏輯器件。比較典型的就是Xilinx公司的FPGA器件系列和Altera公司的CPLD器件系列,它們開發(fā)較早,占用了較大的PLD市場。通常來說,在歐洲用Xilinx的人多,在日本和亞太地區(qū)用ALTERA的人多,在美國則是平分秋色。全球PLD/FPGA產(chǎn)品60%以上是由Altera和Xilinx提供的。可以講Altera和Xilinx共同決定了PLD技術(shù)的發(fā)展方向。當然還有許多其它類型器件,如:Lattice,Vantis,Actel,Quicklogic,Lucent等。盡管FPGA,CPLD和其它類型PLD的結(jié)構(gòu)各有其特點和長處,但概括起來,它們是由三大部分組成的,一個二維的
42、邏輯塊陣列,構(gòu)成了PLD器件的邏輯組成核心。輸入/輸出塊:連接邏輯塊的互連資源。連線資源:由各種長度的連線線段組成,其中也有一些可編程的連接開關(guān),它們用于邏輯塊之間、邏輯塊與輸入/輸出塊之間的連接。對用戶而言,CPLD與FPGA的內(nèi)部結(jié)構(gòu)稍有不同,但用法一樣,所以多數(shù)情況下,不加以區(qū)分。FPGA/CPLD芯片都是特殊的ASIC芯片,它們除了具有ASIC的特點之外,還具有以下幾個優(yōu)點:(1) 隨著VlSI(Very Large Scale IC,超大規(guī)模集成電路)工藝的不斷提高單一芯片內(nèi)部可以容納上百萬個晶體管,F(xiàn)PGA/CPLD芯片的規(guī)模也越來越大,其單片邏輯門數(shù)已達到上百萬門,它所能實現(xiàn)的功
43、能也越來越強,同時也可以實現(xiàn)系統(tǒng)集成。(2) FPGA/CPLD芯片在出廠之前都做過百分之百的測試,不需要設(shè)計人員承擔投片風險和費用,設(shè)計人員只需在自己的實驗室里就可以通過相關(guān)的軟硬件環(huán)境來完成芯片的最終功能設(shè)計。所以,F(xiàn)PGA/CPLD的資金投入小,節(jié)省了許多潛在的花費。(3) 用戶可以反復地編程、擦除、使用或者在外圍電路不動的情況下用不同軟件就可實現(xiàn)不同的功能。所以,用FPGA/PLD 試制樣片,能以最快的速度占領(lǐng)市場。FPGA/CPLD軟件包中有各種輸入工具和仿真工具,及版圖設(shè)計工具和編程器等全線產(chǎn)品,電路設(shè)計人員在很短的時間內(nèi)就可完成電路的輸入、編譯、優(yōu)化、仿真,直至最后芯片的制作。當
44、電路有少量改動時,更能顯示出FPGA/CPLD的優(yōu)勢。3.3 CPLD工作原理 CPLD(Complex Programmable Logic Device),即復雜可編程邏輯器件。一種較PLD為復雜的邏輯元件。CPLD是一種用戶根據(jù)各自需要而自行構(gòu)造邏輯功能的數(shù)字集成電路。其基本設(shè)計方法是借助集成開發(fā)軟件平臺,用原理圖、硬件描述語言等方法,生成相應(yīng)的目標文件,通過下載電纜(“在系統(tǒng)”編程)將代碼傳送到目標芯片中,實現(xiàn)設(shè)計的數(shù)字系統(tǒng)。CPLD器件特點:它具有編程靈活、集成度高、設(shè)計開發(fā)周期短、適用范圍寬、開發(fā)工具先進、設(shè)計制造成本低、對設(shè)計者的硬件經(jīng)驗要求低、標準產(chǎn)品無需測試、保密性強、價格大
45、眾化等特點,可實現(xiàn)較大規(guī)模的電路設(shè)計,因此被廣泛應(yīng)用于產(chǎn)品的原型設(shè)計和產(chǎn)品生產(chǎn)(一般在10,000件以下)之中。幾乎所有應(yīng)用中小規(guī)模通用數(shù)字集成電路的場合均可應(yīng)用CPLD器件。CPLD器件已成為電子產(chǎn)品不可缺少的組成部分,它的設(shè)計和應(yīng)用成為電子工程師必備的一種技能。3.4 FPGA工作原理FPGA(FieldProgrammable Gate Array),即現(xiàn)場可編程門陣列,它是在PAL、GAL、EPLD等可編程器件的基礎(chǔ)上進一步發(fā)展的產(chǎn)物。它是作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。FPGA采用了邏輯單元
46、陣列LCA(Logic Cell Array)這樣一個新概念,內(nèi)部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和內(nèi)部連線(Interconnect)三個部分。FPGA器件特點:(1) 采用FPGA設(shè)計ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。(2) FPGA可做其它全定制或半定制ASIC電路的中試樣片。(3) FPGA內(nèi)部有豐富的觸發(fā)器和IO引腳。(4) FPGA是ASIC電路中設(shè)計周期最短、開發(fā)費用最低、風險最小的器件之一。(5) FPGA采用高速CHMOS工藝,功耗低,可以與CMOS、T
47、TL電平兼容??梢哉f,F(xiàn)PGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。 FPGA是由存放在片內(nèi)RAM中的程序來設(shè)置其工作狀態(tài)的,因此,工作時需要對片內(nèi)的RAM進行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。13第4章 系統(tǒng)的原理設(shè)計第4章 系統(tǒng)的原理設(shè)計下面以4位串行電子密碼鎖設(shè)計電路為例,來說明在美國 Altera 公司的Quartus開發(fā)平臺上使用VHDL 進行數(shù)字系統(tǒng)設(shè)計的過程和方法。4.1 系統(tǒng)設(shè)計要求設(shè)計一個具有較高安全性和較低成本的通用電子密碼鎖,其具體功能要求如下:(1) 數(shù)碼輸入:每按下一個數(shù)字鍵,就輸入一個數(shù)值,并在顯示器上的最右方顯示出該數(shù)值,同時將
48、先前輸入的數(shù)據(jù)依序左移一個數(shù)字位置。(2) 數(shù)碼清除:按下此鍵可清除前面所有的輸入值,清除成為“0000”。(3) 密碼更改:按下此鍵時會將目前的數(shù)字設(shè)定成新的密碼。(4) 激活電鎖:按下此鍵可將密碼鎖上鎖。(5) 解除電鎖:按下此鍵會檢查輸入的密碼是否正確,密碼正確即開鎖。(6) 密碼預置:為管理員創(chuàng)建萬用密碼以備管理。(7) 系統(tǒng)報警:開鎖三次失敗后自動報警。4.2 系統(tǒng)設(shè)計方案本電路的主要控制部分和接口輸入部分都是在FPGA內(nèi)部通過VHDL語言實現(xiàn)的,所以FPGA模塊為本設(shè)計的核心。根據(jù)系統(tǒng)要求的功能,以及FPGA芯片容量的分級,本論文選用ALTERA公司MAX7000S系列的EPM71
49、28SLC器件作為主控芯片,它是一種基于乘積項結(jié)構(gòu)的復雜可編程邏輯器件,它的基本邏輯單元是由一些與、或陣列加上觸發(fā)器構(gòu)成,其中與或陣列完成組合邏輯功能,觸發(fā)器完成時序邏輯。它的邏輯控制靈活,可反復編程,有利于系統(tǒng)的擴展和修改,而且其集成度高,保密性好。作為通用電子密碼鎖,主要由三個部分組成:數(shù)字密碼輸入電路、密碼鎖控制電路和密碼鎖顯示電路。作為電子密碼鎖的輸入電路,可供選擇的方案有數(shù)字機械式鍵盤和觸摸式數(shù)字鍵盤等多種。雖然機械式鍵盤存在一些諸如機械產(chǎn)生的彈跳消除問題和機械部分的接觸等問題,但是和觸摸式的4×3鍵盤相比,機械式鍵盤具有低成本、可靠性高、構(gòu)成電路簡單、技術(shù)成熟和應(yīng)用廣泛等
50、特點,因此將其應(yīng)用到通用數(shù)字電子密碼鎖中還是比較適宜的。本設(shè)計中采用一個4×3的通用數(shù)字機械鍵盤作為該設(shè)計的輸入設(shè)備。數(shù)字電子密碼鎖的顯示信息電路可采用LED數(shù)碼管顯示和液晶屏幕顯示兩種。液晶屏幕顯示具有高速顯示、高可靠性、易于擴展和升級等優(yōu)點,但是普通液晶顯示屏存在亮度低、對復雜環(huán)境的適應(yīng)能力差等缺點,在低亮度的環(huán)境下還需要加入其他輔助的照明設(shè)備,驅(qū)動電路設(shè)計相對復雜,因此本設(shè)計的顯示電路仍使用通用的LED數(shù)碼管。根據(jù)以上選定的輸入設(shè)備和顯示器件,并考慮到實現(xiàn)各項數(shù)字密碼鎖功能的具體要求,密碼鎖結(jié)構(gòu)框圖如圖4-1所示。圖4-1 密碼鎖結(jié)構(gòu)框圖鍵盤:
51、; 用戶對系統(tǒng)輸入密碼,采用4×3數(shù)字機械式鍵盤實現(xiàn)顯示器: 用來顯示輸入的密碼,采用4個LED數(shù)碼管實現(xiàn)時鐘脈沖器: 用來產(chǎn)生方波信號CPLD控制部分:核心部分,實現(xiàn)分頻、內(nèi)部邏輯、數(shù)字比較、數(shù)據(jù)存儲、譯碼等功能整個電子密碼鎖系統(tǒng)的總體組成框圖如圖4-2所示。(1) 密碼鎖輸入電路包括時序產(chǎn)生電路、鍵盤掃描電路、鍵盤彈跳消除電路、鍵盤譯碼電路等幾
52、個小的功能電路。(2) 密碼鎖控制電路包括按鍵數(shù)據(jù)的緩沖存儲電路,密碼的清除、變更、存儲、激活電鎖電路(寄存器清除信號發(fā)生電路),密碼核對(數(shù)值比較電路),解鎖電路(開/關(guān)門鎖電路)等幾個小的功能電路。(3) 七段數(shù)碼管顯示電路主要將待顯示數(shù)據(jù)的BCD碼轉(zhuǎn)換成數(shù)碼器的七段顯示驅(qū)動編碼(數(shù)據(jù)選擇電路,BCD對七段顯示器譯碼電路,七段顯示器掃描電路)。圖4-2 電子密碼鎖系統(tǒng)總體框圖電子密碼鎖是由密碼鎖主體以及附加的外圍指示電路組成的,其中密碼鎖主體的主要作用是接收密碼并進行密碼的驗證操作;附加的外圍指示電路的主要作用是用來顯示輸入的密碼和根據(jù)密碼驗證的結(jié)果來給出不同的指示燈顯示或者啟動報警裝置,
53、而報警裝置則通常采用揚聲器。由于外圍電路(紅黃綠燈,報警器)較為復雜,我只能簡單的設(shè)計一些思路。電子密碼鎖的功能如圖4-3所示:數(shù)字鍵盤門禁開啟等待下次輸入內(nèi)部安鍵解除報警按鍵開鎖密碼輸入密碼正確密碼錯誤報警器鳴叫指示黃亮燈指示紅亮燈指示綠亮燈3次圖4-3 電子密碼鎖功能簡圖4.2.1 密碼鎖輸入電路的設(shè)計圖4-4是電子密碼鎖的輸入電路框圖,由鍵盤掃描電路、彈跳消除電路、鍵盤譯碼電路、按鍵數(shù)據(jù)緩存器,加上外接的一個4×3矩陣式鍵盤組成。 圖4-4 密碼鎖的輸入電路框圖 1矩陣式鍵盤的工作原理矩陣式鍵盤是一種常見的輸入裝置,在日常的生活中,矩陣式鍵盤在計算機、電話、手機、微波爐等各式電
54、子產(chǎn)品上已經(jīng)被廣泛應(yīng)用。圖4-5是一個4×3矩陣式鍵盤的面板配置圖,其中數(shù)字09作為密碼數(shù)字輸入按鍵,“*”作為“上鎖”功能按鍵,“#”作為“解鎖/清除”功能按鍵(輸入數(shù)字小于4位時按下此鍵表示清除鍵,輸人數(shù)字等于4位時表示解鎖鍵)。123456789*0#KY3.0KX2.0經(jīng)上拉電阻接VCC1101111010110111011101110圖4-5 4×3矩陣式鍵盤的面板配置鍵盤上的每一個按鍵其實就是一個開關(guān)電路,當某鍵被按下時,該按鍵的接點回呈現(xiàn)0的狀態(tài),反之,未被按下時呈現(xiàn)邏輯1的狀態(tài)。掃描信號由KY3KY0進入鍵盤,變化的順序依次為1110110110110111
55、1110。每一次掃描一排,依次地周而復始,例如現(xiàn)在的掃描信號為1011,代表目前正在掃描7、8、9這一排的按鍵,如果這排當中沒有按鍵被按下的話,則由KX2KX0讀出的值為111;反之當7這個按鍵被按下的話,則由KX2KX0讀出的值為011。根據(jù)上面所述原理,我們可得到各按鍵的位置與數(shù)碼關(guān)系如表4-1所示。表4-1 按鍵位置與數(shù)碼關(guān)系KY3KY0111011101110110111011101101110111011011101110111KX2KX0011101110011101110011101110011101110按鍵號123456789*0#若從KX2KX0讀出的值皆為1時,代表該列沒
56、有按鍵被按下,則不進行按鍵譯碼的動作,反之,如果有按鍵被按下時,則應(yīng)將KX2KX0讀出的值送至譯碼電路進行編碼。2密碼鎖輸入電路各主要功能模塊的設(shè)計 (1) 時序產(chǎn)生電路本時序產(chǎn)生電路中使用了三種不同頻率的工作脈沖波形:系統(tǒng)時鐘脈沖(它是系統(tǒng)內(nèi)部所有時鐘脈沖的源頭,且其頻率最高)、彈跳消除取樣信號、鍵盤掃描信號。當一個系統(tǒng)中需要使用多種操作頻率的脈沖波形時,最方便的方法之一就是利用一個自由計數(shù)器來產(chǎn)生各種需要的頻率。也就是先建立一個N位計數(shù)器,N的大小根據(jù)電路的需求決定,N的值越大,電路可以分頻的次數(shù)就越多,這樣就可以獲得更大的頻率變化,以便提供多種不同頻率的時鐘信號。若輸入時鐘為CLK,N位
57、計數(shù)器的輸出為QN-1.0,則Q(0)為CLK的2分頻脈沖信號,Q(1)為CLK的4分頻脈沖信號,Q(2)為CLK的8分頻脈沖信號 Q(N-1)為CLK的2N分頻脈沖信號;Q(5 DOWNTO 4)取得的是一個脈沖波形序列,其值依次為000110110001周期性變化,其變化頻率為CLK的25分頻,也就是32分頻。我們利用以上規(guī)律即可得到各種我們所需要頻率的信號或信號序列。(2) 鍵盤掃描電路掃描電路的作用是用來提供鍵盤掃描信號(表1中的KY3KY0)的,掃描信號變化的順序依次為11101101101101111110依序地周而復始。掃描時依次分別掃描四列按鍵,當掃描信號為1110時掃描KY3這一排按鍵;當掃描信號為1101時,掃描KY2這一排按鍵;當掃描信號為1011時掃描KY1這一排按鍵;當掃描信號為0111時,掃描KY0這一排按鍵;每掃描一排按鍵就檢查一次是否有鍵
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年西寧貨運從業(yè)資格證題庫年答案
- 《巴斯奎特涂鴉》幼兒園小學少兒美術(shù)教育繪畫課件創(chuàng)意教程教案
- 快遞公司常用合同
- 合伙開辦工廠經(jīng)營協(xié)議書
- 會員消費記錄及積分兌換統(tǒng)計表
- 幼兒園運動員發(fā)言稿
- Galanganone-B-生命科學試劑-MCE
- CKP-25-生命科學試劑-MCE
- 生態(tài)學環(huán)境保護原理知識測試卷
- 小學競選班干部發(fā)言稿
- 2024屆陜西省西安地區(qū)高考模擬英語試題試卷含解析
- 《研學旅行課程設(shè)計》課件-2認識研學旅行的參與方
- 安全警示教育的會議記錄內(nèi)容
- 2024年中鐵十一局集團限公司招聘公開引進高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- 2024年廣東深圳市龍崗坂田街道招考綜合網(wǎng)格員招聘筆試沖刺題(帶答案解析)
- 人力資源外包投標方案
- 利那洛肽治療便秘病例
- MOOC 高等數(shù)學(上)-西北工業(yè)大學 中國大學慕課答案
- 2024年OTC焊接機器人基本操作培訓
- 參考消息電子版在線閱讀(角度區(qū))
- 小學五年級《美術(shù)》上冊知識點匯總
評論
0/150
提交評論