基于FPGA的電子密鎖的設計長江大學_第1頁
基于FPGA的電子密鎖的設計長江大學_第2頁
基于FPGA的電子密鎖的設計長江大學_第3頁
基于FPGA的電子密鎖的設計長江大學_第4頁
基于FPGA的電子密鎖的設計長江大學_第5頁
已閱讀5頁,還剩54頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、畢業(yè)論文(設計)題 目 名 稱: 基于fpga的電子密鎖的設計 題 目 類 型: 畢 業(yè) 設 計 院 (系): 電 子 信 息 學 院 專 業(yè) 班 級: 學 生 姓 名: 指 導 教 師: 陳 英 芝 輔 導 教 師: 陳 英 芝 時 間:2013年3月11日至2013年6月10 1目 錄畢業(yè)設計(論文)任務書畢業(yè)設計(論文)開題報告長江大學畢業(yè)設計(論文)指導教師評審意見長江大學畢業(yè)設計(論文)評閱教師評語長江大學畢業(yè)設計(論文)答辯記錄及成績評定長江大學畢業(yè)設計(論文)中外文摘要1 前言11.1本課題研究的國內外現(xiàn)狀及其發(fā)展21.2本課題研究的目的和意義32 設計背景知識介紹32.1 常用

2、eda軟件介紹42.2 fpga硬件設計描述52.2.1 fpga的設計流程52.2.2 vhdl語言的基本結構及特點82.2.3 自上而下(top down)的設計方法102.3 quartus綜述及設計流程113 電子密碼鎖系統(tǒng)總體設計123.1 電子密碼鎖系統(tǒng)設計要求123.2 電子密碼鎖設計的原理123.3 方案的提出143.4 系統(tǒng)設計和各功能模塊的描述143.5 系統(tǒng)流程164 系統(tǒng)詳細設計174.1 電子密碼鎖輸入模塊174.1.1 時序產生電路174.1.2 按鍵消抖電路184.1.3 鍵盤掃描電路194.1.4 鍵盤譯碼電路204.1.5 鍵盤輸入模塊的實現(xiàn)204.2 電子密

3、碼鎖控制模塊214.2.1 控制模塊的功能描述214.2.2 控制模塊的實現(xiàn)214.3 電子密碼鎖顯示模塊224.3.1 數(shù)碼管顯示原理224.3.2 譯碼顯示的實現(xiàn)235 系統(tǒng)仿真245.1 去抖模塊的仿真245.2 密碼鎖輸入電路的仿真255.3 密碼鎖控制電路的仿真255.4 數(shù)碼管譯碼器仿真276 結束語27參考文獻28致謝29附錄1:彈跳消除電路主要程序30附錄2:dcfq 模塊的主要程序31附錄3:debouncing 模塊主要程序32附錄4:掃描信號發(fā)生器主要程序33附錄5:鍵盤譯碼電路主要程序34附錄6:七段譯碼器主要程序36畢業(yè)設計(論文)任務書學 院(系) 電子信息 專業(yè)

4、自動化 班級 學生姓名 指導教師/職稱 陳英芝 1. 畢業(yè)設計(論文)題目:基于fpga的電子密鎖的設計2. 畢業(yè)設計(論文)起止時間:2013年3月11日-2013年6月10日 3. 畢業(yè)設計(論文)所需資料及原始數(shù)據(jù)(指導教師選定部分)1譚會生,張昌凡,鄭進.eda技術及應用m.第2版.西安:西安電子科技大學出版社,20022夏宇聞.verilog hdlm.北京:高等教育出版社,20063江國強.eda技術及應用m.北京:電子工業(yè)出版社,20064謝自美.電子線路設計實驗測試m武漢:華中科技大學出版社,20035康華光.電子技術基礎數(shù)字部分m武漢:高等教育出版社,20056盧毅,賴杰編著

5、.vhdl與數(shù)字電路設計m 出版社:科學出版社20037王鎖平編著.電子設計自動化(eda)教程m.電子科技大學出版社. 2000 8通過查閱有關論文4. 畢業(yè)設計(論文)應完成的主要內容 密碼鎖輸入電路和密碼鎖控制電路的實現(xiàn)5. 畢業(yè)設計(論文)的目標及具體要求目標:(1)應用eda技術,在fpga中實現(xiàn)一個簡易電子密碼鎖電路設計。該密碼鎖具備的功能有能設置4位密碼,并在數(shù)碼管上顯示;(2)培養(yǎng)學生查閱資料、分析問題和解決問題。具體要求:能利用quartus ii軟件開發(fā)環(huán)境和硬件描述語言,編寫所有的程序代碼,并能繪制出系統(tǒng)頂層設計文件框圖。通過軟件提供的仿真器,對所有模塊進行時序仿真,并分

6、析仿真結果。最后將設計文件下載到目標器件中進行硬件模擬檢測,觀察結果。6 完成畢業(yè)設計(論文)所需的條件及上機時數(shù)要求所需條件: 計算機設備、網絡、quartus條件、eda實驗箱上機時數(shù)要求:2小時30天=60小時任務書批準日期 2013 年 3月 11 日 教研室(系)主任(簽字) 任務書下達日期 2013 年 3月 11 日 指導教師(簽字) 完成任務日期 2013 年 3月 17 日 學生(簽名) 長江大學畢業(yè)設計(論文)開題報告 題 目 名 稱: 基于fpga的電子密鎖的設計 題 目 類 別: 畢 業(yè) 設 計 學 院(系): 電子信息學院 專 業(yè) 班 級: 學 生 姓 名: 指 導

7、教 師: 陳英芝 輔 導 老 師: 陳英芝 開題報告日期: 2013年3月12日 基于fpga的電子密鎖的設計學 生:,電子信息學院指導教師:陳英芝,電子信息學院1 題目來源 社會實際2 研究目的與意義 隨著人們生活水平的提高,對家庭防盜技術的要求也是越來越高,傳統(tǒng)的機械鎖由于其構造的簡單,被撬的事件屢見不鮮,電子鎖由于其保密性高,使用靈活性好,安全系數(shù)高,受到了廣大用戶的歡迎?,F(xiàn)在市場上主要是基于單片機技術的電子密碼鎖,但可靠性較差。fpga即現(xiàn)場可編程門陣列,它是在pal、gal、epld等可編程器件的基礎上進一步發(fā)展的產物,是一種超大規(guī)模集成電路,具有對電路可重配置能力。通常fpga都有

8、著上萬次的重寫次數(shù),也就是說現(xiàn)在的硬件設計和軟件設計一樣靈活、方便。相對于基于單片機技術的電子密碼鎖,用fpga器件來構成系統(tǒng),可靠性提高,并且由于fpga具有的現(xiàn)場可編程功能,使得電子密碼鎖的更改與升級更為方便簡單。 通過本次設計掌握fpga系統(tǒng)設計的方法,熟悉fpga設計的相關軟件,以及硬件描述語言的使用,了解電子密碼鎖的系統(tǒng)構成,利用fpga實現(xiàn)電子密碼鎖的設計與實現(xiàn),可以加深自己對所學專業(yè)的認識,關聯(lián)知識,增強自己的動手能力,積累實踐經驗,為以后的工作打好基礎。 3 閱讀的主要參考文獻及資料名稱1譚會生,張昌凡,鄭進.eda技術及應用m.第2版.西安:西安電子科技大學出版社,20022

9、夏宇聞.verilog hdlm.北京:高等教育出版社,20063江國強.eda技術及應用m.北京:電子工業(yè)出版社,20064謝自美.電子線路設計實驗測試m武漢:華中科技大學出版社,20035康華光.電子技術基礎數(shù)字部分m武漢:高等教育出版社,20056盧毅,賴杰編著.vhdl與數(shù)字電路設計m 出版社:科學出版社20037王鎖平編著.電子設計自動化(eda)教程m.電子科技大學出版社. 2000 4 國內外現(xiàn)狀和發(fā)展趨勢與研究的主攻方向4.1 國內外研究現(xiàn)狀 隨著人們生活水平的提高和安全意識的加強,對安全的要求也就越來越高。鎖自古以來就是把守護門的鐵將軍,人們對它要求甚高,既要安全可靠的防盜,

10、又要使用方便,這也是制鎖者長期以來研制的主題。隨著電子技術的發(fā)展,各類電子產品應運而生,電子密碼鎖就是其中之一。據(jù)有關資料介紹,電子密碼鎖的研究從20世紀30年代就開始了,在一些特殊場所早就有所應用。這種鎖是通過鍵盤輸入一組密碼完成開鎖過程。研究這種鎖的初衷,就是為提高鎖的安全性。由于電子鎖的密鑰量(密碼量)極大,可以與機械鎖配合使用,并且可以避免因鑰匙被仿制而留下安全隱患。電子鎖只需記住一組密碼,無需攜帶金屬鑰匙,免除了人們攜帶金屬鑰匙的煩惱,而被越來越多的人所欣賞。電子鎖的種類繁多,例如數(shù)碼鎖,指紋鎖,磁卡鎖,ic卡鎖,生物鎖等。但較實用的還是按鍵式電子密碼鎖。 20世紀80年代后,隨著電

11、子鎖專用集成電路的出現(xiàn),電子鎖的體積縮小,可靠性提高,成本較高,是適合使用在安全性要求較高的場合,且需要有電源提供能量,使用還局限在一定范圍,難以普及,所以對它的研究一直沒有明顯進展。 目前,在西方發(fā)達國家,電子密碼鎖技術相對先進,種類齊全,電子密碼鎖已被廣泛應用于智能門禁系統(tǒng)中,通過多種更加安全,更加可靠的技術實現(xiàn)大門的管理。在我國電子鎖整體水平尚處于國際上70年代左右,電子密碼鎖的成本還很高,市場上仍以按鍵電子鎖為主,按鍵式和卡片鑰匙式電子鎖已引進國際先進水平,現(xiàn)國內有幾個廠生產供應市場。但國內自行研制開發(fā)的電子鎖,其市場結構尚未形成,應用還不廣泛。國內的不少企業(yè)也引進了世界上先進的技術,

12、發(fā)展前景非常可觀。希望通過不斷的努力,使電子密碼鎖在我國也能得到廣泛應用。4.2發(fā)展方向 目前使用的電子密碼鎖大部分是基于單片機技術,以單片機為主要器件,其編碼器與解碼器的生成為軟件方式。在實際應用中,由于程序容易跑飛,系統(tǒng)的可靠性能較差。基于現(xiàn)場可編程邏輯門陣列fpga器件的電子密碼鎖,用fpga器件構造系統(tǒng),所有算法完全由硬件電路來實現(xiàn),使得系統(tǒng)的工作可靠性大為提高。由于fpga具有現(xiàn)場可編程功能,當設計需要更改時,只需更改fpga中的控制和接口電路,利用eda工具將更新后的設計下載到fpga中即可,無需更改外部電路的設計,大大提高了設計的效率。5主要研究內容、需重點研究的關鍵問題及解決思

13、路5.1 主要研究問題 設計可設定1到8位的密碼,從鍵盤輸入正確密碼才可以修改密碼和開鎖,輸入三次錯誤密碼就不斷報警 1、可設置密碼 2、按鍵按下是發(fā)出提示音 3、設置新密碼是要驗證舊密碼 5.2 需重點研究的關鍵問題 密碼鎖輸入電路和密碼鎖控制電路的實現(xiàn)6 完成畢業(yè)設計(論文)所必須具備的工作條件及解決的辦法6.1 工作條件 計算機設備,網絡,quartus ii軟件,eda實驗箱。6.2 解決辦法 通過到圖書館借書,到實驗室借設備和充分利用學院安排的上機時間來完成畢業(yè)設計。7 工作的主要階段、進度與時間安排收集整理資料并撰寫開題報告 3月10日-3月16日完成英文翻譯 3月17日-4月10

14、日學習課題相關內容 4月11日-4月25日編程、逐步實現(xiàn)各項功能 4月26日-5月15日調試程序、撰寫畢業(yè)設計正文 5月16日-5月31日正文的進一步完善 6月1日-6月5 日準備畢業(yè)論文答辯 6月6日-6月10日8 指導教師審查意見長江大學畢業(yè)論文(設計)指導教師評審意見學生姓名專業(yè)班級畢業(yè)論文(設計)題目基于fpga的電子密鎖的設計指導教師陳英芝職 稱講師評閱日期評審參考內容:畢業(yè)論文(設計)的研究內容、研究方法及研究結果,難度及工作量,質量和水平,存在的主要問題與不足。學生的學習態(tài)度和組織紀律,學生掌握基礎和專業(yè)知識的情況,解決實際問題的能力,畢業(yè)論文(設計)是否完成規(guī)定任務,達到了學士

15、學位論文的水平,是否同意參加答辯。評審意見: 指導教師簽名: 評定成績(百分制):_分 長江大學畢業(yè)論文(設計)評閱教師評語學生姓名專業(yè)班級畢業(yè)論文(設計)題目基于fpga的電子密鎖的設計評閱教師職 稱評閱日期評閱參考內容:畢業(yè)論文(設計)的研究內容、研究方法及研究結果,難度及工作量,質量和水平,存在的主要問題與不足。學生掌握基礎和專業(yè)知識的情況,解決實際問題的能力,畢業(yè)論文(設計)是否完成規(guī)定任務,達到了學士學位論文的水平,是否同意參加答辯。評語: 評閱教師簽名: 評定成績(百分制):_分長江大學畢業(yè)論文(設計)答辯記錄及成績評定學生姓名專業(yè)班級畢業(yè)論文(設計)題目基于fpga的電子密鎖的設

16、計答辯時間2013年6月16日 時答辯地點一、答辯小組組成答辯小組組長:成 員:二、答辯記錄摘要答辯小組提問(分條摘要列舉)學生回答情況評判三、答辯小組對學生答辯成績的評定(百分制):_分畢業(yè)論文(設計)最終成績評定(依據(jù)指導教師評分、評閱教師評分、答辯小組評分和學校關于畢業(yè)論文(設計)評分的相關規(guī)定)等級(五級制):_答辯小組組長(簽名) : 秘書(簽名): 年 月 日基于fpga的電子密鎖的設計學 生:,電子信息學院指導教師:陳英芝,電子信息學院【摘要】:本文主要介紹了一種運用可編程邏輯器件(fpga)技術來編程實現(xiàn)電子密碼鎖的設計方法。在整個系統(tǒng)設計實現(xiàn)中采用fpga器件作為控制器,所有

17、算法完全由硬件電路來實現(xiàn),使得系統(tǒng)的工作可靠性大大提高。該密碼鎖具有的功能是可以設置4位密碼,通過數(shù)字鍵盤進行輸入并在數(shù)碼管上進行顯示。同時,該密碼鎖還設計了一個萬能密碼,在忘記了密碼的情況下可使用萬能密碼來開鎖。本文的內容主要包含以下幾個部分:eda技術的介紹,電子密碼鎖總體設計,系統(tǒng)詳細設計,系統(tǒng)仿真和結束語。文中重點介紹了應用eda技術和硬件描述語言,在quartus ii工作平臺上完成電子密碼鎖系統(tǒng)總體設計的詳細過程。通過時序仿真,驗證了整個設計的正確性以及系統(tǒng)的完整性。 【關鍵詞】:電子密碼鎖 ; 可編程邏輯器件 ;eda技術 circuit design of digital lo

18、ck based on fpga【abstract】: the article mainly introduce the technology of designing a digital lock with the utility of fpga. all the calculation are totally finished by the hardware ,based on the fpga, so as to improve the reliability of the system. we just change the control and interface circuit

19、of fpga when there is something needed to change in the designing because of the field programme function. its tremendously increase the efficiency because we only need to download the newest design into the fpga by the help of eda without modifying the external circuit design . therefore, fpga will

20、 not only improve the reliability , but the conveniences of promotion. there are four password for digital lock and we can also set a universal password in case of forgetting the password. the article mainly includes several parts :the introduction of eda, the overall design of digital lock, the des

21、ign in detail of system, emulation and conclusion . through the introduction of eda, we know the software requirement of production the digital lock . in the overall design and detail design of digital lock , it introduce in detail the theory and the system designing .the article designed a digital

22、lock and made it be in form with fpga .【key word】: eda ;verall password ;digital lock ;chipxi前言第0頁(共36頁)基于fpga的電子密鎖的設計學 生:,電子信息學院指導教師:陳英芝,電子信息學院1 前言當今人們對物質的積累越來越多,覺得要如何有效的保護好自己的財產,這已成為了全社會的問題,人們對鎖的要求越來越高,既要安全性很高,又要能很好的防盜,又要能讓他使用很方便,這也導致了電子行業(yè)的蓬勃發(fā)展。而隨著大規(guī)模和超大規(guī)模可編程器件在fpga技術支持下的廣泛應用,使現(xiàn)代化設計計算已進入一個全新的階段,從設

23、計思想、設計工具一直到實現(xiàn)方式都發(fā)生了諸多變化。在fpga技術中,最為引人矚目的是以現(xiàn)代電子技術為特征的邏輯設計仿真測試技術。改技術只需通過計算機就能對所設計的電子系統(tǒng)從不同層次的性能特點上進行一些列準確測試和仿真;在完成實際系統(tǒng)的設計后,還能對系統(tǒng)上的目標器件進行邊界掃描測試。電子密碼鎖系統(tǒng)主要由電子鎖體、電子密匙等部分組成,一把電子密匙里能存放多組開鎖密碼,用戶在使用過程中能夠隨時修改開鎖密碼,更新或配制鑰匙里開鎖密碼。一把電子鎖可配制多把鑰匙。下面就是現(xiàn)在主流電子密碼鎖。遙控式電子防盜鎖目前常見的遙控式電子防盜鎖主要有光遙控和無線電遙控兩類。鍵盤式電子密碼鎖從目前的技術水平和市場認可程度

24、看,使用最為廣泛的是鍵盤式電子密碼鎖,該產品主要應用于保險箱、保險柜和金庫,還有一部分應用于保管箱和運鈔車??ㄊ诫娮臃辣I鎖使用各種“卡”作為鑰匙的電子防盜鎖是當前最為活躍的產品,無論卡的種類如何多種多樣,按照輸入卡的操作方式,都可分為接觸式卡和非接觸式卡兩大類。生物特征防盜鎖人的某些與生俱來的個性特征(如手、眼睛、聲音的特征)幾乎不可重復,作為“鑰匙”就是唯一的(除非被逼迫或傷害),因此,利用生物特征做密碼的電子防盜鎖也特別適合金融業(yè)注重“驗明正身”的行業(yè)特點?;趂pga的電子密鎖的設計本文介紹的基于fpga的電子密鎖具有顯示接口,顯示時可以是明文也可以是密文星號。由于fpga具有isp功能

25、,當用戶需要更改時,如增加口令位數(shù)和更改口令權限管理時,只需更改fpga中的控制和接口電路,利用eda工具將更新后的設計下載到fpga中即可,無需更改外部電路,這就大大提高了設計效率。而且采用fpga設計的電子密碼鎖與單片機控制的電子密碼鎖相比結構簡單、具有更高的系統(tǒng)保密性和可靠性。這種基于fpga的電子密碼鎖可以應用在辦公室、倉庫、賓館等人員經常變動的場所。 fpga技術是現(xiàn)代電子工程領域的一門新技術,提供了基于計算機和信息技術的電路系統(tǒng)設計的方法。它是從計算機輔助設計(cad)、計算機輔助制造(cam)、計算機輔助測試(cat)和計算機輔助工程(cae)等技術發(fā)展而來的。設計者只需要對系統(tǒng)

26、功能進行描述,在fpga工具的幫助下即可完成系統(tǒng)設計,從而為電子產品的設計和開發(fā)縮短了實踐降低了成本,提高了系統(tǒng)的可靠性。1.1本課題研究的國內外現(xiàn)狀及其發(fā)展隨著人們生活水平的提高和安全意識的加強,對安全的要求也就越來越高。鎖自古以來就是把守護門的鐵將軍,人們對它要求甚高,既要安全可靠的防盜,又要使用方便,這也是制鎖者長期以來研制的主題。隨著電子技術的發(fā)展,各類電子產品應運而生,電子密碼鎖就是其中之一。據(jù)有關資料介紹,電子密碼鎖的研究從20世紀30年代就開始了,在一些特殊場所早就有所應用。這種鎖是通過鍵盤輸入一組密碼完成開鎖過程。研究這種鎖的初衷,就是為提高鎖的安全性。由于電子鎖的密鑰量(密碼

27、量)極大,可以與機械鎖配合使用,并且可以避免因鑰匙被仿制而留下安全隱患。電子鎖只需記住一組密碼,無需攜帶金屬鑰匙,免除了人們攜帶金屬鑰匙的煩惱,而被越來越多的人所欣賞。電子鎖的種類繁多,例如數(shù)碼鎖,指紋鎖,磁卡鎖,ic卡鎖,生物鎖等。但較實用的還是按鍵式電子密碼鎖。20世紀80年代后,隨著電子鎖專用集成電路的出現(xiàn),電子鎖的體積縮小,可靠性提高,成本較高,是適合使用在安全性要求較高的場合,且需要有電源提供能量,使用還局限在一定范圍,難以普及,所以對它的研究一直沒有明顯進展。目前,在西方發(fā)達國家,電子密鎖技術相對先進,種類齊全,電子密鎖第2頁(共36頁)設計背景知識介紹已被廣泛應用于智能門禁系統(tǒng)中

28、,通過多種更加安全,更加可靠的技術實現(xiàn)大門的管理。在我國電子鎖整體水平尚處于國際上70年代左右,電子密碼鎖的成本還很高,市場上仍以按鍵電子鎖為主,按鍵式和卡片鑰匙式電子鎖已引進國際先進水平,現(xiàn)國內有幾個廠生產供應市場。但國內自行研制開發(fā)的電子鎖,其市場結構尚未形成,應用還不廣泛。國內的不少企業(yè)也引進了世界上先進的技術,發(fā)展前景非??捎^。希望通過不斷的努力,使電子密碼鎖在我國也能得到廣泛應用。目前使用的電子密碼鎖大部分是基于單片機技術,以單片機為主要器件,其編碼器與解碼器的生成為軟件方式。在實際應用中,由于程序容易跑飛,系統(tǒng)的可靠性能較差?;诂F(xiàn)場可編程邏輯門陣列fpga器件的電子密碼鎖,用fp

29、ga器件構造系統(tǒng),所有算法完全由硬件電路來實現(xiàn),使得系統(tǒng)的工作可靠性大為提高。由于fpga具有現(xiàn)場可編程功能,當設計需要更改時,只需更改fpga中的控制和接口電路,利用eda工具將更新后的設計下載到fpga中即可,無需更改外部電路的設計,大大提高了設計的效率。1.2本課題研究的目的和意義 為了使現(xiàn)在的電子密碼鎖更能智能化的管理,讓人們更能方便的使用,讓其具有更高的安全性和經濟性,針對基于單片機的電子密碼鎖的不足之處,本文采用eda技術,利用quartus工作平臺硬件描述語言,設計一種電子密碼鎖,并通過一片fpga芯片實現(xiàn)。采用vhdl語言使用自頂向下的方法對系統(tǒng)進行了描述,并在fpga芯片qu

30、artus上實現(xiàn)。設計充分利用了fpga的資源可編程特性,可高效率的對系統(tǒng)進行升級與改進。設計的密碼鎖可設置任意密碼,比一般的密碼鎖具有更高的安全可靠性,因此,采用fpga 開發(fā)的數(shù)字系統(tǒng),不僅具有很高的工作可靠性,其升級與改進也極其方便,應用前景十分良好。2 設計背景知識介紹eda技術是以計算機為工作平臺,用相關的eda開發(fā)軟件技術為工具,以大規(guī)??删幊踢壿嬈骷ò╟pld,fpga,epld等)為設計載體,以硬件描述語言1(hardware description language,hdl)為系統(tǒng)邏輯描述的主要表達方式,第3頁(共36頁)基于fpga的電子密鎖的設計自動完成系統(tǒng)算法和電路

31、設計,最終形成電子系統(tǒng)或專用集成芯片的一門新技術。eda技術研究的對象是電力或系統(tǒng)芯片設計的過程,可分為系統(tǒng)級、電路級和物理級三個層次。eda設計領域和內容包括從低頻、高頻到微波,從線性到非線性,從模擬到數(shù)字,從可編程邏輯器件、通用集成電路到專用集成電路的電子自動化設計。2.1 常用eda軟件介紹eda軟件可根據(jù)其復位的對象分為:用于電路級設計、分析的eda軟件,如pspice和multisim8等;用于數(shù)字電子電路設計的eda軟件,如quartus等;用于射頻電子電路設計的eda軟件,如ads等;用于電路板設計及電路仿真的eda軟件,如protel,ewb等。eda軟件根據(jù)其設計模塊大致分為

32、設計輸入編輯器、仿真器(simulator)、hdl綜合器(synthesizer)適配器(place and routing ,p&r)或布局布線器、下載器五大部分。eda軟件還有兩種分類方法:一種是按公司類別進行分類,另一種是按功能進行分類。若按公司類別可分為兩類:一類是eda專業(yè)軟件公司的eda軟件,另一類是pld廠商為了銷售其產品而開發(fā)的eda軟件。若按功能分類,eda軟件可分為:集成的fpga/cpld開發(fā)軟件、綜合類軟件、仿真類軟件、面向asic設計的軟件。集成的fpga/cpld開發(fā)軟件由半導體公司提供,基本上可以完成設計輸入(基本上可以完成設計輸入(狀態(tài)圖、原理圖或文本)仿真綜

33、合布線下載到器件等pld開發(fā)流程中的所有工作。其優(yōu)勢是功能全且集成化,可以加快動態(tài)調試,縮短開發(fā)周期;缺點是在綜合和仿真環(huán)節(jié)與專業(yè)軟件相比,都不是最優(yōu)秀的。綜合類軟件的功能是對設計輸入進行邏輯分析、綜合和優(yōu)化,將硬件描述語句(通常是系統(tǒng)級、寄存器級的描述語句)翻譯成最基本的與、或、非門的連接關系(網表),導出給fpga/cpld廠商的軟件布線。為了優(yōu)化設計,在進行較復雜的設計時,基本上都是用這些專業(yè)的邏輯綜合軟件,如ynplicity, fpga express 、fpga compiler 等。仿真類軟件的功能是對設計進行模擬仿真,包括布局布線前的“功能仿真”和第4頁(共36頁)設計背景知識

34、介紹后端的包含了門延時、布線延時等的“時序仿真”。如modelsim, cadence公司的nc-verilog/nc-vhdl/nc-sim等。面向asic設計的軟件包括數(shù)字電路設計、模擬電路設計、數(shù)?;旌显O計、系統(tǒng)設計、仿真驗證等電子設計的許多領域。這些軟件對硬件環(huán)境要求高,一般的運行平臺要求是工作站、unix或linux操作系統(tǒng),其功能齊全、性能優(yōu)良,一般由專門開發(fā)eda軟件的軟件公司提供,如cadence、mentor graphics和synopsys等都有其特色工具。2.2 fpga硬件設計描述2.2.1 fpga的設計流程fpga出現(xiàn)在20世紀80年代中期,與陣列型pld有所不同

35、,fpga由許多獨立的可編程邏輯模塊組成,用戶可以通過編程將這些模塊連接起來實現(xiàn)不同的設計。fpga具有跟高的集成度、更強的 邏輯實現(xiàn)能力和更好的設計靈活性。fpga器件具有高密度、高速率、系列化、標準化、小型化、多功能、低功耗、低成本,設計靈活方便,可無限次反復編程,并可現(xiàn)場模擬調試驗證等特點。fpga由可編程邏輯塊(clb)(主要由邏輯函數(shù)發(fā)生器、觸發(fā)器、數(shù)據(jù)選擇器等電路組成)、輸入/輸出模塊(iob)(主要由輸入觸發(fā)器、輸入緩沖器和輸出觸發(fā)/鎖存器、輸出緩沖器組成,iob控制一個引腳,它們可被配置為輸入、輸出或雙向i/o功能)及可編程互連資源(pir)(由許多金屬線段構成,這些金屬線段帶

36、有可編程開關,通過自動布線實現(xiàn)各種電路的連接,從而實現(xiàn)fpga內部的clb和clb之間、clb和iob之間的連接)等3中可編程電路和1個spam結構的配置存儲單元組成。clb是實現(xiàn)邏輯功能的基本單元,它們通常規(guī)則地排列成一個陣列,散布于整個芯片中;可編程輸入/輸出模塊(iob)主要完成芯片上的邏輯與外部引腳的接口,它通常排列在芯片的四周;可編程互連資源(pir)包括各種長度的連接線段和一些可編程 連接開關,它們將各個clb之間或clb與iob之間以及iob之間連接起來,構成特定功能的電路。由于lut主要適合sram工藝生產,所以目前大部分fpga都是基于sram工藝的,而基于srama工藝的芯

37、片在掉電后信息就會丟失,一定需要外加一片專用配置芯片,上電時由這個專用配置芯片把數(shù)據(jù)加載到fpga中,然后fpga就可以正常工作,由于配置時間很短,不會影響系統(tǒng)正常工作。也有少數(shù)fpga采第5頁(共36頁)基于fpga的電子密鎖的設計用煩熔絲或flash工藝,對這種fpga,就不需要外加專用的配置芯片了。 fpga不像pld那樣受結構的限制,它可以靠門與門的連接來組成任何復雜的邏輯電路,更適合實現(xiàn)多級邏輯功能。fpga的編程單元基于sram結構,從理論上講,具有無限次重復編程的能力。 現(xiàn)在最新的fpga,具有很高的邏輯密度、很豐富的特性和很高的性能,如xilinx virtex系列中的部分器件

38、,可提供八百萬個“系統(tǒng)門”(相對邏輯密度)。這些先進的器件還提供諸如內建的硬連線處理器(如ibm power pc)、大容量存儲器、始終管理系統(tǒng)等,并支持多種最新的超快速器件至器件(device-to-device)的信號技術。fpga應用范圍廣泛,從數(shù)據(jù)處理和存儲,到儀器儀表、數(shù)字信號處理等都有使用。目前市場上有三種fpga編程技術:sram、反熔絲、flash.其中,基于sram工藝的fpga是迄今為止應用范圍最廣的架構,主要是因為它快速且具有可重復編程能力,而基于反熔絲工藝的fpga只有一次可編程(one time programmable,otp)能力基于flash工藝的fpga經常帶

39、來一些其他的額外成本,包括啟動proms支持安全和保密應用的備用電池等?;趂lash和反熔絲工藝的gpga沒有這些隱含成本,因此可保證較低的總系統(tǒng)成本。l 基于sram工藝的fpga這類fpga是基于sram結構的可再配置型器件,上電時要將配置數(shù)據(jù)讀入片內sram中,配置完成就可進入工作狀態(tài)。掉電后sram中的配置數(shù)據(jù)丟失,fpga內部邏輯關系隨之消失。這類fpga可以反復使用。l 基于反熔絲工藝的fpga這類fpga內部具有反熔絲陣列開關,其邏輯功能的定義由專用編輯器根據(jù)設計實現(xiàn)所給出的數(shù)據(jù)文件,對其內部的反熔絲陣列進行燒錄,從而使器件實現(xiàn)星月的邏輯功能。這類器件的缺點是只能一次性編程;優(yōu)

40、點是具有高抗干擾性和低功能,適合于要求高可靠性、高保密性的定性產品。l 基于flash工藝的fpga這類fpga中集成了sram和非易失性eeprom兩類存儲結構。其中sram用于在器件正常工作時對系統(tǒng)進行控制,而eeprom則用來裝載sram.由于這類fpga將eeprom集成在基于sram工藝的現(xiàn)場可編程器件中,因而可以充分發(fā)揮第6頁(共36頁)設計背景知識介紹eeprom中,因此不需要片外的配置芯片,有助于降低系統(tǒng)成本,提到設計的安全性。fpga設計流程包括系統(tǒng)設計和設計實現(xiàn),系統(tǒng)方案完成之后即進入設計實現(xiàn)階段的工作,他以系統(tǒng)方案為輸入,進行rtl級描述、功能仿真(rtl級仿真)、邏輯綜

41、合、布線前門級仿真、適配(布局布線)、時序仿真(布線后門級仿真)、時序分析、器件編程、系統(tǒng)驗證一系列流程的處理才能完成fpga芯片的設計,其設計流程如圖1所示。需要說明的是,如果仿真驗證不對或者某一步有錯,就要返回修改。有時要反復修改,經過多次這樣的迭代才能完成最后的設計。對于fpga的設計而言,只考慮系統(tǒng)級、算法級、rtl級、門級4個層次的行為域描述和結構域描述即可。上述的fpga系統(tǒng)設計中的系統(tǒng)實際上是指系統(tǒng)級和算法級,而“rtl級描述”主要是指rtl級行為域的描述。在門級,由綜合工具產生的門級網表來描述。fpga的設計流程和相關概念說明如下:庫:指fpga器件廠家提供的工藝庫和eda工具

42、提供的標準通用庫(如ieee庫等)。工藝庫中有各種宏功能模塊和基本功能單元,含有他們的行為級模型、門級模型、布線模型等信息。需要說明的是,系統(tǒng)行為仿真和rtl級功能仿真有時要用到某種功能模塊,例如ram模型。對于ram模型的控制信號,不同的廠家其規(guī)定不一定相同,如寫使能信號,有的廠家規(guī)定高電平有效,有的廠家規(guī)定低電平有效。其實,在廠家提供的工藝庫中, ram模型有行為級模型、門級模型、版圖級模型等。而行為級模型只是規(guī)定其功能,無延時信息,跟工藝無關,但門級模型和版圖級模型跟工藝密切相關。解決的方法是系統(tǒng)行為仿真時可以使用高級語言自己建立一個模型或者調用廠家?guī)熘刑峁┑男袨榧壞P?,功能仿真時調用行

43、為級模型,時序仿真時調用門級模型。測試激勵:指測試文件,他調用fpga設計的頂層模塊,同時產生頂層模塊需要的輸入信號,稱之為激勵信號,使用行為描述即可,不要求可綜合。仿真時他作為最頂層的文件,從而可以觀察fpga的輸出是否正確。所有的仿真都可使用同一個測試激勵。約束:指對邏輯綜合和布局布線時的約束。包括器件型號、速度、面積、第7頁(共36頁)基于fpga的電子密鎖的設計功耗、引腳分配、時鐘網絡資源的分配、模塊在器件中的定位等約束。一部分在軟件中設置,一部分以約束文件的形式存在。圖1 系統(tǒng)設計流程2.2.2 vhdl語言的基本結構及特點vhdl(very high speed integrate

44、d circuit hardware description language)硬件描述語言從高于邏輯級的抽象層次上描述硬件的功能、信號連接關系及定時關系。vhdl的設計流程如2圖。 圖2 vhdl的設計流程一個完整的vhdl語言程序通常包含實體(entity)、結構體(architecture)、配置(configuration)、包集合(package)和庫(library)五個部分。1、實體實體說明部分是說明一個器件的外觀視圖,即從器件外部看到的器件外貌,其中包括器件的端口,同時也可以定義參數(shù),并把參數(shù)從外部傳入模塊內部,主要用于描述所設計的系統(tǒng)的外部接口。第8頁(共36頁)設計背景知識

45、介紹2、結構體結構體是描述一個器件的內部視圖,是次級設計單元。在其對應的初級設計單元實體說明被編譯并且被并入設計庫之后,它就可以單獨地被并入該設計庫中。結構體描述一個設計的結構和行為,把一個設計的輸入和輸出之間的關系建立起來。一個設計可以有多個結構,分別代表該器件的不同實現(xiàn)方案。根據(jù)對一個器件設計由抽象到具體的過程,可把結構體的描述方式分為三個層次:行為描述方式、寄存器傳輸描述方式(rtl)和結構描述方式。3、庫庫是經編譯后的實體、結構體、包集合和配置的集合。使用庫時總要在設計單元的前面予以說明。一旦說明,庫中的數(shù)據(jù)對該設計單元就是可見的,從而共享已經編譯過的設計結果。vhdl語言中存在的庫大

46、致有ieee庫、std庫、asic廠家提供的庫、用戶定義的庫和現(xiàn)行作業(yè)庫。4、包集合包集合屬庫中的一個層次,是一種可編譯的源設計單元。它收集了vhdl語言中所用到的信號、常數(shù)、數(shù)據(jù)類型、函數(shù)和過程的說明等。用戶可以構造一個包集合,用以存放常數(shù)、數(shù)據(jù)類型、函數(shù)和過程,該包集合經編譯后便自動加到work庫中。使用庫中的包集合時,在打開庫后要用use語句說明,例如:library ieee;use ieee.std-logic-1164.all;5、配置配置語句從一個庫中為一個實體選擇一個特定的結構體,是一種放在庫中的被編輯單元,并有相應的配置名。通過配置技術,可以選取多種不同的結構體,以便對一個設

47、計任務采用仿真工具進行多種配置的性能實驗。另外,配置說明和規(guī)定的特性還可以用在多層描述中。vhdl語言主要用于描述數(shù)字系統(tǒng)的結構、行為、功能和接口,其具有以下特點:(1)作為hdl的第一個國際標準,vhdl具有很強的可移植性; (2)具有豐富的模擬仿真語句和庫函數(shù);第9頁(共36頁)基于fpga的電子密鎖的設計(3)vhdl有良好的可讀性,接近高級語言,容易理解;(4)系統(tǒng)設計與硬件結構無關; (5)支持模塊化設計; (6)用vhdl完成的一個確定設計,可以利用eda工具自動地把vhdl描述轉變成門電路級網表文件。與其他硬件描述語言相比,vhdl語言有如下優(yōu)越之處: (1)vhdl語言支持自上

48、而下(topdown)和基于庫(librarybase)的設計方法,還支持同步電路、異步電路、fpga以及其他隨機電路的設計; (2)vhdl語言具有多層次描述系統(tǒng)硬件功能的能力,可以從系統(tǒng)的數(shù)學模型直到門級電路,其高層次的行為描述可以與低層次的rtl描述和結構描述混合使用,還可以自定義數(shù)據(jù)類型,給編程人員帶來較大的自由和方便; (3)vhdl對設計的描述具有相對獨立性,設計者可以不懂硬件的結構,也不必關心最終設計實現(xiàn)的目標器件是什么; (4)vhdl具有電路仿真與驗證功能,可以保證設計的正確性,用戶甚至不必編寫如何測試相量便可以進行源代碼級的調試,而且設計者可以非常方便地比較各種方案之間的可

49、行性及其優(yōu)劣,不需做任何實際的電路實驗; (5)vhdl語言可以與工藝無關編程; (6)vhdl語言標準、規(guī)范,易于共享和復用。2.2.3 自上而下(top down)的設計方法自上而下的設計方法是現(xiàn)代電子系統(tǒng)的新型設計策略,它從設計的總體要求出發(fā),自上而下地逐步從系統(tǒng)數(shù)學模型的設計與仿真,到數(shù)據(jù)流級的設計與仿真,選擇系統(tǒng)設計方案,最后完成系統(tǒng)硬件的整體設計。vhdl的自上而下的設計方法不僅體現(xiàn)在它的基本結構由描述外視特性的實體與描述內視行為和結構的結構體構成,同一實體可以有一個以上的結構體,以便設計方案的選擇,還體現(xiàn)在系統(tǒng)硬件設計過程的三個層次:行為級描述與仿真、rtl級描述與仿真、邏輯綜合

50、與門級仿真。邏輯綜合與所使用的邏輯綜合工具有關,由邏輯綜第10頁(共36頁)設計背景知識介紹合優(yōu)化工具生成具體的門級邏輯電路的edif2(electronic design interchange format)網表。edif網表是一種標準接口,它是一個以ascii字符為基礎的中間互換格式,被大多數(shù)供應商提供的cae/cad系統(tǒng)所支持。半導體制造廠基于這種網表生成asic芯片的制造工藝,fpga則基于這種網表生成用以配置fpga芯片的位流文件。這三種仿真貫穿系統(tǒng)硬件設計的全過程,從而可以在系統(tǒng)設計早期發(fā)現(xiàn)設計中存在的問題,與傳統(tǒng)的自下而上的后期仿真相比大大縮短系統(tǒng)的設計周期,并且利于方案的綜合

51、評價與選取。這是用vhdl語言設計系統(tǒng)硬件的最突出的優(yōu)點。2.3 quartus綜述及設計流程quartus是altera公司在20世紀初推出的fpga/cpld新一代開發(fā)軟件,是altera前一代fpga/cpld集成開發(fā)環(huán)境max+plus 的更新?lián)Q代產品,其特點是功能強大、界面簡單易懂、使用方便。適合于大規(guī)模邏輯電路設計,其設計流程概括為設計輸入、設計編輯輸入法,vhdl、verilog hdl和ahdl的文本編輯輸入法,符號編輯輸入法,以及內存編輯輸入法。quartus軟件集成了altera 的fpga/cpld開發(fā)流程中所涉及的所有工具和第三方軟件接口。 quartus與matlab

52、和dsp builder結合可以進行基于fpga的dsp系統(tǒng)開發(fā),是dsp硬件系統(tǒng)實現(xiàn)的關鍵eda工具,與sopc buider結合,可實現(xiàn)sopc系統(tǒng)開發(fā)。使用quartus進行電子密碼鎖設計的流程為(1)編寫vhdl程序(使用vhdl file);(2)編譯vhdl程序(使用compiler);(3)仿真驗證vhdl程序(使用waveform editor, simulator);(4)進行芯片的時序分析(使用timing analyzer);(5)安排芯片管腳位置(使用floorplan editor);(6)下載程序至芯片(使用programmer)。quartus軟件的特點:支持多時

53、鐘定時分析、logiclock基于塊的設計、sopc(可編程片上系統(tǒng))、內嵌signaltap 邏輯分析器、功率估計器等高級工具;易于引腳分配和時序約束;強大的hdl綜合能力;包含有max+plus的gui,且易于max+plus的工程平穩(wěn)地過渡到quartus開發(fā)環(huán)境;對于fmax的設計第11頁(共36頁)基于fpga的電子密鎖的設計具有很好的效果;支持的器件種類眾多;支持windows、solaris、hp-unix和linux等多種操作系統(tǒng);第三方工具如綜合、仿真等的鏈接。3 電子密碼鎖系統(tǒng)總體設計3.1 電子密碼鎖系統(tǒng)設計要求設計一個具有較高安全性和較低成本的通用電子密碼鎖,具體功能要求如下:數(shù)碼輸入:每按下一個數(shù)字鍵,就輸入一個數(shù)值,并在顯示器上顯示出該數(shù)值,同時將先前輸入的數(shù)據(jù)依序左移一個數(shù)字位置。數(shù)碼清除:按下此鍵可清除前面所有的輸入值,清除為“0000”。密碼更改:按下此鍵時會將目前的數(shù)字設定成新的密碼。激活電鎖:按下此鍵可將密碼鎖上鎖。解除電鎖:按下此鍵會檢查輸入的密碼是否正確,密碼正確即開鎖。數(shù)字位退格:按下此鍵可清除最低的數(shù)字位,并使各位向右

溫馨提示

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

評論

0/150

提交評論