




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、西南科技大學(xué)城市學(xué)院本科生畢業(yè)論文IV基于FPGA分頻器的設(shè)計(jì)摘要:分頻器是數(shù)字系統(tǒng)設(shè)計(jì)中的基本電路,在復(fù)雜數(shù)字邏輯電路設(shè)計(jì)中,根據(jù)不同設(shè)計(jì)的需要,會遇到偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻等,有時要求等占空比,也有要求非等占空比。在同一個設(shè)計(jì)中有時要求多種形式的分頻,通常由計(jì)數(shù)器或計(jì)數(shù)器的級聯(lián)構(gòu)成各種形式的偶數(shù)分頻和奇數(shù)分頻,實(shí)現(xiàn)較為簡單,但是對半整數(shù)分頻實(shí)現(xiàn)較為困難。設(shè)計(jì)師希望有一種比較方便實(shí)用的設(shè)計(jì)方法,根據(jù)情況的需要,在實(shí)驗(yàn)室就能設(shè)計(jì)分頻器并且可以馬上檢測使用,只需要更改頻率系數(shù)而不修改其他器件或是電路板。因此,本文利用verilog硬件描述語言,通過開發(fā)平臺,使用FPGA,設(shè)計(jì)了一種能滿足
2、上述情況的通用分頻器。只要在分頻器的輸入端輸入相應(yīng)的分頻系數(shù),就可以得到所需的頻率。關(guān)鍵詞:分頻器; 偶數(shù); 奇數(shù); 半整數(shù); 分頻系數(shù); FPGASeparate frequency inverter based on FPGA designAbstract:Points are the frequency of an digital system design, the basic circuit in complex digital logic circuit design, according to different design needs, will meet even poin
3、ts frequency, an odd number of points frequency, half integer points frequency etc, sometimes require 390v, such as the request 390v. In the same design sometimes require multiple forms of points frequency, usually by a counter or counter cascade constitute various forms of the frequency and the odd
4、 points even points, to achieve comparatively simple frequency, but half-and-half integer points frequency division frequency realize more difficult. Designers hope to have a more convenient and practical design methods, according to the needs of the laboratory condition, can design points frequency
5、 device and can immediately detection using, only need to change frequency coefficients and not modify other device or circuit board. Therefore, this paper use verilog hardware description language, through the development platform, use the FPGA, design a kind of can meet the above situation of prac
6、tical points frequency device. As long as the frequency of an in points corresponding points input input frequency coefficients, can get frequency required. Keywords: Points, frequency, manometers, Even, Odd, Half an integer, Points frequency coefficients, FPGA 目 錄第一章緒論11.1 FPGA簡介11.2 選題的意義和目的21.3 國
7、內(nèi)外應(yīng)用現(xiàn)狀及研究現(xiàn)狀31.3.1 應(yīng)用現(xiàn)狀31.3.2 研究現(xiàn)狀41.4 本文組織結(jié)構(gòu)5第二章 幾類分頻器的設(shè)計(jì)及其分頻原理62.1 偶數(shù)倍分頻62.1.1 分頻原理62.1.2 軟件簡介72.1.3 軟件仿真72.2 奇數(shù)倍分頻92.2.1 分頻原理92.2.2 軟件仿真102.3 半整數(shù)分頻122.4 小數(shù)分頻器132.4.1 積分分頻器132.4.2 累加器分頻142.4.3 小數(shù)分頻器的應(yīng)用152.5 本章小結(jié)17第三章 通用分頻器的設(shè)計(jì)183.1 設(shè)計(jì)方案183.1.1 設(shè)計(jì)方案一183.1.2 設(shè)計(jì)方案二183.2 系統(tǒng)設(shè)計(jì)193.2.1 電路工作流程圖及部分程序203.2.2
8、時鐘輸出流程圖及部分程序233.3 通用分頻器的應(yīng)用253.3.1 等占空比的奇數(shù)分頻器253.3.2 任意占空比的奇、偶數(shù)分頻253.3.3 等占空比的偶數(shù)分頻器263.3.4 半整數(shù)分頻器263.4 本章小結(jié)26結(jié)論27致謝28參考文獻(xiàn)29西南科技大學(xué)城市學(xué)院本科生畢業(yè)論文第一章 緒 論1.1 FPGA簡介FPGA是現(xiàn)場可編程門陣列的簡稱,是可編程邏輯器件(PLD)問世以來的第四代產(chǎn)品,適合于時序、組合等邏輯電路的應(yīng)用。它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路領(lǐng)域中的一種半定制電路而出現(xiàn)的,即解決了定制電路的不足,又克服了原有可編程器件門電路
9、數(shù)有限的缺點(diǎn)。它是當(dāng)今數(shù)字系統(tǒng)設(shè)計(jì)的主要軟件平臺,其主要特點(diǎn)就是完全由用戶通過軟件進(jìn)行配置和編程,從而完成某種特定的功能,且可以反復(fù)擦寫。在修改和升級時,不需要額外的改變PCB電路板,只是在計(jì)算機(jī)上修改和更新程序,使硬件設(shè)計(jì)工作成為軟件開發(fā)工作,縮短了系統(tǒng)的設(shè)計(jì)周期,提高了實(shí)現(xiàn)的靈活性并降低了成本,因此獲得了廣大硬件工程師的青睞。對PROM、EPROM、E2PROM熟悉的人都知道這些可編程器件的可編程原理是通過加高壓或紫外線導(dǎo)致三極管或者M(jìn)OS管內(nèi)部的載流子密度發(fā)生變化,實(shí)現(xiàn)所謂的可編程,但是這些器件或只能實(shí)現(xiàn)單次可編程或編程狀態(tài)難以穩(wěn)定。FPGA則不同,它采用了邏輯單元陣列這樣一個概念,內(nèi)部
10、包括可配置邏輯模塊CLB、輸出輸入模塊IOB和內(nèi)部連線三個部分。FPGA的可編程實(shí)際上是改變了CLB和IOB的觸發(fā)器狀態(tài)。這樣就可以實(shí)現(xiàn)多次重復(fù)的編程,由于FPGA需要被反復(fù)燒寫,它實(shí)現(xiàn)組合邏輯的基本結(jié)構(gòu)不可能像ASIC那樣通過固定的與非門來完成,而只能采用一種易于反復(fù)配置的結(jié)構(gòu)。查找表可以很好的滿足這一要求,目前主流FPGA都采用了基于SRAM工藝的查找結(jié)構(gòu),也有一些軍品和宇航級FPGA采用Flash或者熔絲與反熔絲工藝的查找表結(jié)構(gòu)。通過燒寫文件改變查找表內(nèi)容的方法來實(shí)現(xiàn)對FPGA的重復(fù)配置。根據(jù)數(shù)字電路的基本知識可以知道,對于一個N輸入的邏輯運(yùn)算,不管是與或運(yùn)算還是異或運(yùn)算等等,最多只可能
11、存在2N種結(jié)果。所以如果事先將相應(yīng)的結(jié)果存放于一個存貯單元,就相當(dāng)于實(shí)現(xiàn)了與非門電路的功能。FPGA的原理也是如此,它通過燒寫文件區(qū)配置查找表的內(nèi)容,從而在相同的電路情況下實(shí)現(xiàn)了不同的邏輯功能【11】。FPGA作為未來數(shù)字系統(tǒng)的基礎(chǔ)之一,是目前硬件設(shè)計(jì)研究的重點(diǎn),它可以代替幾十甚至上百種通用IC芯片,具有可編程和實(shí)現(xiàn)方案容易改動等特點(diǎn)。由于FPGA的現(xiàn)場可編程性及高密度性,使電路設(shè)計(jì)的大部分工作在微機(jī)上進(jìn)行,F(xiàn)PGA的功能完全由用戶編制的配置程序所決定,不改變其電路的邏輯功能。同時具有設(shè)計(jì)開發(fā)周期短、設(shè)計(jì)制造成本低、開發(fā)工具先進(jìn)、標(biāo)準(zhǔn)產(chǎn)品無需測試、質(zhì)量穩(wěn)定以及實(shí)時在線檢驗(yàn)等優(yōu)點(diǎn),因此,可廣泛應(yīng)
12、用于產(chǎn)品的原理設(shè)計(jì)和產(chǎn)品生產(chǎn)之中。在現(xiàn)代電子系統(tǒng)中,數(shù)字系統(tǒng)所占的比例越來越大。系統(tǒng)發(fā)展的優(yōu)勢是數(shù)字化和集成化,而FPGA作為可編程ASIC(專用集成電路)器件,它將在數(shù)字邏輯系統(tǒng)中發(fā)揮越來越重要的作用。1.2 選題的意義和目的自電子產(chǎn)品誕生之日起,電子產(chǎn)品開發(fā)流程和方法就隨著電子元器件的不斷演進(jìn)而變化,從最早的電子管器件到晶體管再到集成電路,工程師在設(shè)計(jì)產(chǎn)品時,所采用的工具和方法都有所不同,但是總的來說貫穿電子設(shè)計(jì)的統(tǒng)一思路是:使用印刷電路板上的分立、現(xiàn)成元件、連接器或者IC創(chuàng)建物理平臺實(shí)現(xiàn)所需要的功能。例如:在60年代,如果要設(shè)計(jì)一個收音機(jī),工程師必須通過在PCB板上通過晶體管、電阻、電容
13、、電感、電線、濾波器、二極管等電路搭建出一個物理平臺,實(shí)現(xiàn)對RF信號的調(diào)諧、濾波、放大等,最后實(shí)現(xiàn)收音機(jī)的功能?;A(chǔ)電路出現(xiàn)以后,一些分立器件被集成到一顆芯片上,但是總的設(shè)計(jì)思路沒有變化,還是要在一個PCB板上通過無源器件和IC搭建出一個物理平臺,實(shí)現(xiàn)信號的接收、處理和輸出。但是,隨著FPGA等可編程器件的誕生,設(shè)計(jì)思路正發(fā)生著微妙的變化,隨著更多功能從分立器件移到可編程領(lǐng)域,各種不同的設(shè)計(jì)流程交匯到了一起?,F(xiàn)在,有效的電子設(shè)計(jì)是將板卡設(shè)計(jì)、可編程邏輯設(shè)計(jì)和軟件開發(fā)融合在一起,未來,隨著FPGA融合處理、儲存于一體,板卡設(shè)計(jì)將融合進(jìn)可編程邏輯設(shè)計(jì)中,電子產(chǎn)品設(shè)計(jì)將演變?yōu)榭删幊踢壿嬙O(shè)計(jì)和嵌入式軟
14、件設(shè)計(jì)。那時,電子設(shè)計(jì)將更體現(xiàn)為一種軟設(shè)計(jì),一種通過開發(fā)語言和工具實(shí)現(xiàn)的設(shè)計(jì)。而FPGA將成為這種軟設(shè)計(jì)的載體,以FPGA形式存在的低成本、大規(guī)模可編程器件可以隨時的獲得,這使設(shè)計(jì)者有可能將所有系統(tǒng)核心功能都轉(zhuǎn)移到軟件設(shè)計(jì)中,并利用這種設(shè)計(jì)的優(yōu)勢【3】。分頻器是FPGA設(shè)計(jì)中使用頻率非常高的基本設(shè)計(jì)之一,盡管在目前大部分設(shè)計(jì)中,廣泛使用芯片廠家集成的鎖相環(huán)資源,如altera的PLL,Xilinx的DLL.來進(jìn)行時鐘的分頻,倍頻以及相移。但是對于時鐘要求不高的基本設(shè)計(jì),通過語言進(jìn)行時鐘的分頻相移仍然非常流行。首先這種方法可以節(jié)省芯片內(nèi)部的鎖相環(huán)資源;再者,消耗不多的邏輯單元就可以達(dá)到對時鐘操作
15、的目的。另一方面,通過語言設(shè)計(jì)進(jìn)行時鐘分頻,可以看出設(shè)計(jì)者對設(shè)計(jì)語言的理解程度。分頻器是數(shù)字系統(tǒng)設(shè)計(jì)中的基本電路,根據(jù)不同設(shè)計(jì)的需要,會遇到偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻等,有時要求等占空比,也有要求非等占空比。在同一個設(shè)計(jì)中有時要求多種形式的分頻。通常由計(jì)數(shù)器或計(jì)數(shù)器的級聯(lián)構(gòu)成各種形式的偶數(shù)分頻及非等占空比得到奇數(shù)分頻,實(shí)現(xiàn)較為簡單。但對半整數(shù)分頻、等占空比的奇數(shù)分頻及小數(shù)分頻實(shí)現(xiàn)較為困難。本文利用Verilog硬件描述語言,通過開發(fā)平臺,使用FPGA,設(shè)計(jì)了一種能滿足上述要求的分頻器。只要在分頻器的輸入端輸入相應(yīng)的分頻系數(shù),就可以得到所需的頻率。隨著各種先進(jìn)電子產(chǎn)品的推出,無線通訊網(wǎng)絡(luò)的廣
16、泛應(yīng)用,使得對晶源的要求越來越高。特別是在現(xiàn)在電子對抗站中,我們要求各種器件工作在其固定的頻率下。產(chǎn)品的工作頻率在產(chǎn)品的研發(fā)階段必須經(jīng)過反復(fù)的調(diào)試才能確定,它既要能保證產(chǎn)品的工作效率又需要保證產(chǎn)品的穩(wěn)定性。有些產(chǎn)品由于其工作區(qū)域比較廣,我們還希望它在不同的工作環(huán)境下能夠采用不同的工作頻率,在惡劣的環(huán)境下保證其工作的穩(wěn)定性,在環(huán)境比較好的情況下我們希望它的工作效率得到更好的提高。這就需要我們的工作頻率能夠隨著我們環(huán)境的變化而變化。對于一個晶振源我們只能得到一個工作頻率,但如果集成大量晶振來實(shí)現(xiàn)多頻率輸出,一方面要投入很大的成本,另一方面不同晶振間的相位延遲無法預(yù)測,而且在一個區(qū)間中集成大量晶振也
17、容易引起串?dāng)_。如果我們僅通過分頻,對較高的晶振源進(jìn)行分頻就能很容易的得到比較豐富的頻率,有利于我們對產(chǎn)品的測試和應(yīng)用在傳統(tǒng)的FPGA設(shè)計(jì)方法中,為了能實(shí)現(xiàn)等占空比的奇數(shù)分頻,常常采用對輸入頻率進(jìn)行二倍頻的電路,以及對倍頻后的頻率F進(jìn)行偶數(shù)分頻,這樣就降低設(shè)計(jì)電路的最高工作頻率,提高對硬件的要求。本設(shè)計(jì)在不改變設(shè)計(jì)要求的前提下,對常規(guī)的設(shè)計(jì)方法進(jìn)行改進(jìn),實(shí)現(xiàn)了在不需要對輸入頻率進(jìn)行二倍頻的條件下實(shí)現(xiàn)等占空比分頻,從而更好的利用頻率資源,同時降低了設(shè)計(jì)的復(fù)雜性【2】。眾所周知,分頻器是FPGA設(shè)計(jì)中使用頻率非常高的基本設(shè)計(jì)之一,盡管在目前大部分設(shè)計(jì)中,廣泛使用芯片廠家集成的鎖相環(huán)資源,如alter
18、a 的PLL,Xilinx的DLL.來進(jìn)行時鐘的分頻,倍頻以及相移。但是對于時鐘要求不高的基本設(shè)計(jì),通過語言進(jìn)行時鐘的分頻相移仍然非常流行,首先這種方法可以節(jié)省芯片內(nèi)部的鎖相環(huán)資源,再者,消耗不多的邏輯單元就可以達(dá)到對時鐘進(jìn)行操作的目的。1.3 國內(nèi)外應(yīng)用現(xiàn)狀及研究現(xiàn)狀1.3.1 應(yīng)用現(xiàn)狀隨著人類社會信息化進(jìn)程的加快,在現(xiàn)代電子系統(tǒng)設(shè)計(jì)中,數(shù)字電子系統(tǒng)所占的比例越來越大,現(xiàn)代電子系統(tǒng)發(fā)展的趨勢是數(shù)字化和集成化。而在數(shù)字系統(tǒng)中,時鐘是各模塊協(xié)同工作的根本保障,特別是時序數(shù)字系統(tǒng),沒有時鐘根本無從工作。在數(shù)字系統(tǒng)設(shè)計(jì)中,經(jīng)常需要對基準(zhǔn)時鐘進(jìn)行不同倍數(shù)的分頻而得到各模塊所需的時鐘頻率,分頻器是數(shù)字系
19、統(tǒng)設(shè)計(jì)中最常見的基本電路之一。在此前提下,低功耗的高速通信電路設(shè)計(jì)近年來在集成電路研究領(lǐng)域受到越來越多的關(guān)注。分頻器作為通信系統(tǒng)的核心部件之一,廣泛應(yīng)用于頻率合成器、正交信號生成以及時鐘恢復(fù)電路中。如圖1-1所示分頻器用于無線接收機(jī):圖1-1分頻器是頻率合成器中工作在最高頻率的模塊之一。其工作速度往往決定了整個系統(tǒng)的最高工作速度,而且其性能往往對系統(tǒng)性能有決定性的影響,因此,許多科研單位都對分頻器展開了廣泛的研究。當(dāng)前主要應(yīng)用的分頻器結(jié)構(gòu)有以下三種:觸發(fā)器結(jié)構(gòu),Miler再生環(huán)路結(jié)構(gòu),以及注入鎖定結(jié)構(gòu)。目前在通信系統(tǒng)中,大多數(shù)分頻器都采用數(shù)字觸發(fā)器結(jié)構(gòu)。這種分頻器雖然具有全寬帶工作的優(yōu)勢,但是
20、在系統(tǒng)中它們功耗往往是不能忽視的,而且其功耗隨著系統(tǒng)工作頻率的提高而增加。在一些應(yīng)用中,為了降低功耗,甚至?xí)褂梅至⒌姆诸l器作為分頻器組的第一級。1.3.2 研究現(xiàn)狀在數(shù)字邏輯電路設(shè)計(jì)中,分頻器是一種基本電路,通常用來對某個給定頻率的時鐘進(jìn)行分頻,得到所需的時鐘。時序電路設(shè)計(jì)中需要各種各樣的分頻器來獲得不同頻率的時鐘,其中以整數(shù)分頻器最為常見。整數(shù)分頻可以簡單的使用模N計(jì)數(shù)器實(shí)現(xiàn),即隨驅(qū)動時鐘跳變N次后就輸出一個進(jìn)位脈沖,然后立即被清零或置位,再開始新一輪的循環(huán)的計(jì)數(shù)。模N計(jì)數(shù)器的進(jìn)位脈沖的寬度一般與驅(qū)動時鐘相同,這對于邊沿驅(qū)動的時序邏輯并不會帶來什么問題。但是在某些需要使用電平邏輯的設(shè)計(jì)中,
21、我們更希望分頻時鐘擁有50%,或者與驅(qū)動時鐘有相同的占空比。這時就需要通過另外的邏輯方法來進(jìn)行分頻,或者使用PLL。在基于CPLD(復(fù)雜可編程邏輯器件)/FPGA(現(xiàn)場可編程門陣列)的數(shù)字系統(tǒng)設(shè)計(jì)中,很容易實(shí)現(xiàn)由計(jì)數(shù)器或其級聯(lián)構(gòu)成各種形式的偶數(shù)分頻及非等占空比的奇數(shù)分頻,但對等占空比的奇數(shù)分頻及半整數(shù)分頻的實(shí)現(xiàn)較為困難。對于分頻器的研究,Adler最早對注入鎖定分頻器進(jìn)行研究,他在注入信號強(qiáng)度很弱的情況下對此進(jìn)行了精確的推導(dǎo),并且在小注入情況下得到了注入鎖定范圍比較精確的表達(dá)式,由此可以推導(dǎo)出在弱注入鎖定現(xiàn)象發(fā)生的范圍。但是這個模型是不完善的,它的前提是注入信號的強(qiáng)度很弱,而在實(shí)際應(yīng)用中,這個
22、前提往往是不成立的。Stanford大學(xué)的Thomas H.Lee等人對其做出了改進(jìn),提高了模型的精度,重新推導(dǎo)了Adler的經(jīng)典公式。由于注入鎖定分頻器各種優(yōu)點(diǎn),使之非常適合在毫米波通信領(lǐng)域擔(dān)任分頻角色,因此,近年來受到學(xué)術(shù)界的廣泛重視。許多科研單位,如加州大學(xué)洛杉磯分校,斯坦福大學(xué),明呢蘇達(dá)雙城分校,佛羅里達(dá)大學(xué),香港科技大學(xué),韓國科技大學(xué),田納西大學(xué),臺灣大學(xué),東京大學(xué)等知名高校都紛紛加入關(guān)于此研究的行列。相比之下,國內(nèi)對此的研究還比較少,主要集中在清華大學(xué)和浙江大學(xué)等高校。因此,為了縮小與國外研究的差距,在以后毫米通信的核心技術(shù)競爭上占據(jù)主動位置,積極展開這方面的研究顯得很有必要。在應(yīng)
23、用研究方面,科研人員針對目前注入鎖定分頻器在應(yīng)用中出現(xiàn)的主要問題進(jìn)行了廣泛的研究,主要的方向有:擴(kuò)大鎖定范圍,提高正交多相輸出的精度,降低源電壓和功耗,研究多模分頻以及提高工作速度。多模分頻的研究:在應(yīng)用中,常常需要分頻器有靈活的分頻模式,比如小數(shù)頻率合成器中就需要用到雙?;蚨嗄5姆诸l器。這種技術(shù)在數(shù)字觸發(fā)器實(shí)現(xiàn)的分頻器中已經(jīng)比較成熟,但是在注入鎖定分頻器領(lǐng)域仍然需要深入研究【9】。1.4 本文組織結(jié)構(gòu)本文講述了一種可用于FPGA實(shí)現(xiàn)的可完成偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻和小數(shù)分頻的分類設(shè)計(jì)和可以完成任意數(shù)分頻的通用分頻器,并通過FPGA實(shí)現(xiàn)證明其可行性。論文共分為三章,具體的組織結(jié)構(gòu)如下:第
24、一章 緒論 主要對FPGA進(jìn)行了簡單介紹,介紹了課題的研究背景,國內(nèi)外研究現(xiàn)狀及應(yīng)用現(xiàn)狀,并且提出了文章的組織結(jié)構(gòu)。第二章 幾類分頻器的設(shè)計(jì)及其分頻原理 介紹了各種獨(dú)立的分頻器的分配原理,對偶數(shù)分頻和奇數(shù)分頻舉例進(jìn)行如何仿真,并介紹分頻器在日常生活中的一些應(yīng)用實(shí)例。第三章 通用分頻器的設(shè)計(jì) 首先對通用分頻器設(shè)計(jì)方案的提出并進(jìn)行分析,最終選擇可以實(shí)施的方案。方案選定后對通用分頻器進(jìn)行系統(tǒng)的設(shè)計(jì),最后分析通用分頻器的應(yīng)用。第二章 幾類分頻器的設(shè)計(jì)及其分頻原理2.1 偶數(shù)倍分頻2.1.1 分頻原理偶數(shù)分頻應(yīng)該是大家都比較熟悉的分頻,通過計(jì)數(shù)器計(jì)數(shù)是完全可以實(shí)現(xiàn)的。如進(jìn)行N倍偶數(shù)分頻,若要實(shí)現(xiàn)占空比為
25、50%的偶數(shù)N分頻,那么可以通過由待分頻的時鐘觸發(fā)計(jì)數(shù)器計(jì)數(shù),當(dāng)計(jì)數(shù)器從0計(jì)數(shù)到N/2-1時,輸出時鐘進(jìn)行翻轉(zhuǎn),并給計(jì)數(shù)器一個復(fù)位信號,使得下一個時鐘從零開始計(jì)數(shù)。以此循環(huán)下去,這種方法可以實(shí)現(xiàn)任意的偶數(shù)分頻。2.1.2 軟件簡介【5】Libero開發(fā)軟件是一個非常人性化的開發(fā)環(huán)境,整個界面以流程圖的方式指明了開發(fā)的步驟,它集合了眾多第三方先進(jìn)的EDA工具,包括Mentor公司提供的仿真工具M(jìn)odeSim、Synplicity公司提供的綜合工具Synplify,還有Aynapticad公司提供的波形激勵生成工具Waveformer Lite等。Actel的Libero設(shè)計(jì)文件生成可以有四種方式
26、:HDL語言生成、smartDesign輸入、CoreConsole輸入和ViewDraw原理圖輸入。其中應(yīng)該還有一種輸入就是SmartGen輸入,它已經(jīng)集成在Libero開發(fā)環(huán)境左側(cè)的Catlog窗口中。在這些輸入方式中,HDL語言生成是最常用也是移植性最好的。如果想到Actel公司一些現(xiàn)成的模塊就需要用到SmartGen,例如:RAM、FIFO、加法器等;對于HDL語言不熟悉或者習(xí)慣于用原理圖來搭建頂層設(shè)計(jì)的用戶可以使用原理圖輸入,例如:smartDesign、ViewDraw;如果想搭建系統(tǒng)級的平臺,如8051、ARM7、CorexM1可以用CoreConsole作為輸入。2.1.3 軟
27、件仿真下面以十二分頻為例進(jìn)行介紹如何在Libero8.5軟件下進(jìn)行仿真。點(diǎn)擊HDL Editor進(jìn)入HDL輸入方式,在彈出文件類型選擇框中選擇Verilog Source File,如果用VHDL的用戶可以選擇VHDL Source File,然后在右邊輸入文件名稱66。在彈出的新文件中,輸入HDL代碼。輸入源文件后可以對剛才的程序進(jìn)行功能仿真。首先要創(chuàng)建仿真用的激勵文件,激勵文件可以采用HDL文本輸入或者畫波形圖的方式得到。然后點(diǎn)擊WaveFormer圖標(biāo)打開WaveFomer,點(diǎn)擊clk48M,從右鍵菜單中選擇“Signal Clock“把這個信號設(shè)為時鐘信號,再繼續(xù)雙擊clk48M信號,
28、從彈出的菜單中選擇”Clock Propeties“把信號的時鐘頻率改成為48MHz,選中信號,先把HIGH圖標(biāo)選中,畫一段高電平信號,再把LOW圖標(biāo)選中,畫一段低電平。畫完好以后點(diǎn)擊保存圖標(biāo),保存類型選為Verilog w/Top Level Test Bench(*.V)類型,文件名不要更改,采用默認(rèn)就就可以。保存.V類型的文件后再點(diǎn)擊保存圖標(biāo),把文件保存為.btim格式的文件。最后關(guān)閉WaveFormer,右擊Simulus Editor,選擇Organize stimulus,在彈出的窗口點(diǎn)擊Add按鈕把測試文件導(dǎo)入,如下圖2-1所示:圖2-1當(dāng)把仿真激勵文件加入后,WaveForme
29、r會變成綠色,說明已經(jīng)通過,然后點(diǎn)擊ModelSim仿真就可以了,ModelSim的工程在調(diào)用的時候自動會建立。最后得到的十二分頻等占空比的仿真效果圖如圖2-2下:圖2-2 2.2 奇數(shù)倍分頻2.2.1 分頻原理【7】奇數(shù)倍分頻有兩種實(shí)現(xiàn)方法,其中之一完全可以通過計(jì)數(shù)器來實(shí)現(xiàn),如進(jìn)行三分頻,就可通過待分頻時鐘上升沿觸發(fā)計(jì)數(shù)器來進(jìn)行模三計(jì)數(shù),當(dāng)計(jì)數(shù)器計(jì)數(shù)到鄰近值時進(jìn)行兩次翻轉(zhuǎn)。比如可以在計(jì)數(shù)器計(jì)數(shù)到1時,輸出時鐘進(jìn)行翻轉(zhuǎn),計(jì)數(shù)到2時再次進(jìn)行翻轉(zhuǎn)。這樣,就在計(jì)數(shù)值鄰近的1和2進(jìn)行了兩次翻轉(zhuǎn)。如此便實(shí)現(xiàn)了三分頻,其占空比為13或23。如果要實(shí)現(xiàn)占空比為50的三分頻時鐘,則可通過待分頻時鐘下降沿觸發(fā)計(jì)
30、數(shù),并以和上升沿同樣的方法計(jì)數(shù)進(jìn)行三分頻,然后對下降沿產(chǎn)生的三分頻時鐘和上升沿產(chǎn)生的時鐘進(jìn)行相或運(yùn)算。即可得到占空比為50的三分頻時鐘,這是奇數(shù)分頻的三種方法。這種方法可以實(shí)現(xiàn)任意的奇數(shù)分頻。如將其歸類為一般的方法:對于實(shí)現(xiàn)占空比為50的N倍奇數(shù)分頻,首先要進(jìn)行上升沿觸發(fā)以進(jìn)行模N計(jì)數(shù),計(jì)數(shù)選定到某一個值再進(jìn)行輸出時鐘翻轉(zhuǎn),然后通過(N-1)2再次進(jìn)行翻轉(zhuǎn),就可得到一個占空比非50的奇數(shù)N分頻時鐘。再同時進(jìn)行下降沿觸發(fā)的模N計(jì)數(shù),當(dāng)其到達(dá)與上升沿觸發(fā)輸出時鐘翻轉(zhuǎn)選定值相同時,再進(jìn)行輸出時鐘翻轉(zhuǎn),同樣,經(jīng)過(N-1)2時,輸出時鐘再次翻轉(zhuǎn)以生成占空比非50的奇數(shù)N分頻時鐘。將這兩個占空比非50的
31、N分頻時鐘相或運(yùn)算,就可以得到占空比為50的奇數(shù)分頻時鐘。原理圖見下圖2-3:clkqoutresetclkqoutresetcount3count3clk_outclkresetornot圖2-32.2.2 軟件仿真在Libero開發(fā)軟件下,如等占空比三分頻的仿真圖如圖2-4下:圖2-4仿真結(jié)果如下圖2-5:圖2-52.3 半整數(shù)分頻【1】首先講講如何進(jìn)行N+0.5分頻,這種分頻需要對輸入時鐘進(jìn)行操作?;镜脑O(shè)計(jì)思想:對于進(jìn)行N+0.5分頻,首先進(jìn)行模N的計(jì)數(shù),在計(jì)數(shù)到N-1時,輸出時鐘賦為1,回到計(jì)數(shù)0時,又賦為0,因此,可以知道,當(dāng)計(jì)數(shù)值為N-1時,輸出時鐘才為1。因此,只要保持計(jì)數(shù)值N
32、-1為半個輸入時鐘周期,即實(shí)現(xiàn)了N+0.5分頻時鐘,因此保持N-1為半個時鐘周期是一個難點(diǎn)。從中可以發(fā)現(xiàn),因?yàn)橛?jì)數(shù)器是通過時鐘上升沿計(jì)數(shù),因此可以在計(jì)數(shù)為N-1時對計(jì)數(shù)觸發(fā)時鐘進(jìn)行翻轉(zhuǎn)。那么時鐘的下降沿變成了上升沿。即在計(jì)數(shù)值為N-1期間的時鐘下降沿變成了上升沿,則計(jì)數(shù)值N-1只保持了半個時鐘周期,由于時鐘翻轉(zhuǎn)下降沿變成上升沿,因此計(jì)數(shù)值變?yōu)?。因此,每產(chǎn)生一個N+0.5分頻時鐘的周期,觸發(fā)時鐘都是要翻轉(zhuǎn)一次。電路圖見下圖2-6,原理圖見下圖2-7:異或門模N計(jì)數(shù)器2分頻器ff0/(N-0.5)F0/(2N-1)圖2-6M分頻M+1分頻選擇輸出控制計(jì)數(shù)器時鐘源輸出時鐘圖2-72.4 小數(shù)分頻器
33、小數(shù)分頻器的實(shí)現(xiàn)方法很多,但其基本原理一樣:在若干個分頻周期中采取某種方法使某幾個周期少計(jì)一個或幾個數(shù),即吞脈沖原理,從而在整個計(jì)數(shù)周期的總體平均意義上獲得一個小數(shù)分頻比。以下簡要說明兩種比較常用的小數(shù)分頻電路的原理及設(shè)計(jì)方法。積分分頻器是比較常見的小數(shù)分頻器,其基本原理是將小數(shù)分頻比轉(zhuǎn)換為整數(shù)比值,再采用計(jì)數(shù)器對輸入時鐘進(jìn)行計(jì)數(shù),根據(jù)計(jì)數(shù)值吞掉一些脈沖,從而得到所需的頻率輸出;累加器分頻則是一種基于相位累加器基本原理的一種分頻技術(shù),將累加器最高位作為分頻輸出,根據(jù)送入累加器中不同的累加步長改變分頻倍數(shù)。2.4.1 積分分頻器積分分頻器的設(shè)計(jì)首先需將小數(shù)分頻比轉(zhuǎn)換為整數(shù)比值,再采用計(jì)數(shù)器對輸入
34、時鐘進(jìn)行計(jì)數(shù),根據(jù)計(jì)數(shù)值對輸入時鐘及插入脈沖進(jìn)行選擇分配,從而得到需要的頻率輸出脈沖,如圖2-8所示。計(jì)數(shù)器多路選擇器輸入時鐘頻率控制字插入脈沖分布輸出圖2-8設(shè)“1010101010”代表5KHz 信號中的一段信號。在同樣長的時間內(nèi)設(shè)法得到另一脈沖串“1010100000”信號,若其0、1寬度與5KHz信號中的0、1寬度相同,即為輸入時鐘的寬度,則可得到3kHz 的時鐘信號。這樣,多路選擇器可在前三個周期中選擇輸入時鐘直接輸出,而在后兩個周期選擇輸出0,就可以得到脈沖串“1010100000”,從而完成3/5倍的分頻,得到3KHz的信號。2.4.2 累加器分頻在DDS技術(shù)中經(jīng)常采用相位累加器
35、來進(jìn)出頻率控制,對于頻率不變的輸入基準(zhǔn)時鐘,可采用對相位累加器置不同的累加步長來得到不同的尋址速率。從中得到啟示,可采用累加器進(jìn)行小數(shù)分頻,如圖2-9所示。數(shù)據(jù)轉(zhuǎn)換加法器并行數(shù)據(jù)寄存器頻率控制字寄存器最高位分頻輸出時鐘輸入圖2-9累加器由加法器與并行數(shù)據(jù)寄存器組成,頻率控制字經(jīng)數(shù)據(jù)轉(zhuǎn)換模塊轉(zhuǎn)換為累加器的累加步長,將并行數(shù)據(jù)寄存器的高位作為時鐘輸出。設(shè)輸入時鐘為頻率Fin,相位累加器的位數(shù)為N,輸出頻率的分辨率(當(dāng)送入的頻率控制字K為1時的輸出頻率)為F2=Fin/2N從式可看出,在累加器位數(shù)足夠高時,最小輸出頻率(頻率分辨率)可接近零頻。實(shí)際設(shè)計(jì)過程中,可根據(jù)分頻倍數(shù)的要求來選擇累加器的位數(shù)。
36、若設(shè)頻率控制字為K,則輸出頻率為Fout=(K*Fin)/2N。以上三種小數(shù)分頻器各有其特點(diǎn),采用4527的分頻電路比較復(fù)雜,適用于頻率為10的冪的輸入;積分分頻器首先需把分頻倍數(shù)轉(zhuǎn)換為兩整數(shù)之比值,故在使用中,對分頻倍數(shù)要求比較嚴(yán)格,靈活性受到一定限制;累加器分頻則對頻率為2的冪的輸入時鐘分頻效果比較好,而且輸出時鐘有一定的抖動,但還是可以應(yīng)用于一些特殊場合。2.4.3 小數(shù)分頻器的應(yīng)用【12】小數(shù)分頻器在數(shù)字系統(tǒng)設(shè)計(jì)中的應(yīng)用非常廣泛,經(jīng)常是各個模塊需要的頻率不相同,這就需要對時鐘進(jìn)行分頻得到各模塊需要的時鐘頻率。但常規(guī)的整數(shù)分頻器(實(shí)際就是計(jì)數(shù)器)不能滿足要求。例如,若基準(zhǔn)時鐘頻率為100
37、MHz,對其進(jìn)行整數(shù)分頻,只能得到50MHz、25MHz等頻率值,如想得到30MHz、20MHz等頻率值,就需要應(yīng)用小數(shù)分頻器對基準(zhǔn)時鐘進(jìn)行小數(shù)分頻。在DDS波形發(fā)生器設(shè)計(jì)和步進(jìn)電機(jī)驅(qū)動中,需要對輸出信號頻率進(jìn)行控制,若采用一般計(jì)數(shù)器來進(jìn)行分頻,由上述分析可知,輸出信號頻率值的連續(xù)性就受到限制。為了使輸出信號頻率值能連續(xù)可控,就需進(jìn)行小數(shù)分頻。在DDS技術(shù)中的應(yīng)用:圖2-10為DDS技術(shù)基本原理圖,頻率控制字送入分頻器。設(shè)基頻頻率為Fin,分頻倍數(shù)為W,則計(jì)數(shù)器的時鐘頻率為為Fin/W。計(jì)數(shù)器在頻率Fin/W的時鐘作用下計(jì)數(shù)對查找表尋址輸出波形數(shù)據(jù)。若查找表存儲深度為M(一個周波存儲M個點(diǎn)),
38、則輸出波形的頻率為Fo=Fin/WM式中,F(xiàn)in為基頻頻率、存儲深度M為一定值,這樣就只需控制分頻倍數(shù)K來控制合成波形的頻率。分頻器可編程數(shù)據(jù)轉(zhuǎn)換計(jì)數(shù)器查找表基頻輸出頻率控制字圖2-10在DDS技術(shù)中,常用的技術(shù)是采用累加器對查找表尋址。但采用這種方法時,在輸出高頻與低頻波形時的尋址點(diǎn)數(shù)不同。在高頻尋址點(diǎn)數(shù)較少,而在低頻時點(diǎn)數(shù)較多,為保證在頻率較高時輸出的波形失真度小,在低頻階段,尋址的點(diǎn)數(shù)就比較多,需要較深的存儲深度。而采用圖2-10所示的方法,則不管在低頻或高頻,尋址點(diǎn)數(shù)一樣,這樣就可以采用一致的存儲深度,節(jié)約存儲器。特別是采用CPLD進(jìn)行系統(tǒng)設(shè)計(jì)時,查找表也可采用CPLD來設(shè)計(jì),易于系統(tǒng)
39、集成。在步進(jìn)電機(jī)驅(qū)動中的應(yīng)用:步進(jìn)電機(jī)是一種用電脈沖信號進(jìn)行控制,將電脈沖信號轉(zhuǎn)換為相應(yīng)的角位移或線位移的控制電機(jī)。在步進(jìn)電機(jī)的驅(qū)動中,需要對步進(jìn)電機(jī)轉(zhuǎn)速進(jìn)行控制。圖2-11為步進(jìn)電機(jī)驅(qū)動電路原理圖?;鶞?zhǔn)時鐘在頻率控制字作用下分頻得到所需頻率的脈沖作為脈沖分配器的時鐘,這樣即可控制脈沖分配器輸出驅(qū)動脈沖的速率,經(jīng)功率放大后驅(qū)動步進(jìn)電機(jī)。小數(shù)分頻器功率放大器脈沖分配器步進(jìn)電機(jī)控制信號頻率控制字基準(zhǔn)時鐘圖2-112.5 本章小結(jié)通過對以上幾種分頻器的設(shè)計(jì)可知,如果需要的分頻形式較少,只需要偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻或者小數(shù)分頻中的一種,就可以參考用本章所設(shè)計(jì)的分頻器來進(jìn)行分配,從而滿足需要,利
40、用各個獨(dú)立的分頻器,可以節(jié)省資源。第三章 通用分頻器的設(shè)計(jì)3.1 設(shè)計(jì)方案【12】針對現(xiàn)有的常用分頻器的使用局限性,介紹了一種可以實(shí)現(xiàn)任意小數(shù)、分?jǐn)?shù)分頻的新型分頻器。由預(yù)先設(shè)置的分頻參數(shù),通過使用的一個帶余數(shù)輸出的除法器,計(jì)數(shù)出其商和余數(shù),確定兩個分頻器的分頻系數(shù)和分頻次數(shù)。通過控制兩個分頻交替工作,從而實(shí)現(xiàn)任意分頻。分析了這種分頻器的工作原理,提出了一種簡單的實(shí)現(xiàn)電路,并用Verilong-HDL語言描述了該分頻器。3.1.1 設(shè)計(jì)方案一頻率合成器是數(shù)字系統(tǒng)設(shè)計(jì)中的基本電路,在數(shù)字系統(tǒng)特別是無線通信系統(tǒng)中有著廣泛的應(yīng)用,如載波恢復(fù)、上下變頻、比特同步、時隙同步等等,都需要各種不同性能指標(biāo)的頻
41、率合成器。他是現(xiàn)代數(shù)字通信中必不可少的部分。頻率合成器可由鎖相環(huán)實(shí)現(xiàn),完成頻率的捕獲、跟蹤和鎖定,再通過倍頻或分頻得到所需要的頻率。在實(shí)現(xiàn)分頻過程中,有時會遇到分?jǐn)?shù)或者小數(shù)分頻,這種分頻器一般不好用單個計(jì)數(shù)器實(shí)現(xiàn),而需要用兩個或多個整數(shù)計(jì)數(shù)器交替分頻,得到一個平均分頻系數(shù)。其原理為:控制整數(shù)分頻器按照一定的規(guī)則變化,比如,若要得到5.3的小數(shù)分頻,只要在10次分頻中,作7次5分頻,再作3次6分頻,就可以實(shí)現(xiàn)小數(shù)分頻。上述的分頻原理能夠?qū)崿F(xiàn)任意的分頻要求,但是必須事先算好兩個分頻器的分頻值和各自的分頻次數(shù)。文獻(xiàn)中闡述了能夠?qū)崿F(xiàn)任意小數(shù)分頻的分頻器的實(shí)現(xiàn)方法。其原理為:如果原先設(shè)置的分頻系數(shù)K能夠
42、轉(zhuǎn)化成有窮小數(shù),通過一個控制器控制N和N+1分頻器交替工作,使每10個脈沖中,有X個為N+1分頻所得,10-X個脈沖為N分頻所得,從而能夠?qū)崿F(xiàn)預(yù)置分頻值為K的任意分頻,即能夠?qū)崿F(xiàn)任意小數(shù)分頻。這種分頻器在K值為分?jǐn)?shù)時,比如3/2,就無法計(jì)算出對應(yīng)的X和N值。這就是這種電路的局限性所在。文獻(xiàn)中還提到一種能夠?qū)崿F(xiàn)占空比為50%的分頻電路,但是,該電路只用于整數(shù)分頻或半整數(shù)分頻,使用局限性更大。3.1.2 設(shè)計(jì)方案二上面介紹的分頻器均存在一定的局限性,這里介紹一種新型的分配方法。假定需要對輸入頻率進(jìn)行任意分頻,為了表示其通用性,這里用分?jǐn)?shù)M/N(其中M、N均屬于非0正整數(shù))表示分頻系數(shù)。假定使用兩個
43、分頻系數(shù)分別為K和K+1的分頻器交替工作,每個分頻器的工作周期分別為N-X次和X次,若通過這種方式,能夠得到所需的M/N分頻的頻率輸出,則K、X、M和N必將滿足一下關(guān)系式:M/N=(K*(N-X)+(K+1)*X)/N。要實(shí)現(xiàn)M/N分頻,則當(dāng)有N個脈沖輸出時,必須對應(yīng)M個脈沖輸入,即輸入時鐘經(jīng)過M個周期,上式右邊表示,M個輸入脈沖分別進(jìn)行了N-X次K分頻和X次K+1分頻。每次分頻得到一個輸出脈沖,共得到N-X+X=N個輸出脈沖。顯然等式左右相等。將上面公式化簡可得:M=K*N+X上式說明了分?jǐn)?shù)分頻的分子M、分母N、分頻系數(shù)K和分頻次數(shù)X的等式關(guān)系。從另一個角度看,如果把兩個預(yù)置值M、N分別當(dāng)作
44、被除數(shù)和除數(shù),則N和X就可以分別看成是商和余數(shù),如下式所示:(M-X)/N=K即如果輸出需要得到一個任意M/N的分?jǐn)?shù)頻率,只要事先預(yù)置其分子M和分母N,經(jīng)過一個帶余數(shù)輸出的除法器,即可以得到兩個分頻器的分頻系數(shù)K、K+1和對應(yīng)的分頻次數(shù)N-X和X,從而實(shí)現(xiàn)任意的分?jǐn)?shù)分頻。3.2 系統(tǒng)設(shè)計(jì)下面介紹如何利用FPGA實(shí)現(xiàn)該分頻器分頻次數(shù)和復(fù)位選擇等,幾個部分組成,如圖所示:由上面介紹可知,該分頻器可由一個帶余數(shù)輸出的觸發(fā)器、可置位的K/K+1分頻器、分頻器分頻次數(shù)和復(fù)位選擇等幾個部分組成,如圖3-1所示:除法器復(fù)位選擇分頻器分頻次數(shù)計(jì)數(shù)輸入時鐘輸入系數(shù)M、N商、K頻率輸出圖3-1圖3-1中為了合理利
45、用硬件資源,提高系統(tǒng)工作頻率,除法器可以采用多級流水線的移位減方法實(shí)現(xiàn),每次計(jì)算完一位商,將被除數(shù)左移一位,最后得到所需要的商K和余數(shù)X。分頻器可以使用一個最大計(jì)數(shù)值為K的計(jì)數(shù)器實(shí)現(xiàn),其中K為M/N所得到的商。通過復(fù)位選擇模塊,控制計(jì)數(shù)器復(fù)位到0或者1,從而通過使用一個計(jì)數(shù)器同時完成K+1分頻和K分頻。每次計(jì)數(shù)器溢出,分頻次數(shù)計(jì)數(shù)器加1,通過分頻次數(shù)計(jì)數(shù)器的值決定分頻器的復(fù)位值。當(dāng)分頻計(jì)數(shù)器的值大于X時,分頻器復(fù)位值為0,否則為1。當(dāng)分頻次數(shù)計(jì)數(shù)器計(jì)數(shù)到N時,該計(jì)數(shù)器復(fù)位到1,從而實(shí)現(xiàn)周期為N的計(jì)數(shù)。3.2.1 電路工作流程圖及部分程序上述電路的工作流程如圖3-2所示:開始無法分頻K值不為0?
46、分頻次數(shù)大于等于N?計(jì)數(shù)器計(jì)數(shù)到K值?值?輸入分?jǐn)?shù)分母M和分子N分頻計(jì)數(shù)器復(fù)位到1值分頻計(jì)數(shù)器復(fù)位到0值K+1分頻計(jì)數(shù)置分頻數(shù)K和分頻次數(shù)X分頻次數(shù)加1分頻次數(shù)加1分頻次數(shù)計(jì)數(shù)器復(fù)位到1值分頻次數(shù)大于X?移位除法器算出商K和余數(shù)X計(jì)數(shù)器計(jì)數(shù)到K值?K+1分頻計(jì)數(shù)NYYNNN圖3-2用FPGA實(shí)現(xiàn)K/K+1分頻器的部分Verilog-HDL源代碼如下所示: Always (posedge clkin)begin if (reset)countk<=4b0000;else if(countnice)beginif(divfreqken)countk<=4b0001;elsecountk
47、<=countk+4b0000;endelse用FPGA實(shí)現(xiàn)分頻次數(shù)計(jì)數(shù)器的部分Verilog-HDL源代碼如下所示:Always (posedge clkin)beginif (reset)countn<=4b0000;else if (countninc)beginif(countn=dcnominator)countn<=4b0001;else countn<=countn+4b0001;endendK分頻使能assign divfreqken=(countn>divtimesx);assign countninc = (countk= =divfreqk)
48、;3.2.2 時鐘輸出流程圖及部分程序時鐘輸出的流程如圖所示。當(dāng)分頻計(jì)數(shù)器計(jì)數(shù)到分頻值K的1/2倍和1倍時,輸出脈沖反轉(zhuǎn),以保證分頻計(jì)數(shù)器工作在一個周期,輸出時鐘也為一個周期。從而實(shí)現(xiàn)所需的分頻功能。當(dāng)分頻系數(shù)K為1時,輸出時鐘直接等于輸入時鐘,當(dāng)K為0時,這是個倍頻器,不是本文討論的范圍。時鐘輸出的電路工作流程圖如圖3-3下:開始輸出時鐘任意分?jǐn)?shù)計(jì)數(shù)值為K/2或K?K值為1且為K+1分頻計(jì)數(shù)?K值為1,且為K分頻計(jì)數(shù)?K值不為0?輸出時鐘為輸入時鐘輸出時鐘電平值取反NNNYNY圖3-3用FPGA實(shí)現(xiàn)頻率輸出功能的部分Verilog-HDL源代碼如下: /當(dāng)計(jì)數(shù)到K/2時,輸出時鐘反轉(zhuǎn)標(biāo)志 A
49、ssign clkreverse = (count = =1b0 ,divfreqk3:1);always (posedge clkin)beginif(reset)clkdiv<= 1b0;/計(jì)數(shù)到K或K/2時,輸出時鐘反轉(zhuǎn)Else if (clkreverse countninc)Clkdiv <=clkdiv;End/當(dāng)K值為0或1時,輸出時鐘等于輸入時鐘Assign clkoutcn = (divfreqken && (divfreqk = = 4b0001) ¶(divfreqk = = 4b0000);/時鐘輸出Assign clkout =
50、clkoutcn?clkin:clkdiv;3.3 通用分頻器的應(yīng)用【9】綜上可以看出,只需要對帶預(yù)置的模N計(jì)數(shù)器的初值進(jìn)行設(shè)定,以及對控制端口control的電平高低進(jìn)行設(shè)定,就可以利用這個基于FPGA的實(shí)用分頻器來得到我們所需要的頻率。3.3.1 等占空比的奇數(shù)分頻器如果需要得到分頻系數(shù)為M的等占空比的奇數(shù)分頻,那么只需要將帶預(yù)置的模N計(jì)數(shù)器的初值N設(shè)定為N=M+1/2,然后根據(jù)N的值調(diào)整帶預(yù)置的模N計(jì)數(shù)器模塊的程序中位寬就可以在輸出端口Qdeng得到所需要的分頻系數(shù)為M的等占空比的奇數(shù)分頻。3.3.2 任意占空比的奇、偶數(shù)分頻 如果需要得到分頻系數(shù)為M的任意占空比的奇、偶數(shù)分頻,那么只需
51、將帶預(yù)置的模N計(jì)數(shù)器的初值N設(shè)定為N=M,然后根據(jù)N的值調(diào)整帶預(yù)置的模N計(jì)數(shù)器模塊的程序中的位寬就可以在輸出端口Qban得到所需要的分頻系數(shù)為M的任意占空比的奇、偶數(shù)分頻。3.3.3 等占空比的偶數(shù)分頻器 如果需要得到分頻系數(shù)為M的等占空比的偶數(shù)分頻,那么只需要將帶預(yù)置的模N計(jì)數(shù)器的初值N設(shè)定為N=M/2,然后根據(jù)N的值調(diào)整帶預(yù)置的模N計(jì)數(shù)器模塊的程序中的位寬就可以在輸出端口Qdeng得到所需的分頻系數(shù)為M的等占空比的偶數(shù)分頻。3.3.4 半整數(shù)分頻器如果需要得到分頻系數(shù)為M-0.5的半整數(shù)分頻,那么只需要將帶預(yù)置的模N計(jì)數(shù)器的初值N設(shè)定為N=M,然后根據(jù)N的值調(diào)整帶預(yù)置的模N計(jì)數(shù)器模塊的程序中位寬就可以在輸出端口Qban得到所需的分頻系數(shù)為M-0.5的半整數(shù)分頻。3.4 本章小結(jié)本章介紹了一種進(jìn)行FPGA開發(fā)式,所需多種分頻的實(shí)現(xiàn)方法。如果設(shè)計(jì)中所需要的分頻形式較多??梢灾苯永帽菊碌脑O(shè)計(jì),通過對程序的稍微改動來滿足自己的設(shè)計(jì)要求,該設(shè)計(jì)具有很強(qiáng)的通用性。結(jié)論經(jīng)過本次課程設(shè)計(jì),讓我更加深刻的學(xué)習(xí)和鞏固了Verilo數(shù)字系統(tǒng)設(shè)計(jì)這門課程,不僅從理論上掌握了課堂上沒有學(xué)懂的知識,還從實(shí)踐中拓寬了我的知識面,讓我對我們專業(yè)的知識有了更加全面的認(rèn)識,更加清晰的認(rèn)識到我們專業(yè)知識的實(shí)用
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 群眾演員參演互動影視項(xiàng)目合同
- 政府保密機(jī)構(gòu)文件處理與安全傳輸協(xié)議
- 跨區(qū)域外賣店鋪品牌推廣與運(yùn)營合作協(xié)議
- 有機(jī)茶葉種植基地與休閑農(nóng)業(yè)融合發(fā)展合同
- 高端婚前財(cái)產(chǎn)公證及資產(chǎn)評估合作協(xié)議
- 心理學(xué)招聘面試題及答案
- 社區(qū)衛(wèi)生服務(wù)中心社區(qū)衛(wèi)生服務(wù)綜合改革試點(diǎn)項(xiàng)目合同
- 建筑工程合同糾紛調(diào)解與施工安全服務(wù)協(xié)議
- 生物科研機(jī)構(gòu)生物安全教育與責(zé)任合同
- 火花商標(biāo)抖音平臺使用許可及廣告發(fā)布合同
- 2025年統(tǒng)計(jì)學(xué)專業(yè)期末考試題庫-抽樣調(diào)查方法應(yīng)用案例分析試題
- 2025陜西中考:歷史必背知識點(diǎn)
- 2025年下半年貴州烏江水電開發(fā)限責(zé)任公司大學(xué)畢業(yè)生招聘若干人易考易錯模擬試題(共500題)試卷后附參考答案
- 《車載充電器》課件
- 2025年浙江東陽市九年級中考語文3月模擬試卷(附答案解析)
- 2024年沈陽市三支一扶考試真題
- 《絕經(jīng)后出血》課件
- 食品合作商合同協(xié)議
- 中藥人員考試試題及答案
- 2025年吉林省四平市梨樹縣中考二模歷史試題(含答案)
- 腦梗死的介入治療
評論
0/150
提交評論