




已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
江 蘇 大 學 學 士 學 位 論 文目 錄引言1第一章 概述21.1 課題研究背景21.2 國內(nèi)外概況21.3 設(shè)計概述31.4 設(shè)計內(nèi)容31.5 設(shè)計原理31.6 設(shè)計功能4第二章 技術(shù)與開發(fā)工具52.1 VHDL簡介52.1.1 簡介52.1.2 VHDL程序組成部分62.1.3 VHDL系統(tǒng)優(yōu)勢62.2 MAX+PLUS72.2.1 軟件簡介72.2.3 軟件組成82.2.4 設(shè)計流程9第三章 系統(tǒng)分析103.1數(shù)字頻率計的設(shè)計任務(wù)及要求103.2 模塊的劃分103.3設(shè)計分析11第四章 各功能模塊基于VHDL的設(shè)計124.1 時基產(chǎn)生與測頻時序控制電路模塊的VHDL源程序124.2 待測信號脈沖計數(shù)電路模塊的VHDL源程序134.2.1 十進制加法計數(shù)器的VHDL源程序134.2.2待測信號脈沖計數(shù)器的VHDL源程序144.3 鎖存與譯碼顯示控制電路模塊的VHDL源程序154.3.1 譯碼顯示電路的VHDL源程序154.3.2 鎖存與譯碼顯示控制模塊的VHDL源程序164.4 頂層電路的VHDL源程序18第五章 數(shù)字頻率計波形仿真205.1 時基產(chǎn)生與測頻時序控制電路模塊的仿真205.2 待測信號脈沖計數(shù)電路模塊的仿真205.2.1 十進制加法計數(shù)器的仿真205.2.2待測信號脈沖計數(shù)器的仿真215.3 鎖存與譯碼顯示控制電路模塊的仿真215.3.1 譯碼顯示電路的仿真215.3.2 鎖存與譯碼顯示控制模塊的仿真225.4 數(shù)字頻率計系統(tǒng)的仿真22結(jié)論24致 謝25參考文獻26基于VHDL的數(shù)字頻率計的設(shè)計摘要 本文介紹了一種自頂向下分層設(shè)計多功能數(shù)字頻率計的設(shè)計方法。該頻率計采用VHDL硬件描述語言編程以MAX+PLUS為開發(fā)環(huán)境,極大地減少了硬件資源的占用。數(shù)字頻率計模塊劃分的設(shè)計具有相對獨立性,可以對模塊單獨進行設(shè)計、調(diào)試和修改,縮短了設(shè)計周期。該數(shù)字頻率計的測量范圍為lHz1MHz,響應(yīng)時間小于等于15秒;其測試結(jié)果由4只七段數(shù)碼管穩(wěn)定顯示,測量誤差小于等于1 。仿真波形與分析結(jié)果表明,所設(shè)計的電路通過硬件仿真能夠滿足數(shù)字頻率計的功能要求,具有理論與實踐意義,實現(xiàn)了電子電路自動化的過程。數(shù)字頻率計模塊劃分的設(shè)計具有相對獨立性,可以對模塊單獨進行設(shè)計、調(diào)試和修改,縮短了設(shè)計周期。關(guān)鍵詞:VHDL 數(shù)字頻率計 EDA MAX+PLUS The Design of Digital Frequency Meter based on VHDLAbstract This paper presents a top-down design of multi-layered design method of digital frequency meter. The frequency counter using VHDL hardware description language programming in MAX + PLUS for the development environment, greatly reducing the hardware resources of the occupation. Digital frequency meter module design division of the relative independence of the separate modules can design, debug and modify, shorten the design cycle. The digital frequency meter measurement range of lHz 1MHz, response time of 15 seconds or less; the test results from the four seven-segment digital tube display stability, measurement error is less than equal to 1%. Simulation waveforms and analysis results show that the designed circuit simulation by hardware to meet the functional requirements of digital frequency meter of great theoretical and practical significance of the electronic circuit to achieve the automated process. Digital frequency meter module design division of the relative independence of the separate modules can design, debug and modify, shorten the design cycle.Key words: VHDL Digital frequency meter EDA MAX+PLUS- 26 -引言隨著電子技術(shù)的發(fā)展,當前數(shù)字系統(tǒng)的設(shè)計正朝著速度快、容量大、體積小、重量輕的方向發(fā)展。推動該潮流迅猛發(fā)展的引擎就是日趨進步和完善的設(shè)計技術(shù)。目前數(shù)字頻率計的設(shè)計可以直接面向用戶需求,根據(jù)系統(tǒng)的行為和功能要求,自上至下的逐層完成相應(yīng)的描述、綜合、優(yōu)化、仿真與驗證,知道生成器件。上述設(shè)計過程除了系統(tǒng)行為和功能描述以外,其余所有的設(shè)計過程幾乎都可以用計算機來自動地完成,也就是說做到了電子設(shè)計自動化(EDA)。這樣做可以大大地縮短系統(tǒng)的設(shè)計周期,以適應(yīng)當今品種多、批量小的電子市場的需求,提高產(chǎn)品的競爭能力。電子設(shè)計自動化(EDA)的關(guān)鍵技術(shù)之一是要求用形式化方法來描述數(shù)字系統(tǒng)的硬件電路,即要用所謂硬件描述語言來描述硬件電路。所以硬件描述語言及相關(guān)的仿真、綜合等技術(shù)的研究是當今電子設(shè)計自動化領(lǐng)域的一個重要課題。硬件描述語言的發(fā)展至今已有幾十年的歷史,并已成功地應(yīng)用到系統(tǒng)的仿真、驗證和設(shè)計綜合等方面。80年代后由美國國防部開發(fā)的VHDL語言(VHSIC Hardware Description Language)是一種面向設(shè)計的多層次、多領(lǐng)域且得到一致認同的標準的硬件描述語言,滿足了廣大用戶所求,并在1987年12月由IEEE標準化。它的出現(xiàn)為電子設(shè)計自動化(EDA)的普及和推廣奠定了堅實的基礎(chǔ)。據(jù)1991年有關(guān)統(tǒng)計表明,VHDL語言已被廣大設(shè)計者所接受。另外,眾多的CAD廠商也紛紛使自己新開發(fā)的電子設(shè)計軟件與VHDL語言兼容。由此可見,使用VHDL語言來設(shè)計數(shù)字系統(tǒng)是電子設(shè)計技術(shù)的大勢所趨。數(shù)字頻率計是數(shù)字電路中的一個典型應(yīng)用,實際的硬件設(shè)計用到的器件較多,連線比較復雜,而且會產(chǎn)生較大的延時,造成測量誤差、可靠性差。隨著可編程邏輯器件(CPLD)的廣泛應(yīng)用,以EDA工具為開發(fā)平臺,利用VHDL(Very High Speed Integrated Circuit Hardware Description Language,超高速集成電路硬件描述語言)工業(yè)標準硬件描述語言,采用自頂向下(Top to Down)和基于庫(Library-based)的設(shè)計,設(shè)計者不但可以不必了解硬件結(jié)構(gòu)設(shè)計,而且將使系統(tǒng)大大簡化,提高整體的性能和可靠性。第一章 概述1.1 課題研究背景數(shù)字頻率計是電子測量與儀表技術(shù)最基礎(chǔ)的電子儀表類別之一, 數(shù)字頻率計是計算機、通訊設(shè)備、音頻視頻等科研生產(chǎn)領(lǐng)域不可缺少的測量儀器,而且它是數(shù)字電壓必不可少的部件。當今數(shù)字頻率計不僅是作為電壓表、計算機、天線電廣播通訊設(shè)備、工藝過程自動化裝置。多種儀表儀器與家庭電器等許多電子產(chǎn)品中的數(shù)據(jù)信息輸出顯示器反映到人們眼簾。集成數(shù)字頻率計由于所用元件少、投資少,體積小,功耗低,且可靠性高,功能強,易于設(shè)計和研發(fā),使得它具有技術(shù)上的實用性和應(yīng)用的廣泛性。不論從我們用的彩色電視機、電冰箱,DVD,還有我們現(xiàn)在家庭常用到的數(shù)字電壓表數(shù)字萬用表等等都包含有頻率計。現(xiàn)在頻率計已是向數(shù)字智能方向發(fā)展,即可以很精確的讀數(shù)也精巧易于控制。數(shù)字頻率計已是現(xiàn)在頻率計發(fā)展的方向,它不僅可以很方便的讀數(shù),而且還可以使頻率的測量范圍和測量準確度上都比模擬先進.而且頻率計的使用已是很多的方面,數(shù)字衛(wèi)星、數(shù)字通訊等高科技的領(lǐng)域都有應(yīng)用,今天數(shù)字頻率計的發(fā)展已經(jīng)不僅僅是一個小電子產(chǎn)品的發(fā)展也是整個民族乃至整個國家的發(fā)展,所以頻率計的發(fā)展是一個整體的趨勢。而從民族產(chǎn)業(yè)上來說,我們在這種產(chǎn)業(yè)中還落后于西方發(fā)達國家,這將會關(guān)系到民族產(chǎn)業(yè)的興衰。所以我們必須很重視當前的情況,學習發(fā)達國家的先進技術(shù)以發(fā)展本國的產(chǎn)業(yè)。1.2 國內(nèi)外概況我國的頻率計其實不是落后發(fā)達國家太多的,我國在這個領(lǐng)域的發(fā)展是極其迅速的,現(xiàn)在的技術(shù)實際已是多年來見證。我國現(xiàn)階段電子產(chǎn)品的市場特點,電子數(shù)字化發(fā)展很快。在我國和發(fā)達國家的發(fā)展情況是趨于一致的,數(shù)字頻率計已經(jīng)應(yīng)用于高科技等產(chǎn)品上面,可以不無夸張的說沒有不包含有頻率計的電子產(chǎn)品。我國的CD、VCD、DVD和數(shù)字音響廣播等新技術(shù)已開始大量進入市場;而在今天這些行業(yè)中都必須用到頻率計。到今天頻率計已開始并正在向智能、精細方向的發(fā)展。國外的發(fā)展比我國要早,所以在這些行業(yè)中還領(lǐng)先于我們,我國還是缺少開發(fā)和研發(fā)的資金投入,很多的電子企業(yè)都不太樂意去花大量的時間、資金和精力去研究和開發(fā),這也就使得我國在這方面的人力和資金都不充足,也就無法于發(fā)達國家相比,不能夠形成一個量產(chǎn)的效果。從而很多的企業(yè)沒有競爭力,這也和我國其他的民族產(chǎn)業(yè)存在相同的情況,這也正是我國在高速發(fā)展后的今天很少有自己的民族品牌的原因,所以我國應(yīng)該大力的支持自己的民族品牌,不僅僅是要在資金和人才的投入,還要有具體的實際行動并起到一定的保護作用。1.3 設(shè)計概述所謂頻率,就是周期信號在單位時間(1s)里變化的次數(shù)。本數(shù)字頻率計的設(shè)計思路是:(1) 根據(jù)頻率計的測頻原理,可以選擇合適的時基信號對輸入被測信號脈沖進行計數(shù),實現(xiàn)測頻的目的。(2) 根據(jù)數(shù)字頻率計的基本原理,本文設(shè)計方案的基本思想是分為三個模塊來實現(xiàn)其功能,即時基產(chǎn)生與測頻時序控制電路模塊、待測信號脈沖計數(shù)電路模塊和鎖存與譯碼顯示控制電路模塊,并且分別用VHDL對其進行編程,實現(xiàn)計數(shù)電路、鎖存電路、顯示電路等。1.4 設(shè)計內(nèi)容分析數(shù)字頻率計的功能,完成功能模塊的劃分,分別用VHDL語言完成底層模塊的設(shè)計和以原理圖的方法完成頂層模塊的設(shè)計,分別對各個模塊以及頂層模塊進行仿真分析,最后在硬件開發(fā)平臺上進行測試。1.5 設(shè)計原理眾所周知,頻率信號易于傳輸,抗干擾性強,可以獲得較好的測量精度。因此,頻率檢測是電子測量領(lǐng)域最基本的測量之一。頻率計的基本原理是用一個頻率穩(wěn)定度高的頻率源作為基準時鐘,對比測量其他信號的頻率。通常情況下計算每秒內(nèi)待測信號的脈沖個數(shù),即閘門時間為1s。閘門時間可以根據(jù)需要取值,大于或小于1S都可以。閘門時間越長,得到的頻率值就越準確,但閘門時間越長,則每測一次頻率的間隔就越長。閘門時間越短,測得的頻率值刷新就越快,但測得的頻率精度就受影響。一般取1s作為閘門時間。數(shù)字頻率計的關(guān)鍵組成部分包括測頻控制信號發(fā)生器、計數(shù)器、鎖存器、譯碼驅(qū)動電路和顯示電路,其原理框圖如圖1. 1所示。計數(shù)器鎖存器譯碼驅(qū)動電路數(shù)碼管顯示測頻控制信號發(fā)生器圖1.1 原理框圖待測信號1.6 設(shè)計功能 四位十進制數(shù)字頻率計用四組七段譯碼顯示的數(shù)字頻率計,其頻率測量范圍為1Hz10kHz。采用記憶顯示的方法,即在測量過程中不刷新數(shù)據(jù),等數(shù)據(jù)過程結(jié)束后才顯示測量結(jié)果,給出待測信號的頻率值,并保存到下一次測量結(jié)束,顯示時間不少于1秒。第二章 技術(shù)與開發(fā)工具2.1 VHDL簡介2.1.1 簡介VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。VHDL的程序結(jié)構(gòu)特點是將一項工程設(shè)計,或稱設(shè)計實體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可是部分,及端口)和內(nèi)部(或稱不可視部分),既涉及實體的內(nèi)部功能和算法完成部分。在對一個設(shè)計實體定義了外部界面后,一旦其內(nèi)部開發(fā)完成后,其他的設(shè)計就可以直接調(diào)用這個實體。這種將設(shè)計實體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)計的基本點。VHDL 語言能夠成為標準化的硬件描述語言并獲得廣泛應(yīng)用 , 它自身必然具有很多其他硬件描述語言所不具備的優(yōu)點。歸納起來,VHDL 語言主要具有以下優(yōu)點:(1) VHDL 語言功能強大,設(shè)計方式多樣 VHDL 語言具有強大的語言結(jié)構(gòu), 只需采用簡單明確的VHDL語言程序就可以描述十分復雜的硬件電路。同時,它還具有多層次的電路設(shè)計描述功能。此外,VHDL 語言能夠同時支持同步電路、異步電路和隨機電路的設(shè)計實現(xiàn),這是其他硬件描述語言所不能比擬的。VHDL 語言設(shè)計方法靈活多樣 , 既支持自頂向下的設(shè)計方式, 也支持自底向上的設(shè)計方法; 既支持模塊化設(shè)計方法, 也支持層次化設(shè)計方法。 (2) VHDL語言具有強大的硬件描述能力 VHDL語言具有多層次的電路設(shè)計描述功能,既可描述系統(tǒng)級電路 , 也可以描述門級電路;描述方式既可以采用行為描述、寄存器傳輸描述或者結(jié)構(gòu)描述,也可以采用三者的混合描述方式。同時,VHDL語言也支持慣性延遲和傳輸延遲,這樣可以準確地建立硬件電路的模型。VHDL語言的強大描述能力還體現(xiàn)在它具有豐富的數(shù)據(jù)類型。VHDL 語言既支持標準定義的數(shù)據(jù)類型,也支持用戶定義的數(shù)據(jù)類型,這樣便會給硬件描述帶來較大的自由度。 (3) VHDL語言具有很強的移植能力 VHDL語言很強的移植能力主要體現(xiàn)在: 對于同一個硬件電路的 VHDL 語言描述,它可以從一個模擬器移植到另一個模擬器上、從一個綜合器移植到另一個綜合器上或者從一個工作平臺移植到另一個工作平臺上去執(zhí)行。 (4) VHDL語言的設(shè)計描述與器件無關(guān) 采用VHDL語言描述硬件電路時,設(shè)計人員并不需要首先考慮選擇進行設(shè)計的器件。這樣做的好處是可以使設(shè)計人員集中精力進行電路設(shè)計的優(yōu)化,而不需要考慮其他的問題。當硬件電路的設(shè)計描述完成以后,VHDL 語言允許采用多種不同的器件結(jié)構(gòu)來實現(xiàn)。 (5) VHDL語言程序易于共享和復用 VHDL語言采用基于庫(library)的設(shè)計方法。在設(shè)計過程中,設(shè)計人員可以建立各種可再次利用的模塊,一個大規(guī)模的硬件電路的設(shè)計不可能從門級電路開始一步步地進行設(shè)計,而是一些模塊的累加。這些模塊可以預(yù)先設(shè)計或者使用以前設(shè)計中的存檔模塊,將這些模塊存放在庫中,就可以在以后的設(shè)計中進行復用。 2.1.2 VHDL程序組成部分全部的VHDL程序由實體(Entity)、構(gòu)造體(Architecture)、配置(Configuration)、包集合(Package)、庫(Library)5個部分組成。各組成部分的作用是:(1) 實體 用于描述所設(shè)計的系統(tǒng)的外部接口信號。(2) 構(gòu)造體 用于描述系統(tǒng)內(nèi)部的結(jié)構(gòu)和行為。(3) 配置 用于從庫中選取不同單元(器件)來組成系統(tǒng)設(shè)計的不同版本。(4) 包集合 存放各設(shè)計模塊都能共享的數(shù)據(jù)類型、常數(shù)和子程序等。(5) 庫 存放已經(jīng)編譯了的實體、構(gòu)造體、包集合和配置。庫可由系統(tǒng)工程師生成或由ASIC芯片商提供,以便在設(shè)計中共享。2.1.3 VHDL系統(tǒng)優(yōu)勢(1) 與其他的硬件描述語言相比,VHDL具有更強的行為描述能力,從而決定了他成為系統(tǒng)設(shè)計領(lǐng)域最佳的硬件描述語言。強大的行為描述能力是避開具體的器件結(jié)構(gòu),從邏輯行為上描述和設(shè)計大規(guī)模電子系統(tǒng)的重要保證。(2) VHDL豐富的仿真語句和庫函數(shù),使得在任何大系統(tǒng)的設(shè)計早期就能查驗設(shè)計系統(tǒng)的功能可行性,隨時可對設(shè)計進行仿真模擬。 (3) VHDL語句的行為描述能力和程序結(jié)構(gòu)決定了他具有支持大規(guī)模設(shè)計的分解和已有設(shè)計的再利用功能。符合市場需求的大規(guī)模系統(tǒng)高效,高速的完成必須有多人甚至多個代發(fā)組共同并行工作才能實現(xiàn)。 (4) 對于用VHDL完成的一個確定的設(shè)計,可以利用EDA工具進行邏輯綜合和優(yōu)化,并自動的把VHDL描述設(shè)計轉(zhuǎn)變成門級網(wǎng)表。 (5) VHDL對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計實現(xiàn)的目標器件是什么,而進行獨立的設(shè)計。2.2 MAX+PLUS2.2.1 軟件簡介MAX+PLUS(Multiple Array and Programming Logic User System)開發(fā)工具是Altera公司推出的一種EDA工具,具有靈活高效、使用便捷和易學易用等特點。Altera公司在推出各種CPLD的同時,也在不斷地升級相應(yīng)的開發(fā)工具軟件,已從早起的第一代A+PLUS、第二代MAX+PLUS發(fā)展到第三代MAX+PLUS和第四代Quartus。使用MAX+PLUS軟件,設(shè)計者無需精通器件內(nèi)部的復雜結(jié)構(gòu),只需用業(yè)已熟悉的設(shè)計輸入工具,如硬件描述語言、原理圖等進行輸入即可,MAX+PLUS就會自動將設(shè)計轉(zhuǎn)換成目標文件下載到器件中去。MAX+PLUS開發(fā)系統(tǒng)具有以下特點。(1) 多平臺。MAX+PLUS軟件可以在基于PC機的操作系統(tǒng)如Windows95、Windows98、Windows2000、Windows NT下運行,也可以在Sun SPAC station等工作站上運行。(2) 開放的界面。MAX+PLUS提供了與其他設(shè)計輸入、綜合和校驗工具的接口,借口符合EDIF 200/300、LPM、VHDL、Verilog-HDL等標準。目前MAX+PLUS所支持的主流第三方EDA工具主要有Synopsys、Viewlogic、Mentor、Graphics、Cadence、OrCAD、Xilinx等公司提供的工具。(3) 模塊組合式工具軟件。MAX+PLUS具有一個完整的可編程邏輯設(shè)計環(huán)境,包括設(shè)計輸入、設(shè)計處理、設(shè)計校驗和下載編程4個模塊,設(shè)計者可以按設(shè)計流程選擇工作模塊。(4) 與結(jié)構(gòu)無關(guān)。MAX+PLUS開發(fā)系統(tǒng)的核心Compiler(編譯器)能夠自動完成邏輯綜合和優(yōu)化,它支持Altera的Classic、MAX7000、FLEX8000和FLEX10K等可編程器件系列,提供一個與結(jié)構(gòu)無關(guān)的PLD開發(fā)環(huán)境。(5) 支持硬件描述語言。MAX+PLUS支持各種HDL設(shè)計輸入語言,包括VHDL、Verilog-HDL和Altera的硬件描述語言AHDL。(6) 豐富的設(shè)計庫。MAX+PLUS提供豐富的庫單元供設(shè)計者調(diào)用,其中包括一些基本的邏輯單元,74系列的器件和多種特定功能的宏功能模塊以及參數(shù)化的兆功能模塊。調(diào)用庫單元進行設(shè)計,可以大大減輕設(shè)計人員的工作量,縮短設(shè)計周期。2.2.3 軟件組成MAX+PLUS軟件采用模塊化結(jié)構(gòu),包括設(shè)計輸入、項目處理、項目校驗和器件編程4個部分,所有這些部分都集成在一個可視化的操作環(huán)境下。(1) 設(shè)計輸入MAX+PLUS的設(shè)計輸入方法有多種,主要包括文本設(shè)計輸入、原理圖輸入、波形設(shè)計輸入等多種方式。另外,還可以利用第三方EDA工具生成的網(wǎng)表文件輸入,該軟件可接受的網(wǎng)表有EDIF格式、VHDL格式及Verilog格式。MAX+PLUS是一種層次設(shè)計工具,可根據(jù)實際情況靈活地使用最適合每一層次的設(shè)計方法。(2) 項目處理設(shè)計處理的任務(wù)就是對項目進行編譯(Compile),編譯實際就是將設(shè)計者編寫的設(shè)計改為可以用于生產(chǎn)的“語言”。編譯器通過讀入設(shè)計文件并產(chǎn)生用于編程、仿真和定時分析的輸出文件來完成編譯工作。MAX+PLUS提供的編譯軟件,只需簡單的操作,如參數(shù)選擇、指定功能等,就可進行網(wǎng)表轉(zhuǎn)換、邏輯分割和布線布局。(3) 項目校驗MAX+PLUS提供的設(shè)計校驗過程包括仿真和定時分析,項目編譯后,為確保設(shè)計無誤,要再用專用軟件進行仿真。如果發(fā)現(xiàn)了錯誤,則應(yīng)對設(shè)計輸入進行部分修改直至無誤。(4) 器件編程MAX+PLUS通過編程器(Device Programmer)將編譯器生成的編程文件編程或配置到Altera CPLD器件中,然后加入實際激勵信號進行測試,檢查是否達到了設(shè)計要求?Altera公司器件的編程方法有許多種,可通過編程器、JTAG在系統(tǒng)編程及Altera在線配置等方式進行。在設(shè)計過程中,如果出現(xiàn)錯誤,則需要重新回到設(shè)計輸入階段,改正錯誤或調(diào)整電路后重復上述過程。2.2.4 設(shè)計流程使用MAX+PLUS進行可編程邏輯器件開發(fā)主要包括4個階段:設(shè)計輸入、編譯處理、驗證(包括功能仿真、時序仿真、和定時分析)和器件編程,流程如圖2. 1所示:設(shè)計要求設(shè)計輸入編譯處理驗證器件編程器件測試系統(tǒng)產(chǎn)品設(shè)計修改圖2.1 設(shè)計流程圖第三章 系統(tǒng)分析3.1數(shù)字頻率計的設(shè)計任務(wù)及要求設(shè)計一個四位十進制的數(shù)字頻率計,要求具有以下功能:(1) 測量范圍:1Hz10kHz。(2) 測量誤差1%。(3) 響應(yīng)時間15s。(4) 顯示時間不少于1s。(5) 具有記憶顯示的功能,即在測量的過程中不刷新數(shù)據(jù),等數(shù)據(jù)過程結(jié)束后才顯示測量結(jié)果,給出待測信號的頻率值,并保存到下一次測量結(jié)束。3.2 模塊的劃分根據(jù)系統(tǒng)設(shè)計要求,系統(tǒng)設(shè)計采用自頂向下的設(shè)計方法,系統(tǒng)的組成框圖如圖3. 1所示,包括時基產(chǎn)生與測頻時序控制電路模塊,以及待測信號脈沖計數(shù)電路模塊和鎖存與譯碼顯示控制電路模塊。時基產(chǎn)生與測頻時序控制電路待測信號脈沖計數(shù)電路鎖存與譯碼顯示電路ENCLRLOCKq0:15z10:6z20:6z30:6z40:6待測信號F_IN標準時鐘CLK圖3.1 數(shù)字頻率計的組成框圖(1) 時基產(chǎn)生與測頻時序控制電路模塊時基產(chǎn)生與測頻時序控制電路的主要產(chǎn)生計數(shù)允許信號EN、清零信號CCLR和鎖存信號LOCK。(2) 待測信號脈沖計數(shù)電路模塊待測信號脈沖計數(shù)電路是對待測脈沖信號的頻率進行測量,它可由4個十進制加法計數(shù)器組成,其中EN為計數(shù)選通控制信號,CLR為計數(shù)器清零信號。在計數(shù)器清零信號CLR清零后,當計數(shù)選通控制信號EN有效時,開始對待測信號進行計數(shù)。如果計數(shù)選通控制信號EN的寬度為1s,那么計數(shù)結(jié)果就為待測信號的頻率;如果計數(shù)選通信號EN的寬度為100ms,那么待測信號的頻率等于計數(shù)結(jié)果10。(3) 鎖存與譯碼顯示控制電路模塊鎖存與譯碼顯示控制電路用于實現(xiàn)記憶顯示,在測量過程中不刷新新的數(shù)據(jù),直到測量過程結(jié)束后,鎖存顯示測量結(jié)果,并且保存到下一次測量結(jié)束。鎖存與譯碼顯示電路的功能是對四位BCD碼進行鎖存,并轉(zhuǎn)換為對應(yīng)的4組七段碼,用于驅(qū)動數(shù)碼管。3.3設(shè)計分析采用VHDL語言設(shè)計一個復雜的電路系統(tǒng),運用自頂向下的設(shè)計思想,將系統(tǒng)按功能逐層分割的層次化設(shè)計方法進行設(shè)計。在頂層對內(nèi)部各功能塊的連接關(guān)系和對外的接口關(guān)系進行了描述,而功能塊的邏輯功能和具體實現(xiàn)形式則由下一層模塊來描述。各功能模塊采用VHDL語言來描述。第四章 各功能模塊基于VHDL的設(shè)計4.1 時基產(chǎn)生與測頻時序控制電路模塊的VHDL源程序程序ctrl.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRL IS PORT(CLK: IN STD_LOGIC; -系統(tǒng)時鐘 LOCK: OUT STD_LOGIC; -鎖存信號 EN: OUT STD_LOGIC; -計數(shù)允許信號 CLR: OUT STD_LOGIC); -清零信號END;ARCHITECTURE ART OF CTRL IS SIGNAL Q: STD_LOGIC_VECTOR(3 DOWNTO 0); -定義變量BEGINPROCESS(CLK) BEGIN IF(CLKEVENT AND CLK=1)THEN -檢測時鐘上升沿 IF Q=1111THEN Q=0000; -計數(shù)大于15,清零 ELSE Q=Q+1; -允許計數(shù) END IF; END IF; EN=NOT Q(3); LOCK=Q(3) AND NOT(Q(2) AND Q(1); CLR=Q(3) AND Q(2) AND NOT(Q(1); END PROCESS;END ART; 程序主要講述了由時鐘信號產(chǎn)生計數(shù)允許信號、清零信號和鎖存信號,而且限定了響應(yīng)時間為不超過15s。4.2 待測信號脈沖計數(shù)電路模塊的VHDL源程序4.2.1 十進制加法計數(shù)器的VHDL源程序程序cb10.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CB10 IS PORT(CLK,EN,CLR: IN STD_LOGIC; COUNT10: BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0); -計數(shù)輸信號END CB10;ARCHITECTURE ART OF CB10 IS -結(jié)構(gòu)體 BEGIN PROCESS(CLK,CLR,EN) BEGIN IF CLR=1 THEN COUNT10=0000; -計數(shù)器清零 ELSIF RISING_EDGE(CLK) THEN -檢測時鐘上升沿 IF(EN=1) THEN -檢測是否允許計數(shù) IF COUNT10=1001 THEN COUNT10=0000; -計數(shù)值滿9清零 ELSE COUNT10=COUNT10+1; -允許計數(shù) END IF; END IF; END IF; END PROCESS;END ART; 程序主要講述了十進制加法計數(shù)器的使用,在符合了一定的標準以后十進制的使用,在計數(shù)器滿9后清零。4.2.2待測信號脈沖計數(shù)器的VHDL源程序程序count.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY COUNT IS PORT(CLK: IN STD_LOGIC; -待測時鐘信號 EN: IN STD_LOGIC; -計數(shù)選通控制信號 CLR: IN STD_LOGIC; -計數(shù)器清零信號 QA,QB,QC,QD: BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0); -結(jié)果輸出信號END;ARCHITECTURE ART OF COUNT IS COMPONENT CB10 -元件CB10引用說明語句 PORT(CLK,EN,CLR: IN STD_LOGIC; COUNT10: BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0); -計數(shù)輸出信號 END COMPONENT; SIGNAL CLK2: STD_LOGIC; SIGNAL CLK3: STD_LOGIC; SIGNAL CLK4: STD_LOGIC; BEGIN CLK2=NOT QA(3); CLK3=NOT QB(3); CLK4=NOT QC(3); U1:CB10 PORT MAP(CLK,EN,CLR,QA); -元件引用例示 U2:CB10 PORT MAP(CLK2,EN,CLR,QB); -元件引用例示 U3:CB10 PORT MAP(CLK3,EN,CLR,QC); -元件引用例示 U4:CB10 PORT MAP(CLK4,EN,CLR,QD); -元件引用例示END ART;4.3 鎖存與譯碼顯示控制電路模塊的VHDL源程序4.3.1 譯碼顯示電路的VHDL源程序程序bcd7.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY BCD7 IS PORT(BCD: IN STD_LOGIC_VECTOR(3 DOWNTO 0); -BCD輸入信號 LED: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); -七段譯碼輸出信號END;ARCHITECTURE ART OF BCD7 IS BEGIN LED=0111111 WHEN BCD=0000 ELSE -對照七段字形顯示譯碼器真值表 0000110 WHEN BCD=0001 ELSE 1011011 WHEN BCD=0010 ELSE 1001111 WHEN BCD=0011 ELSE 1100110 WHEN BCD=0100 ELSE 1101101 WHEN BCD=0101 ELSE 1111101 WHEN BCD=0110 ELSE 0000111 WHEN BCD=0111 ELSE 1111111 WHEN BCD=1000 ELSE 1101111 WHEN BCD=1001 ELSE 0000000;END ART; 程序主要講述了七段譯碼器的顯示問題,對應(yīng)的給出了信號輸入過程中七段譯碼器的各種顯示。4.3.2 鎖存與譯碼顯示控制模塊的VHDL源程序程序lock.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY LOCK IS PORT(LOCK: IN STD_LOGIC; QA,QB,QC,QD: IN STD_LOGIC_VECTOR(3 DOWNTO 0); LEDA,LEDB,LEDC,LEDD: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);-頻率計數(shù)輸出END;ARCHITECTURE ART OF LOCK IS SIGNAL QAL,QBL,QCL,QDL: STD_LOGIC_VECTOR(3 DOWNTO 0); COMPONENT BCD7 -元件BCD7引用說明語句 PORT(BCD: IN STD_LOGIC_VECTOR(3 DOWNTO 0); LED: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); END COMPONENT; BEGIN PROCESS(LOCK) BEGIN IF(LOCKEVENT AND LOCK=1)THEN -檢測時鐘上升沿 QAL=QA; QBL=QB; QCL=QC; QDL=QD; END IF; END PROCESS; U0: BCD7 PORT MAP(QAL,LEDA); -元件引用例示 U1: BCD7 PORT MAP(QBL,LEDB); -元件引用例示 U2: BCD7 PORT MAP(QCL,LEDC); -元件引用例示 U3: BCD7 PORT MAP(QDL,LEDD); -元件引用例示END ART; 程序主要講述了調(diào)用七段譯碼器的顯示,將輸入的信號經(jīng)過譯碼之后在七段譯碼器上進行顯示。4.4 頂層電路的VHDL源程序程序pinlvji.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY PINLVJI IS PORT(F_IN,CLK: IN STD_LOGIC; ENT,LOCKT,CLRT: BUFFER STD_LOGIC; Z1,Z2,Z3,Z4: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END PINLVJI;ARCHITECTURE ART OF PINLVJI IS SIGNAL ENS,LOCKS,CLRS: STD_LOGIC; SIGNAL QAS,QBS,QCS,QDS: STD_LOGIC_VECTOR(3 DOWNTO 0);COMPONENT CTRL -元件CTRL引用說明語句 PORT(CLK: IN STD_LOGIC; EN,LOCK,CLR: OUT STD_LOGIC);END COMPONENT;COMPONENT COUNT -元件COUNT引用說明語句 PORT(CLK,EN,CLR: IN STD_LOGIC; QA,QB,QC,QD: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END COMPONENT;COMPONENT LOCK -元件LOCK引用說明語句 PORT(LOCK: IN STD_LOGIC; QA,QB,QC,QD: IN STD_LOGIC_VECTOR(3 DOWNTO 0); LEDA,LEDB,LEDC,LEDD: OUT STD_LOGIC_VECTOR(6 DOWNTO 0);END COMPONENT; BEGIN ENT=ENS; LOCKT=LOCKS; CLRT=CLRS; U1:CTRL PORT MAP(CLK,ENS,LOCKS,CLRS); -元件引用例示 U2:COUNT PORT MAP(F_IN,ENS,CLRS,QAS,QBS,QCS,QDS); -元件引用例示 U3:LOCK PORT MAP(LOCKS,Q
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 21711.3-2025基礎(chǔ)機電繼電器第3部分:強制定位(機械聯(lián)鎖)觸點繼電器
- 2025年初升高暑期數(shù)學講義專題09 函數(shù)及其表示分層訓練(含答案)
- 2003年江蘇省淮安市中考數(shù)學真題【含答案、解析】【含答案、解析】
- 生物●廣東卷丨2023年廣東省普通高中學業(yè)水平選擇性考試生物試卷及答案
- 布洛芬片的紫外鑒別授課馮白茹藥物分析92課件
- 薄層色譜法35課件
- 考研復習-風景園林基礎(chǔ)考研試題附參考答案詳解(奪分金卷)
- 風景園林基礎(chǔ)考研資料試題及參考答案詳解(達標題)
- (高清版)DB62∕T 1247-2019 蕨麻豬
- 2024年山東華興機械集團有限責任公司人員招聘筆試備考題庫附答案詳解(預(yù)熱題)
- GA∕T 743-2016 閃光警告信號燈
- 鐵路詞匯中英文對照
- 220kV架空送電線路鐵塔拆除施工方案
- IATF16949外審準備和審核要點
- 銀行支行裝飾裝修工程施工組織設(shè)計方案
- 實習五病例對照研究課件
- 部編語文二年級語文下冊詞語表(共8頁)
- 室間質(zhì)評匯總分析報告
- 斯特瓦爾特定理及應(yīng)用含答案
- KP高壓電纜附件樣本
- 水泥粉磨施工組織設(shè)計
評論
0/150
提交評論