版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、內(nèi)蒙古科技大學本科生畢業(yè)設計說明書(畢業(yè)論文) 題 目:等精度數(shù)字頻率計的設計 81內(nèi)蒙古科技大學畢業(yè)設計說明書(畢業(yè)論文)畢業(yè)設計(論文)原創(chuàng)性聲明和使用授權說明原創(chuàng)性聲明本人鄭重承諾:所呈交的畢業(yè)設計(論文),是我個人在指導教師的指導下進行的研究工作及取得的成果。盡我所知,除文中特別加以標注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過的研究成果,也不包含我為獲得 及其它教育機構的學位或?qū)W歷而使用過的材料。對本研究提供過幫助和做出過貢獻的個人或集體,均已在文中作了明確的說明并表示了謝意。作 者 簽 名: 日 期: 指導教師簽名: 日期: 使用授權說明本人完全了解 大學關于收集、保存、使
2、用畢業(yè)設計(論文)的規(guī)定,即:按照學校要求提交畢業(yè)設計(論文)的印刷本和電子版本;學校有權保存畢業(yè)設計(論文)的印刷本和電子版,并提供目錄檢索與閱覽服務;學校可以采用影印、縮印、數(shù)字化或其它復制手段保存論文;在不以贏利為目的前提下,學??梢怨颊撐牡牟糠只蛉績?nèi)容。作者簽名: 日 期: 學位論文原創(chuàng)性聲明本人鄭重聲明:所呈交的論文是本人在導師的指導下獨立進行研究所取得的研究成果。除了文中特別加以標注引用的內(nèi)容外,本論文不包含任何其他個人或集體已經(jīng)發(fā)表或撰寫的成果作品。對本文的研究做出重要貢獻的個人和集體,均已在文中以明確方式標明。本人完全意識到本聲明的法律后果由本人承擔。作者簽名: 日期: 年
3、 月 日學位論文版權使用授權書本學位論文作者完全了解學校有關保留、使用學位論文的規(guī)定,同意學校保留并向國家有關部門或機構送交論文的復印件和電子版,允許論文被查閱和借閱。本人授權 大學可以將本學位論文的全部或部分內(nèi)容編入有關數(shù)據(jù)庫進行檢索,可以采用影印、縮印或掃描等復制手段保存和匯編本學位論文。涉密論文按學校規(guī)定處理。作者簽名:日期: 年 月 日導師簽名: 日期: 年 月 日等精度數(shù)字頻率計的設計摘 要本設計課題為基于fpga和單片機的等精度數(shù)字頻率計的設計。在本設計中,采用先進的自上而下的設計方法,以at89c52單片機作為系統(tǒng)的主控部件,實現(xiàn)整個電路的信號控制、數(shù)據(jù)運算處理等功能;一片現(xiàn)場可
4、編程邏輯器件fpga(filed programmable gate array)芯片flex epf10k20rc208-4完成各種時序邏輯控制、計數(shù)功能。在數(shù)字硬件電路eda設計平臺max+plus上,使用硬件描述語言vhdl編程完成了fpga內(nèi)部的數(shù)字硬件電路設計、編譯、調(diào)試、仿真和下載。本文詳細論述了等精度數(shù)字頻率計的測頻原理、硬件電路的組成、設計和單片機軟件編程設計。其中硬件電路包括鍵盤控制模塊、顯示模塊和測量模塊,鍵盤模塊通過對六只按鍵的選擇實現(xiàn)了除測頻功能外的周期、脈寬、占空比測量等功能的選擇;顯示模塊采用動態(tài)顯示方式,節(jié)省了fpga內(nèi)部大量資源;at89c52單片機的軟件編程采
5、用靈活易讀的c語言。本設計將at89c52單片機的控制靈活性和fpga芯片的現(xiàn)場可編程性相結合,不但大大縮短了開發(fā)研制周期,而且使本系統(tǒng)具有結構緊湊、體積小、可靠性高、測頻范圍寬、精度高等優(yōu)點。關鍵詞:eda技術;單片機;fpga;頻率計 內(nèi)蒙古科技大學畢業(yè)設計說明書(畢業(yè)論文)the dsign of equal-accuracy digtal frequencyabstractthe title of this design is the design of equal-accuracy digital frequency based on fpga and single chip com
6、puter. the digital frequency meter design in this paper which adopts top-down design methodology uses the at89c52 single chip computer as the main controlling parts .the at89c52 realizes test signal control ,keyboard scan and output display of led .one fpga chip flex epf10k20rc208-4 fulfils timing l
7、ogic control and count function .under the hardware circuit design flat of max+plus,fpga software designing,compiling , debugging ,simulation and download are been carried out in vhdl.this article detail exposition of the testing frequency precision digital principles, hardware circuit composition,
8、design and software programming design of single chip computer.these hardware circuits including keyboard control module, display modules and measurement modules. keyboard module through six achieved made the system can measure pulse width and occupy-empty ratio of input signal . the using of dynami
9、c display module, saving a lot of internal fpga resources. the software programming of at89c52 single chip computer adopts the flexible and accessible c language. the system combines the controlling flexibility of at89c52 with programmable performance of fpga , so it not only can shorten develop cyc
10、le ,but also has advantage of tightening architecture ,little volume ,high reliability ,wide scope and high precision .key words: eda technique; single chip computer; frequency meter; fpga 內(nèi)蒙古科技大學畢業(yè)設計說明書(畢業(yè)論文)目 錄摘 要iabstractii第一章 緒 論11.1 研究背景及意義11.2 頻率計發(fā)展概況11.3 論文所做的工作與研究內(nèi)容2第二章 等精度數(shù)字頻率計測頻原理及設計方法42.1
11、 等精度數(shù)字頻率計測頻原理42.1.1 常用測頻方法簡介42.1.2 等精度測頻原理42.2 等精度數(shù)字頻率計的設計方法52.2.1 電子系統(tǒng)的傳統(tǒng)設計方法52.2.2 當代電子系統(tǒng)的設計方法6第三章 主要芯片及設計工具簡介83.1 主要芯片介紹83.1.1 at89c52單片機性能簡介83.1.2 flex10k芯片系列簡介113.2 mux+plus概述143.3 vhdl語言簡介15第四章 硬件電路設計174.1 系統(tǒng)組成174.2 鍵盤接口電路174.3 顯示電路184.4 測量電路194.4.1 測量與自校驗選擇電路214.4.2 測頻原理與測頻電路224.4.3 脈寬控制電路244
12、.5 硬件電路的vhdl語言描述254.5.1 d觸發(fā)器254.5.2 32位計數(shù)器264.5.3 mux64-8多路選擇器274.5.4 mux2-1選擇器284.5.5 時鐘發(fā)生器284.5.6 64位移位寄存器294.5.7 數(shù)碼管字型譯碼器304.5.8 數(shù)碼管片選譯碼器314.5.9 鍵盤編碼器324.5.10 單片機主控電路33第五章 軟件電路設計345.1 主程序345.2 復位自檢程序355.3 數(shù)據(jù)輸出程序365.4 頻率測量程序375.5 數(shù)據(jù)讀入程序375.6 占空比測量控制程序375.7 鍵值讀取程序385.8 數(shù)制轉(zhuǎn)換程序39第六章 系統(tǒng)性能分析426.1 頻率測量范
13、圍分析426.1.1 低端頻率426.1.2 高端頻率426.2 測量精度分析43結 論44參考文獻45附錄a 系統(tǒng)原理圖(a)46附錄a 系統(tǒng)原理圖(b)47附錄b at89c52單片機內(nèi)部方框圖48附錄c 硬件電路的硬件描述語言vhdl描述49附錄d 單片機c語言程序64致 謝76內(nèi)蒙古科技大學畢業(yè)設計說明書(畢業(yè)論文)第一章 緒 論1.1 研究背景及意義隨著電子技術與計算機技術的不斷發(fā)展,以單片機為核心的測量控制系統(tǒng)層出不窮。在被測信號中,經(jīng)常遇到以頻率為參數(shù)的信號,例如流量、轉(zhuǎn)速、晶體壓力傳感器以及經(jīng)過參變量頻率轉(zhuǎn)換后的信號等。頻率信號抗干擾性強,易于傳輸,可以獲得較高的測量精度,所以
14、研究測頻方法是電子測量領域的重要內(nèi)容。傳統(tǒng)的數(shù)字頻率計一般由分離元件搭接而成,其測量范圍、測量精度和測量速度都受到很大的限制。雖然單片機的發(fā)展與應用改善了這一缺陷,但由于單片機本身也受到工作頻率及內(nèi)部計數(shù)器位數(shù)等因素的限制,所以無法在此領域取得突破性的進展。隨著新型可編程邏輯器件fpga技術的發(fā)展,能夠?qū)⒋罅康倪壿嫻δ芗稍趩蝹€器件中,fpga根據(jù)不同的需要所提供的門數(shù)可以從幾百門到上百萬門,從根本上解決了單片機的先天性不足。本課題所設計的等精度數(shù)字頻率計不但集成度遠遠超過了以往的數(shù)字頻率計,而且在基準頻率等外部條件的允許下,可以根據(jù)不同場合的精度要求,對硬件描述語言進行一定的改動,使系統(tǒng)在精
15、度提高的同時,而不增加系統(tǒng)硬件,從而降低系統(tǒng)的整體造價。此外,系統(tǒng)芯片(soc)的發(fā)展也要求其包含頻率測量的功能,所以用fpga實現(xiàn)數(shù)字頻率計也是實現(xiàn)系統(tǒng)芯片的前提條件。該數(shù)字頻率計的設計及實現(xiàn)應用計數(shù)器法,基于上述優(yōu)勢開發(fā)的頻率計具有良好的應用價值和推廣前景。1.2 頻率計發(fā)展概況傳統(tǒng)的數(shù)字頻率計可以通過普通的硬件電路組合來實現(xiàn),一般由分離元件搭接而成,其開發(fā)過程、調(diào)試過程十分繁鎖,而且由于電子器件之間的互相干擾,影響頻率計的精度,體積較大,已不適應電子設計的發(fā)展要求。msc-51系列單片機具有體積小、功能強、性能價格比高等特點,廣泛應用于工業(yè)測量、控制和智能化儀器、儀表等領域。以msc-5
16、1系列單片機為核心的頻率計,較分離元件搭接而成的頻率計改善了性能、提高了可靠性,并可以采用軟件實現(xiàn)各種頻率測量方法。但由受到單片機本身特性的影響,其晶振最大只能為24mhz,以單片機為核心的頻率計的測頻范圍及精度受到很大的制約。隨著eda技術的發(fā)展,現(xiàn)代頻率計的設計多采用基于fpga芯片的方法來完成頻率計的設計,即通過vhdl(very high speed integrated circuit hardware description language)硬件描述語言的設計,用fpga來實現(xiàn)。fpga(field programmable gate array)即現(xiàn)場可編程邏輯器件是由存放在片
17、內(nèi)ram 中的程序來設置其工作狀態(tài)的,因此工作時需要對片內(nèi)的ram進行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。加電時,fpga芯片將eprom中數(shù)據(jù)讀入片內(nèi)編程ram中,配置完成后,fpga 進入工作狀態(tài)。掉電后,fpga恢復成白片,內(nèi)部邏輯關系消失,因此fpga 能夠反復使用。fpga 的編程無須專用的fpga編程器,只須用通用的eprom、prom編程器即可。當需要修改fpga功能時,只需換一片eprom即可。這樣,同一片fpga,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,fpga的使用非常靈活。同時eda開發(fā)工具的通用性、設計語言( 在此為vhdl) 的標準化以及設計過
18、程幾乎與所用器件的硬件結構無關,所以設計成功的各類邏輯功能塊軟件有很好的兼容性和可移植性,可以在很短的時間里完成十分復雜的系統(tǒng)設計。1.3 論文所做的工作與研究內(nèi)容隨著eda(electronics design automation)技術的發(fā)展和可編程邏輯器件的廣泛應用,傳統(tǒng)的自下而上的數(shù)字電路設計方法、工具、器件已遠遠落后于當今技術的發(fā)展。基于eda技術和硬件描述語言的自上而下的設計技術正在承擔起越來越多的數(shù)字系統(tǒng)設計任務。 本設計主要論述了利用fpga進行測頻計數(shù),單片機實施控制的方法實現(xiàn)多功能頻率計的過程,使得頻率計具有了測量精度高、功能豐富、控制靈活等特點。該頻率計依照等精度的測量原
19、理,克服了傳統(tǒng)計數(shù)器測頻原理隨被測信號頻率下降而降低的缺點。等精度的測量方法不但具有較高的測量精度,而且在整個頻率域保持恒定的測量精度。該頻率計利用fpga來實現(xiàn)對被測頻率信號及標準頻率信號的周期計數(shù),由單片機實現(xiàn)對系統(tǒng)的控制、數(shù)據(jù)運算及數(shù)制轉(zhuǎn)換等功能。本設計的主要工作包括以下幾項內(nèi)容:(1)簡述了當今頻率計的發(fā)展狀況,對幾種常用的測頻方法進行了介紹和對比.(2)在fpga和單片機的基礎上采用等精度測量方法,實現(xiàn)了高精度的頻率、周期、脈寬和占空比的測量。(3)采用msc-51單片機來實現(xiàn)對功能鍵的控制、數(shù)據(jù)的運算、碼制的轉(zhuǎn)換、數(shù)據(jù)的顯示等功能。(4)完成了基于數(shù)字硬件電路設計平臺max+ pl
20、usii的fpga硬件電路的設計和單片機的測試控制、數(shù)據(jù)處理程序。本文分5章介紹了基于fpga和單片機的等精度數(shù)字頻率計的設計原理、設計方法、和開發(fā)步驟,并對頻率計的測量結果和實際輸入頻率進行了比較,分析了本設計影響測量精度的主要因素。第二章 等精度數(shù)字頻率計測頻原理及設計方法2.1 等精度數(shù)字頻率計測頻原理2.1.1 常用測頻方法簡介目前常用的測頻方法可以分為3類,即:(1)比較法通過與標準頻率f0比較確定被測頻率fx,測量精度主要取決于標準頻率f0的精度。主要方法有用于低頻段測量的拍頻法、示波器法和用于高頻頻段測量的差頻法等。(2)電路頻率特性測量法由電路的已知參數(shù)與電路的頻率特性得到被測
21、頻率fx,主要方法包括用于低頻段的電橋法和用于高頻或微波頻段的諧振法。(3)計數(shù)器法由單位時間內(nèi)被測信號的周期重復次數(shù)測得fx,即計數(shù)器法測頻.目前最常用的計數(shù)器法是測頻法或測周法,其測量精度主要取決于基準時間和計數(shù)的量化誤差。當被測頻率較高時,采用測頻法可以得到較高的測頻精度;當被測頻率較低時,采用測周法可以得到較高的測頻精度。但當被測頻率變化范圍較大時,這兩種方法均不能保證整個頻率范圍的測量精度。1 本課題測頻原理為等精度測頻,下面就等精度測頻原理進行具體敘述.2.1.2 等精度測頻原理等精度測頻法是在計數(shù)器測頻法的基礎上發(fā)展而來的。其原理圖如圖2.1所示。當方波預置門控信號cl可由單片機
22、發(fā)出,cl的時間寬度對測頻精度影響較小,所以可以在1秒至0.1秒間選擇,在此設其寬度為bzh和 tf。bzh和tf是兩個可控的32位高速計數(shù)器,bena和ena分別是他們的計數(shù)允許信號端,高電平有效。標準頻率信號從bzh的時鐘輸入端bclk輸入,設其頻率為fs;經(jīng)整形后的被測信號從與bzh相似的32位計數(shù)器tf的時鐘輸入端tclk輸入,設其真實頻率fxe,測量頻率為fx。 圖2.1 等精度測頻原理圖 測頻開始前,首先發(fā)出一個清零信號clr,使兩個計數(shù)器和d觸發(fā)器置零,然后由單片機發(fā)出允許測頻命令,即令預置門控信號cl為高電平,這時d觸發(fā)器要一直等到被測信號的上升沿通過時q端才被置1,與此同時,
23、將同時啟動計數(shù)器bzh和 tf,進入“計數(shù)允許周期”。在此期間,bzh和 tf分別對被測信號和標準頻率信號同時計數(shù)。當tpr秒后,預置門控信號cl被單片機置為低電平,但此時兩個計數(shù)器仍沒有停止計數(shù),一直等到隨后而至的被測信號的上升沿到來時,才通過d觸發(fā)器將著兩個計數(shù)器同時關閉。2設fx為整形后的被測信號頻率,fs為基準頻率信號頻率,若在一次預置門高電平脈寬時間內(nèi)(tpr)被測信號計數(shù)值為nx;基準頻率計數(shù)值為ns,則有下式成立: (2-1)2.2 等精度數(shù)字頻率計的設計方法2.2.1 電子系統(tǒng)的傳統(tǒng)設計方法現(xiàn)代電子系統(tǒng)一般由模擬電子系統(tǒng)、數(shù)字電子系統(tǒng)和模數(shù)混合電子系統(tǒng)三大部分組成。從概念上講凡
24、是利用數(shù)字技術處理和傳輸信息的電子系統(tǒng)都可以稱為數(shù)字系統(tǒng)。傳統(tǒng)的數(shù)字系統(tǒng)設計只能對電路板進行設計,通過設計電路板來實現(xiàn)系統(tǒng)功能。電子產(chǎn)品設計的基本思路一直是先選用標準通用集成電路芯片,再由這些芯片和其它元件自下而上的構成思路、子系統(tǒng)和系統(tǒng),即常說的”自底向上”的設計方法?!白缘紫蛏稀耙话闶窃谙到y(tǒng)劃分和分解的基礎上先進行單元設計,在單元的精心設計后逐步進行功能模塊設計,然后再進行子系統(tǒng)的設計,最后完成系統(tǒng)總體設計。這樣設計出的電子系統(tǒng)所用元件的種類和數(shù)量較多,體積與功耗大,可靠性差。圖2.2(a)所示為傳統(tǒng)“自底向上”設計方法的具體設計步驟。隨著集成電路技術的不斷進步和eda技術的迅速發(fā)展,可編
25、程邏輯器件及eda技術給今天的電子系統(tǒng)設計者提供了強有力的工具,使得電子系統(tǒng)的設計方法發(fā)生了質(zhì)的變化?,F(xiàn)在,只要擁有一臺計算機、一套相應的eda軟件和空白的可編程邏輯器件芯片,在實驗室里就可以完成數(shù)字系統(tǒng)的設計和生產(chǎn)。 2.2.2 當代電子系統(tǒng)的設計方法隨著集成電路技術的不斷進步和eda技術的迅速發(fā)展,現(xiàn)在人們可以把數(shù)以億計的晶體管,幾十萬門甚至幾百萬門的電路集成在一塊芯片上。半導體集成電路已由早期的單元集成、部件電路集成發(fā)展到整機電路集成和系統(tǒng)電路集成。利用eda工具,采用可編程器件,通過設計芯片來實現(xiàn)系統(tǒng)功能,這種方法稱為基于芯片的設計方法。新的設計方法能夠由設計者定義器件內(nèi)部邏輯,將原來
26、由電路板設計完成的大部分工作放在芯片的設計中進行。這樣不僅可以通過芯片設計實現(xiàn)多種數(shù)字邏輯系統(tǒng),而且由于管腳定義的靈活性,大大減輕了電路圖設計和電路板設計的工作量和難度,從而有效的增強了設計靈活性,提高了工作效率。同時,基于芯片的設計可以減少芯片的數(shù)量,縮小系統(tǒng)的體積,降低能源消耗。電子系統(tǒng)的設計方法也由傳統(tǒng)的“自底向上“的方法改為”自頂向下“的設計方法。在這種新的設計方法中,由整機系統(tǒng)用戶對整個系統(tǒng)進行方案設計和功能劃分,系統(tǒng)的關鍵電路用一片或幾片專用集成電路asic來實現(xiàn),且這些專用集成電路是由系統(tǒng)和電路的設計師親自參與設計的,直至完成電路到芯片版圖的設計,再交由ic工廠加工,或者用可編程
27、asic(例如cpld和fpga)現(xiàn)場編程實現(xiàn)。1在“自頂向下“的設計中,首先需要進行行為設計,確定該電子系統(tǒng)的功能、性能及允許的芯片面積和成本等。接著進行結構設計,根據(jù)該電子系統(tǒng)或芯片的特點,將其分為接口清晰、相互關系明確、盡可能簡單的子系統(tǒng),得到一個總體結構。這個結構可能包括算術邏輯單元、控制子單元、數(shù)據(jù)通道、各種算法狀態(tài)機等。下一步是把結構轉(zhuǎn)換成邏輯圖,這時需要進行硬件仿真,以最終確定本次設計的正確性。最后進行版圖設計,即將電路圖轉(zhuǎn)化成版圖。圖2.2(a)“自頂向下“設計步驟 (b)“自底向上“設計步驟本設計所采用的正是自頂向下的設計方法,縮短了設計周期,降低了設計成本。 第三章 主要芯
28、片及設計工具簡介3.1 主要芯片介紹3.1.1 at89c52單片機性能簡介圖3.1 at89c52引腳圖at89c52是美國atmel公司生產(chǎn)的低電壓、高性能cmos 8位單片機,片內(nèi)含8k字節(jié)可反復擦寫的只讀程序存儲器(eprom)和256bytes的隨機存取數(shù)據(jù)存儲器(ram),器件采用atmel公司的高密度、非易失性存儲技術生產(chǎn),與標準mcs-51指令系統(tǒng)及8052產(chǎn)品引腳兼容,片內(nèi)置通用8位中央處理器(cpu)和flash存儲單元。由于將多功能8位cpu和閃爍存儲器組合在單個芯片中,atmel的at89c52適合于許多較為復雜的控制應用場合,是一種高效微控制器,為很多嵌入式控制系統(tǒng)提
29、供了一種靈活性高且價廉的方案。其引腳圖如圖3.1,內(nèi)部方框圖見附錄一。(1) 主要性能參數(shù):·與mcs-51 產(chǎn)品指令和引腳完全兼容兼容·8k字節(jié)可編程閃爍存儲器·壽命:1000寫/擦循環(huán)·數(shù)據(jù)保留時間:10年·全靜態(tài)工作:0hz-24hz·三級程序存儲器鎖定·256*8字節(jié)內(nèi)部ram·32可編程i/o線·3個16位定時器/計數(shù)器·8個中斷源·可編程串行uart通道·低功耗的閑置和掉電模式·片內(nèi)振蕩器和時鐘電路 at89c52可降至0hz的靜態(tài)邏輯操作,并支持兩種軟
30、件可選的節(jié)電共組模式??臻e方式停止cpu工作,但允許ram、定時/計數(shù)器、串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存ram中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復位。(2) 引腳功能說明:vcc:供電電壓。 gnd:接地。 p0口:p0口為一個8位漏級開路雙向i/o口,即地址/數(shù)據(jù)復用總線。作為輸出口用時,每腳可驅(qū)動8ttl門電流。當p1口的管腳寫1時,被定義為高阻抗輸入。p0能夠用于訪問外部程序/數(shù)據(jù)存儲器,它可以被定義為地址的低八位。在fiash編程時,p0 口作為原碼輸入口,當fiash進行校驗時,p0輸出原碼,此時p0外部必須被拉高。 p1口:p1口是一個內(nèi)部提
31、供上拉電阻的8位雙向i/o口,p1口輸出緩沖器能接收/輸出4ttl門電流。p1口管腳寫入1后,被內(nèi)部上拉為高電平,此時可用作輸入,p1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在flash編程和校驗時,p1口作為第八位地址接收。p1.0、p1.1還可分別作為定時/計數(shù)器2的外部計數(shù)輸入(p1.0/t2)和輸入(p1.1/t2ex)。 p2口:p2口為一個內(nèi)部上拉電阻的8位雙向i/o口,p2口緩沖器可接收,輸出4個ttl門電流,當p2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,p2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。p2口當用于外
32、部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,p2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,p2口輸出其特殊功能寄存器的內(nèi)容。p2口在flash編程和校驗時接收高八位地址信號和控制信號。p3口:p3口是一組帶有內(nèi)部上拉電阻的8位雙響i/o口。p3口輸出緩沖級可驅(qū)動4個ttl邏輯門電路。p3口寫入“1”時,它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時被外部拉低的p3口將用上拉電阻輸出電流。p3口除了作為一般的i/o口線外,更重要的用途是它的第二功能,p3口管腳備選功能如下所示:p3.0 rxd(串行輸入口)p3.1 txd(串行輸出口)
33、p3.2 /int0(外部中斷0)p3.3 /int1(外部中斷1)p3.4 t0(記時器0外部輸入)p3.5 t1(記時器1外部輸入)p3.6 /wr(外部數(shù)據(jù)存儲器寫選通)p3.7 /rd(外部數(shù)據(jù)存儲器讀選通)p3口同時為閃爍編程和編程校驗接收一些控制信號。rst:復位輸入。當振蕩器復位器件時,要保持rst腳兩個機器周期的高電平時間。ale/prog:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在flash編程期間,此引腳用于輸入編程脈沖。在平時,ale端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注
34、意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ale脈沖。如想禁止ale的輸出可在sfr8eh地址上置0。此時, ale只有在執(zhí)行movx,movc指令是ale才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ale禁止,置位無效。/psen:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/psen有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/psen信號將不出現(xiàn)。/ea/vpp:當/ea保持低電平時,則在此期間外部程序存儲器(0000h-ffffh),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/ea將內(nèi)部鎖定為reset;當/ea端保持高電平時,此間內(nèi)部程序
35、存儲器。在flash編程期間,此引腳也用于施加12v編程電源(vpp)。xtal1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。xtal2:來自反向振蕩器的輸出。 (3) 振蕩器特性: xtal1和xtal2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,xtal2應不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。 (4) 芯片擦除:整個perom陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ale管腳處于低電平10ms 來完成。在芯片擦
36、操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。此外,at89c51設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,cpu停止工作。但ram,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存ram的內(nèi)容并且凍結振蕩器,禁止所用其他芯片功能,直到下一個硬件復位為止。33.1.2 flex10k芯片系列簡介隨著電子技術的不斷發(fā)展,電子系統(tǒng)的設計方法也發(fā)生了很大的變化,傳統(tǒng)的設計方法正逐步退出歷史舞臺,而基于eda技術的芯片設計正在成為電子系統(tǒng)設計的主流。大規(guī)模可編程邏輯器件cpld和fpga是當今應用最廣泛的兩類
37、可編程專用集成電路(asic)??删幊踢壿嬈骷?0世紀70年代發(fā)展起來的一種新型邏輯器件,是一種由用戶編程來實現(xiàn)某種邏輯功能的新興器件,芯片內(nèi)的邏輯門、觸發(fā)器等硬件資源可由用戶配置來連接來實現(xiàn)專用的用戶邏輯功能。它是大規(guī)模集成電路技術飛速發(fā)展與計算機輔助設計、計算機輔助生產(chǎn)和計算機輔助測試相結合的一種產(chǎn)物,是現(xiàn)代數(shù)字系統(tǒng)向超高集成度、超低功耗、超小封狀和專用化方向發(fā)展的重要基礎。它的應用和發(fā)展不僅簡化了電路設計,降低了成本,提高了系統(tǒng)的可靠性和保密性,而且給數(shù)字系統(tǒng)的設計方法帶來了革命性的變化。目前常用的可編程邏輯器件從結構上可將其劃分為兩大類:cpld和現(xiàn)場可編程門陣列fpga。fpga是
38、 20世紀80年代中期出現(xiàn)的可編程邏輯器件,其結構類似于掩膜可編程門陣列(mpga),它由許多獨立的可編程模塊組成,擁護可以通過編程將這些模塊連接起來實現(xiàn)不同的設計。fpga兼容了mpga和pld兩者的優(yōu)點,因而具有更高的集成讀、更強的邏輯實現(xiàn)能力和更好的設計靈活性。fpga具有掩膜可編程門陣列(mpga)的通用結構,它由邏輯功能塊排成陣列組成,并由可編程的互連資源連接這些邏輯功能塊以及相應的輸入/輸出單元來實現(xiàn)不同的設計。其中fpga的功能由邏輯結構的培植數(shù)據(jù)決定。工作時這些配置數(shù)據(jù)存放在片內(nèi)的sram或熔絲上?;趕ram的fpga器件在工作前 需要從芯片外部加載配置數(shù)據(jù)。用戶可以控制加載
39、過程,在現(xiàn)場修改器件的邏輯功能,即所謂的現(xiàn)場編程。flex 10k器件結構圖如圖3.2所示: 圖3.2 flex 10k器件結構圖 各種fpga再結構上的差異主要反映在可編程邏輯塊clb上,常見的結構主要有三種類型,即查找表結構、多路開關結構和多級與非門機構。本測頻系統(tǒng)選用fpga器件是altera公司所生產(chǎn)的flex10k系列中的epf1020rc(208-4)。flex10k系列是第一款多達25萬門的嵌入式pld,flex10k具有高密度和易于在設計中實現(xiàn)復雜宏函數(shù)與存儲器的特點,因此可以適應系統(tǒng)級設計的要求。每個flex10k器件都包含一個嵌入式陣列,它為設計者提供了有效的嵌入式門陣列和
40、靈活的可編程邏輯。另外,flex10k器件也提供多電壓i/o接口,它允許器件橋接在不同電壓工作系統(tǒng)中。flex10k還具有多個低失真時鐘,以及時鐘鎖定和時鐘自舉鎖相環(huán)電路,內(nèi)部三態(tài)總線等特性。其具體性能特點如下:(1) 工業(yè)界第一種嵌入式pld系列,具有在單個器件中系統(tǒng)集成的能力,具有實現(xiàn)宏函數(shù)的嵌入式陣列和實現(xiàn)普通功能的邏輯陣列。(2) 高密度 具有10000到250000個可用門,高達40960位內(nèi)部ram。(3) 系統(tǒng)級特點 支持多電壓i/o接口;低功耗,維持狀態(tài)時電流小于0.5ma,遵守pci總線規(guī)定;內(nèi)置jtag邊界掃描測試電路;器件采用先進sram工藝制造;通過外部eprom、集成
41、控制器或jtag接口實現(xiàn)電路可重構(icr);時鐘鎖定和時鐘自舉選項有助于減小時鐘延遲/變形和對時鐘進行倍頻;器件內(nèi)低變形時鐘樹形分布;所有器件都經(jīng)過100%的性能測試。 (4) 靈活的內(nèi)部連接 快速通道連續(xù)式布線結構帶來快速可預測的連線延時;具有可以用來實現(xiàn)快速加法器、計數(shù)器和比較器的專用位鏈;具有實現(xiàn)告訴、多輸入邏輯函數(shù)專用級連鏈;模仿三態(tài)功能可以是內(nèi)部三態(tài)總線;多達6個全局時鐘信號和4個全局清除信號。(5) 功能強大的i/o引腳 每個引腳都有一個獨立的三態(tài)輸出使能控制;每個i/o引腳都有漏極開路選擇;可編程輸出電壓擺率控制可以減小開關噪聲。(6) 具有快速建立時間和時鐘到輸出的外部寄存器
42、(7) 多樣的封裝形式 84到600引腳的各種封裝,封裝形式有tqfp、pqfp、bga和plc等;同一種封裝中的各種flex10k器件的引腳兼容。(8) 具有良好的軟件設計支持和布局布線的能力(9) 能夠與其它公司的多種eda工具接口flex 10k器件主要包括嵌入式陣列、邏輯陣列、fasttrack互連和i/o單元等4部分。另外flex 10k器件還包括6個用于驅(qū)動寄存器控制端的專用輸入引腳,以確保高速低失真(小于1.5ns)控制信號的有效分布。這些信號是用于專用的布線通道,這些專用通道提供了比fasttrack互連更短的延時和更小的失真。4個全局信號可由4個專用輸入引腳驅(qū)動,也可以由器件
43、內(nèi)部邏輯驅(qū)動。這為時鐘分配或產(chǎn)生用于清楚器件內(nèi)部多個寄存器的異步清除信號提供了理想的方法。43.2 mux+plus概述max+plus是altera公司為開發(fā)其可編程邏輯器件而推出的專用軟件,其易學、易用、界面友好且集成化程度高,全稱是multiple array matrix and progtammable logic user system(多陣列矩陣及可編程邏輯用戶系統(tǒng))。max+plus是一個完全集成化的可編程邏輯環(huán)境,能滿足用戶各種各樣的設計需要。他支持altera公司的不同結構器件,可在多平臺上運行。max+plus具有突出的靈活性和高效性,為設計者提供了多種可自由選擇的設計方
44、法和工具。豐富的圖形界面,可隨時訪問的在線幫助文檔,使用戶能夠快速輕松的掌握和使用max+plus軟件。max+plus軟件眾多突出出的特點如下:(1)開放式的界面:max+plus軟件可與其他工業(yè)標準的設計輸入、綜合與校驗工具相連接它eda工具的接口遵循edif200、edif300、參數(shù)模塊庫lpm2.1.0,標準延遲格式sdf2.0等多種標準max+plus軟件接口允許用戶使用altera或標準的eda設計輸入工具來創(chuàng)建邏輯設計max+plus的編譯器對altera器件的設計進行編譯,使用altera或其他eda校驗工具進行器件級或板級仿真。(2)設計與結構無關:max+plus支持al
45、tera公司的各種可編程邏輯器件,提供了工業(yè)界真正與結構無關的可編程邏輯設計環(huán)境。max+plus的編譯器還提供了邏輯綜合與優(yōu)化功能以減輕用戶的設計負擔。(3)完全集成化:max+plus的設計輸入、綜合編譯、時序分析、仿真校驗下載/配置全部集成在一起,加快動態(tài)調(diào)試,縮短開發(fā)周期;(4)豐富的設計庫:max+plus提供豐富的庫單元共設計者使用,其中包括74系列的全會部器件和多種特殊的邏輯功能以及參數(shù)化的兆功能。(5)支持多種硬件描述語言,包括vhdl、verilog hdl、ahdl語言。(6)模塊化工具:設計者可從各種設計輸入、編輯、校驗及器件編程工具中作出選擇,形成用戶風格的開發(fā)環(huán)境,必
46、要時還可以在保留原始功能的基礎上添加新的功能。max+plus的設計過程包括設計輸入、項目編譯、功能時序仿真、編程配置。其中常用的設計輸入方法有:通過max+plus圖形編輯器創(chuàng)建圖形文件(.gdf);通過max+plus文本編輯器,使用vhdl語言創(chuàng)建文本設計文件(.vhd)。使用verilog hdl語言創(chuàng)建文本文件(.v)。43.3 vhdl語言簡介硬件描述語言(hdl,hardware description language)是eda技術的重要組成部分,常用的硬件描述語言有vhdl、verilog、abel等,vhdl是eda技術的主流硬件描述語言之一,也是本文設計所采用的硬件描述語
47、言。vhdl的英文全名是very high speed integrated circuit hardware description language,誕生于1982年。1987年vhdl被ieee和美國國防部確認為標準硬件描述語言。自ieee公布了vhdl(ieee-1076)的標準版本之后,各eda公司相繼推出了自己的vhdl設計環(huán)境,或宣布自己的設計工具可以和vhdl接口。此后vhdl在電子設計領域得到了廣泛的接受,并逐步取代了原有的非標準化硬件描述語言。1993年,ieee對vhdl進行了修訂,從更高抽象層次和系統(tǒng)描述能力上擴展了vhdl的內(nèi)容,公布了新版本的vhdl即ieee標準的
48、1076-1993版本,又得到了眾多eda公司的支持,在電子工程領域,已成為事實上的通用硬件描述語言。有專家預言,在新的世紀中,vhdl和verilog將承擔起幾乎全部的數(shù)字系統(tǒng)設計任務。vhdl主要用于描述數(shù)字系統(tǒng)的結構、行為、功能和接口。除了含有許多硬件特征的語句外,vhdl的風格和語法十分類似于一般的計算機高級語言。vhdl的程序結構特點是將一項設計實體分成外部和內(nèi)部,外部是可視的,是端口,內(nèi)部是不可視的,是內(nèi)部功能和算法的完成部分。在對一個設計實體定義了外部界面后,一旦其內(nèi)部開發(fā)完成之后,其它的設計就可以直接調(diào)用這個實體。這種將設計實體分成內(nèi)外部分的概念是vhdl系統(tǒng)設計的基本點。應用
49、vhdl進行工程設計的優(yōu)點是多方面的,具體如下:(1)支持從系統(tǒng)級到門級電路的描述,同時也支持多層次的混合描述;描述形式可以是結構描述,也可以是行為描述,或二者兼而有之。vhdl支持從上到下的設計,也支持從下到上的設計;支持模塊化設計,也支持層次化設計。(2)vhdl具有豐富的仿真語句和庫函數(shù),在設計早期,即尚未完成設計時,就可以查驗設計系統(tǒng)的功能可行性,隨時可對設計項目進行模擬仿真。也就是在遠離門級的較高層次上進行模擬,使設計者在設計早期就能對整個設計項目的結構和功能的可行性做出決策。(3)vhdl具有行為描述能力和程序結構,能支持大規(guī)模設計的模塊分解和已有設計模塊的再利用功能。vhdl中設
50、計實體的概念、程序包的概念、設計庫的概念都為大型設計項目的分解和并行工作提供了有利的支持。這一點符合大規(guī)模電子系統(tǒng)的高效、高速設計完成必須由多人甚至由多個開發(fā)組共同并行工作才能實現(xiàn)的市場需求。(4)用vhdl完成的一個確定的設計項目,在eda工具軟件的支持下,編譯器將vhdl所表達的電路功能自動地轉(zhuǎn)換為文本方式表達的基本邏輯元件連接圖網(wǎng)表文件。應用eda工具的邏輯優(yōu)化功能,可以自動的把一個綜合后的設計項目變成一個更小、更高速的電路系統(tǒng)。反過來,設計者還可以從綜合和優(yōu)化后的電路獲得設計信息反饋去更新修改vhdl設計描述,使之更加完善。(5)vhdl對設計項目的描述具有獨立性,實際設計者可以在不懂
51、硬件的結構,不知最終實現(xiàn)的目標器件為何的情況下,而進行獨立的設計。正是因為vhdl的硬件描述與具體的工藝技術和硬件結構無關,vhdl的設計項目的目標硬件器件具有廣闊的選擇范圍,其中包括各系列的cpld、fpga及各種門陣列器件。(6)vhdl具有類屬描述語句和子程序調(diào)用等功能,對于已完成的設計項目,在不改變源程序的條件下,只需改變類屬參數(shù)或函數(shù),就能輕易改變設計項目的規(guī)模和結構。第四章 硬件電路設計4.1 系統(tǒng)組成本設計的核心部件為at89c52單片機和現(xiàn)場可編程芯片fpga。所有信號包括基準頻率信號、被測信號以及自校輸入信號均可在at89c52單片機的控制下輸入到fpga芯片中,單片機將每次
52、測試結果讀入內(nèi)存中,經(jīng)運算處理后,以十進制的形式送到8位數(shù)碼管顯示電路顯示。整個系統(tǒng)在硬件上可分為顯示模塊、鍵盤輸入模塊、測量模塊四個部分。鍵盤控制命令通過fpga內(nèi)部的掃描譯碼電路讀入單片機,來實現(xiàn)測頻、測周期、測脈寬、測占空比及復位等功能的控制。該設計以fpga的系統(tǒng)40mhz晶振作為標準頻率,單片機的晶振由fpga系統(tǒng)晶振分頻得到,易于實現(xiàn)單片機與fpga同步。系統(tǒng)框圖如圖4.1所示。具體硬件原理圖見附錄一。圖4.1 等精度測頻系統(tǒng)框圖4.2 鍵盤接口電路鍵盤接口電路如圖4.2所示。鍵盤控制命令由鍵盤掃描譯碼電路讀入,當有按鍵按下時向單片機發(fā)出中斷請求讀取鍵值。鍵盤譯碼電路的keyp引腳
53、接單片機的外部中斷0輸入引腳,用于向單片機發(fā)出中斷請求讀取鍵值。沒有按鍵按下時鍵盤譯碼電路的keyp為高電平,當有按鍵按下時,鍵盤掃描譯碼電路在確定不是干擾后,keyp引腳變?yōu)榈碗娖较騿纹瑱C發(fā)出中斷請求讀取鍵值,按鍵撤消后keyp恢復高電平。鍵盤譯碼電路的kv0.2用于向單片機輸出鍵值。由于單片機讀取鍵值的操作是通過外部中斷引起的,這樣就避免了因?qū)︽I盤掃描而占用大量單片機的cpu,提高了單片機的使用效率。圖4.2 鍵盤接口電路4.3 顯示電路本設計中的顯示方式為動態(tài)顯示,使用動態(tài)顯示方式可節(jié)省fpga內(nèi)部大量資源。顯示頻率為50hz。動態(tài)顯示即每次只有一個led被選中。但是每次驅(qū)動的間隔很短,
54、利用人體視覺效應,看起來8個數(shù)碼管好象同時點亮。顯示電路由移位存儲器、字型譯碼器、led片選譯碼器、時鐘發(fā)生器以及七段數(shù)碼管組成。其中移位存儲器用于存放要顯示的十進制數(shù)據(jù),其si引腳接單片機的rxd來接收單片機輸出的數(shù)據(jù);si-clk用于接收移位脈沖;引腳sel0.2用于接收單片機發(fā)出的控制信號來實現(xiàn)對某一時刻要顯示數(shù)據(jù)的選擇。字型譯碼器的作用是將十進制數(shù)據(jù)轉(zhuǎn)換為led字型碼以驅(qū)動七段led數(shù)碼管。時鐘發(fā)生器的作用是通過對標準頻率的分頻來輸出一個2hz的周期信號,這個信號為顯示閃爍時的頻率。led片選譯碼器用于對八片led輸出片選信號,由于顯示方式為動態(tài)顯示,因此某一時刻只能有一片led被選中
55、點亮。其s-ena引腳為顯示閃爍使能引腳,當為低電平時顯示以時鐘發(fā)生器發(fā)出的頻率閃爍,以便在某些特殊場合下引起用戶的注意。s-ena為低電平時顯示閃爍,為高電平時正常顯示。顯示電路原理圖如圖4.3所示: 圖4.3顯示模塊電路4.4 測量電路測量電路部分由測頻與自校選擇模塊、脈寬控制模塊和測頻模塊組成。其中測頻與自校選擇模塊的作用是在系統(tǒng)系統(tǒng)自檢時將標準頻率作為被測頻率信號輸送給系統(tǒng),而在正常測量時將被測信號輸送給系統(tǒng)。脈寬控制模塊和測頻模塊根據(jù)按鍵鍵值共同控制選擇被測量。其中管腳spul為脈寬、測頻選擇輸入信號,由單片機根據(jù)需要發(fā)出。當spul為高電平時測頻模塊的32位計數(shù)器的輸入使能由d觸發(fā)
56、器控制,其測量預置門控時間為被測信號周期的整數(shù)倍,此時計數(shù)值用來計算被測信號的頻率。當spul為低電平時標準計數(shù)器的輸入使能由附加模塊的pl輸出來控制,測量門控時間為被測信號的一個正脈寬的時間或一個低脈寬的時間寬度。此時標準計數(shù)器的計數(shù)值用來測量被測信號的脈寬寬度。測量電路如圖4.4所示。clr為低電平時計數(shù)器使能端bena為低電平,測頻電路不工作,系統(tǒng)清零。spul為1時系統(tǒng)測量被測信號的頻率, cl均為高電平后,在隨后到來的tclk上升沿bena及start引腳變?yōu)楦唠娖剑嫈?shù)器開始計數(shù)。當cl變?yōu)榈碗娖胶?,在隨后到來的tclk上升沿bena變?yōu)榈碗娖剑嫈?shù)器停止計數(shù)。同時start引腳變?yōu)榈碗娖接靡酝ㄖ獑纹瑱C計數(shù)結束。在單片機發(fā)出的sel0.2控制下通過data0.7分8次將計數(shù)器的計數(shù)值讀入單片機。測量電路原理圖如圖4.4所示,測量電路波形圖如圖4.5所示,測量電路邏輯符號如圖4.6所示。 圖4.4 測量電路原理圖 圖4.5 測量電路波
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年銀團貸款協(xié)議
- 2025年度補充協(xié)議范本:簽約次數(shù)限定與實施標準6篇
- 2024年食品包裝材料供貨合同
- 2024年碎石加工與石材深加工融合合同范本3篇
- 2024移動支付技術服務與許可合同
- 2024轄區(qū)物業(yè)滅鼠與公共設施保養(yǎng)服務合同3篇
- 2025年度跨境電商代理招聘合作協(xié)議2篇
- 2024預制混凝土構件產(chǎn)業(yè)鏈上下游企業(yè)合作協(xié)議范本3篇
- 南開大學時間序列分析往年期末試題考題
- 2025年度社區(qū)食堂經(jīng)營權租賃合同3篇
- 零缺陷與質(zhì)量成本
- 網(wǎng)吧企業(yè)章程范本
- 安徽省書法家協(xié)會會員登記表
- 阿特拉斯基本擰緊技術ppt課件
- 五格數(shù)理解釋及吉兇對照
- 婚姻狀況聲明書
- 新課程理念下的班主任工作藝術
- (完整版)企業(yè)破產(chǎn)流程圖(四張)
- 領導激勵藝術教材
- 化肥對土壤的影響
- 水泥罐抗傾覆驗算7頁
評論
0/150
提交評論