已閱讀5頁(yè),還剩28頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于FPGA分頻器的設(shè)計(jì)摘要分頻器是數(shù)字系統(tǒng)設(shè)計(jì)中的基本電路,在復(fù)雜數(shù)字邏輯電路設(shè)計(jì)中,根據(jù)不同設(shè)計(jì)的需要,會(huì)遇到偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻等,有時(shí)要求等占空比,也有要求非等占空比。在同一個(gè)設(shè)計(jì)中有時(shí)要求多種形式的分頻,通常由計(jì)數(shù)器或計(jì)數(shù)器的級(jí)聯(lián)構(gòu)成各種形式的偶數(shù)分頻和奇數(shù)分頻,實(shí)現(xiàn)較為簡(jiǎn)單,但是對(duì)半整數(shù)分頻實(shí)現(xiàn)較為困難。設(shè)計(jì)師希望有一種比較方便實(shí)用的設(shè)計(jì)方法,根據(jù)情況的需要,在實(shí)驗(yàn)室就能設(shè)計(jì)分頻器并且可以馬上檢測(cè)使用,只需要更改頻率系數(shù)而不修改其他器件或是電路板。因此,本文利用VERILOG硬件描述語(yǔ)言,通過(guò)開(kāi)發(fā)平臺(tái),使用FPGA,設(shè)計(jì)了一種能滿足上述情況的通用分頻器。只要在分頻器的輸入端輸入相應(yīng)的分頻系數(shù),就可以得到所需的頻率。關(guān)鍵詞分頻器;偶數(shù);奇數(shù);半整數(shù);分頻系數(shù);FPGASEPARATEFREQUENCYINVERTERBASEDONFPGADESIGNABSTRACTPOINTSARETHEFREQUENCYOFANDIGITALSYSTEMDESIGN,THEBASICCIRCUITINCOMPLEXDIGITALLOGICCIRCUITDESIGN,ACCORDINGTODIFFERENTDESIGNNEEDS,WILLMEETEVENPOINTSFREQUENCY,ANODDNUMBEROFPOINTSFREQUENCY,HALFINTEGERPOINTSFREQUENCYETC,SOMETIMESREQUIRE390V,SUCHASTHEREQUEST390VINTHESAMEDESIGNSOMETIMESREQUIREMULTIPLEFORMSOFPOINTSFREQUENCY,USUALLYBYACOUNTERORCOUNTERCASCADECONSTITUTEVARIOUSFORMSOFTHEFREQUENCYANDTHEODDPOINTSEVENPOINTS,TOACHIEVECOMPARATIVELYSIMPLEFREQUENCY,BUTHALFANDHALFINTEGERPOINTSFREQUENCYDIVISIONFREQUENCYREALIZEMOREDIFFICULTDESIGNERSHOPETOHAVEAMORECONVENIENTANDPRACTICALDESIGNMETHODS,ACCORDINGTOTHENEEDSOFTHELABORATORYCONDITION,CANDESIGNPOINTSFREQUENCYDEVICEANDCANIMMEDIATELYDETECTIONUSING,ONLYNEEDTOCHANGEFREQUENCYCOEFFICIENTSANDNOTMODIFYOTHERDEVICEORCIRCUITBOARDTHEREFORE,THISPAPERUSEVERILOGHARDWAREDESCRIPTIONLANGUAGE,THROUGHTHEDEVELOPMENTPLATFORM,USETHEFPGA,DESIGNAKINDOFCANMEETTHEABOVESITUATIONOFPRACTICALPOINTSFREQUENCYDEVICEASLONGASTHEFREQUENCYOFANINPOINTSCORRESPONDINGPOINTSINPUTINPUTFREQUENCYCOEFFICIENTS,CANGETFREQUENCYREQUIREDKEYWORDSPOINTS,FREQUENCY,MANOMETERS,EVEN,ODD,HALFANINTEGER,POINTSFREQUENCYCOEFFICIENTS,FPGA目錄第一章緒論111FPGA簡(jiǎn)介112選題的意義和目的213國(guó)內(nèi)外應(yīng)用現(xiàn)狀及研究現(xiàn)狀3131應(yīng)用現(xiàn)狀3132研究現(xiàn)狀414本文組織結(jié)構(gòu)5第二章幾類(lèi)分頻器的設(shè)計(jì)及其分頻原理621偶數(shù)倍分頻6211分頻原理6212軟件簡(jiǎn)介7213軟件仿真722奇數(shù)倍分頻9221分頻原理9222軟件仿真1023半整數(shù)分頻1224小數(shù)分頻器13241積分分頻器13242累加器分頻14243小數(shù)分頻器的應(yīng)用1525本章小結(jié)17第三章通用分頻器的設(shè)計(jì)1831設(shè)計(jì)方案18311設(shè)計(jì)方案一18312設(shè)計(jì)方案二1832系統(tǒng)設(shè)計(jì)19321電路工作流程圖及部分程序20322時(shí)鐘輸出流程圖及部分程序2333通用分頻器的應(yīng)用25331等占空比的奇數(shù)分頻器25332任意占空比的奇、偶數(shù)分頻25333等占空比的偶數(shù)分頻器26334半整數(shù)分頻器2634本章小結(jié)26結(jié)論27致謝28參考文獻(xiàn)29第一章緒論11FPGA簡(jiǎn)介FPGA是現(xiàn)場(chǎng)可編程門(mén)陣列的簡(jiǎn)稱(chēng),是可編程邏輯器件PLD問(wèn)世以來(lái)的第四代產(chǎn)品,適合于時(shí)序、組合等邏輯電路的應(yīng)用。它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專(zhuān)用集成電路領(lǐng)域中的一種半定制電路而出現(xiàn)的,即解決了定制電路的不足,又克服了原有可編程器件門(mén)電路數(shù)有限的缺點(diǎn)。它是當(dāng)今數(shù)字系統(tǒng)設(shè)計(jì)的主要軟件平臺(tái),其主要特點(diǎn)就是完全由用戶通過(guò)軟件進(jìn)行配置和編程,從而完成某種特定的功能,且可以反復(fù)擦寫(xiě)。在修改和升級(jí)時(shí),不需要額外的改變PCB電路板,只是在計(jì)算機(jī)上修改和更新程序,使硬件設(shè)計(jì)工作成為軟件開(kāi)發(fā)工作,縮短了系統(tǒng)的設(shè)計(jì)周期,提高了實(shí)現(xiàn)的靈活性并降低了成本,因此獲得了廣大硬件工程師的青睞。對(duì)PROM、EPROM、E2PROM熟悉的人都知道這些可編程器件的可編程原理是通過(guò)加高壓或紫外線導(dǎo)致三極管或者M(jìn)OS管內(nèi)部的載流子密度發(fā)生變化,實(shí)現(xiàn)所謂的可編程,但是這些器件或只能實(shí)現(xiàn)單次可編程或編程狀態(tài)難以穩(wěn)定。FPGA則不同,它采用了邏輯單元陣列這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLB、輸出輸入模塊IOB和內(nèi)部連線三個(gè)部分。FPGA的可編程實(shí)際上是改變了CLB和IOB的觸發(fā)器狀態(tài)。這樣就可以實(shí)現(xiàn)多次重復(fù)的編程,由于FPGA需要被反復(fù)燒寫(xiě),它實(shí)現(xiàn)組合邏輯的基本結(jié)構(gòu)不可能像ASIC那樣通過(guò)固定的與非門(mén)來(lái)完成,而只能采用一種易于反復(fù)配置的結(jié)構(gòu)。查找表可以很好的滿足這一要求,目前主流FPGA都采用了基于SRAM工藝的查找結(jié)構(gòu),也有一些軍品和宇航級(jí)FPGA采用FLASH或者熔絲與反熔絲工藝的查找表結(jié)構(gòu)。通過(guò)燒寫(xiě)文件改變查找表內(nèi)容的方法來(lái)實(shí)現(xiàn)對(duì)FPGA的重復(fù)配置。根據(jù)數(shù)字電路的基本知識(shí)可以知道,對(duì)于一個(gè)N輸入的邏輯運(yùn)算,不管是與或運(yùn)算還是異或運(yùn)算等等,最多只可能存在2N種結(jié)果。所以如果事先將相應(yīng)的結(jié)果存放于一個(gè)存貯單元,就相當(dāng)于實(shí)現(xiàn)了與非門(mén)電路的功能。FPGA的原理也是如此,它通過(guò)燒寫(xiě)文件區(qū)配置查找表的內(nèi)容,從而在相同的電路情況下實(shí)現(xiàn)了不同的邏輯功能【11】。FPGA作為未來(lái)數(shù)字系統(tǒng)的基礎(chǔ)之一,是目前硬件設(shè)計(jì)研究的重點(diǎn),它可以代替幾十甚至上百種通用IC芯片,具有可編程和實(shí)現(xiàn)方案容易改動(dòng)等特點(diǎn)。由于FPGA的現(xiàn)場(chǎng)可編程性及高密度性,使電路設(shè)計(jì)的大部分工作在微機(jī)上進(jìn)行,F(xiàn)PGA的功能完全由用戶編制的配置程序所決定,不改變其電路的邏輯功能。同時(shí)具有設(shè)計(jì)開(kāi)發(fā)周期短、設(shè)計(jì)制造成本低、開(kāi)發(fā)工具先進(jìn)、標(biāo)準(zhǔn)產(chǎn)品無(wú)需測(cè)試、質(zhì)量穩(wěn)定以及實(shí)時(shí)在線檢驗(yàn)等優(yōu)點(diǎn),因此,可廣泛應(yīng)用于產(chǎn)品的原理設(shè)計(jì)和產(chǎn)品生產(chǎn)之中。在現(xiàn)代電子系統(tǒng)中,數(shù)字系統(tǒng)所占的比例越來(lái)越大。系統(tǒng)發(fā)展的優(yōu)勢(shì)是數(shù)字化和集成化,而FPGA作為可編程ASIC(專(zhuān)用集成電路)器件,它將在數(shù)字邏輯系統(tǒng)中發(fā)揮越來(lái)越重要的作用。12選題的意義和目的自電子產(chǎn)品誕生之日起,電子產(chǎn)品開(kāi)發(fā)流程和方法就隨著電子元器件的不斷演進(jìn)而變化,從最早的電子管器件到晶體管再到集成電路,工程師在設(shè)計(jì)產(chǎn)品時(shí),所采用的工具和方法都有所不同,但是總的來(lái)說(shuō)貫穿電子設(shè)計(jì)的統(tǒng)一思路是使用印刷電路板上的分立、現(xiàn)成元件、連接器或者IC創(chuàng)建物理平臺(tái)實(shí)現(xiàn)所需要的功能。例如在60年代,如果要設(shè)計(jì)一個(gè)收音機(jī),工程師必須通過(guò)在PCB板上通過(guò)晶體管、電阻、電容、電感、電線、濾波器、二極管等電路搭建出一個(gè)物理平臺(tái),實(shí)現(xiàn)對(duì)RF信號(hào)的調(diào)諧、濾波、放大等,最后實(shí)現(xiàn)收音機(jī)的功能。基礎(chǔ)電路出現(xiàn)以后,一些分立器件被集成到一顆芯片上,但是總的設(shè)計(jì)思路沒(méi)有變化,還是要在一個(gè)PCB板上通過(guò)無(wú)源器件和IC搭建出一個(gè)物理平臺(tái),實(shí)現(xiàn)信號(hào)的接收、處理和輸出。但是,隨著FPGA等可編程器件的誕生,設(shè)計(jì)思路正發(fā)生著微妙的變化,隨著更多功能從分立器件移到可編程領(lǐng)域,各種不同的設(shè)計(jì)流程交匯到了一起?,F(xiàn)在,有效的電子設(shè)計(jì)是將板卡設(shè)計(jì)、可編程邏輯設(shè)計(jì)和軟件開(kāi)發(fā)融合在一起,未來(lái),隨著FPGA融合處理、儲(chǔ)存于一體,板卡設(shè)計(jì)將融合進(jìn)可編程邏輯設(shè)計(jì)中,電子產(chǎn)品設(shè)計(jì)將演變?yōu)榭删幊踢壿嬙O(shè)計(jì)和嵌入式軟件設(shè)計(jì)。那時(shí),電子設(shè)計(jì)將更體現(xiàn)為一種軟設(shè)計(jì),一種通過(guò)開(kāi)發(fā)語(yǔ)言和工具實(shí)現(xiàn)的設(shè)計(jì)。而FPGA將成為這種軟設(shè)計(jì)的載體,以FPGA形式存在的低成本、大規(guī)模可編程器件可以隨時(shí)的獲得,這使設(shè)計(jì)者有可能將所有系統(tǒng)核心功能都轉(zhuǎn)移到軟件設(shè)計(jì)中,并利用這種設(shè)計(jì)的優(yōu)勢(shì)【3】。分頻器是FPGA設(shè)計(jì)中使用頻率非常高的基本設(shè)計(jì)之一,盡管在目前大部分設(shè)計(jì)中,廣泛使用芯片廠家集成的鎖相環(huán)資源,如ALTERA的PLL,XILINX的DLL來(lái)進(jìn)行時(shí)鐘的分頻,倍頻以及相移。但是對(duì)于時(shí)鐘要求不高的基本設(shè)計(jì),通過(guò)語(yǔ)言進(jìn)行時(shí)鐘的分頻相移仍然非常流行。首先這種方法可以節(jié)省芯片內(nèi)部的鎖相環(huán)資源;再者,消耗不多的邏輯單元就可以達(dá)到對(duì)時(shí)鐘操作的目的。另一方面,通過(guò)語(yǔ)言設(shè)計(jì)進(jìn)行時(shí)鐘分頻,可以看出設(shè)計(jì)者對(duì)設(shè)計(jì)語(yǔ)言的理解程度。分頻器是數(shù)字系統(tǒng)設(shè)計(jì)中的基本電路,根據(jù)不同設(shè)計(jì)的需要,會(huì)遇到偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻等,有時(shí)要求等占空比,也有要求非等占空比。在同一個(gè)設(shè)計(jì)中有時(shí)要求多種形式的分頻。通常由計(jì)數(shù)器或計(jì)數(shù)器的級(jí)聯(lián)構(gòu)成各種形式的偶數(shù)分頻及非等占空比得到奇數(shù)分頻,實(shí)現(xiàn)較為簡(jiǎn)單。但對(duì)半整數(shù)分頻、等占空比的奇數(shù)分頻及小數(shù)分頻實(shí)現(xiàn)較為困難。本文利用VERILOG硬件描述語(yǔ)言,通過(guò)開(kāi)發(fā)平臺(tái),使用FPGA,設(shè)計(jì)了一種能滿足上述要求的分頻器。只要在分頻器的輸入端輸入相應(yīng)的分頻系數(shù),就可以得到所需的頻率。隨著各種先進(jìn)電子產(chǎn)品的推出,無(wú)線通訊網(wǎng)絡(luò)的廣泛應(yīng)用,使得對(duì)晶源的要求越來(lái)越高。特別是在現(xiàn)在電子對(duì)抗站中,我們要求各種器件工作在其固定的頻率下。產(chǎn)品的工作頻率在產(chǎn)品的研發(fā)階段必須經(jīng)過(guò)反復(fù)的調(diào)試才能確定,它既要能保證產(chǎn)品的工作效率又需要保證產(chǎn)品的穩(wěn)定性。有些產(chǎn)品由于其工作區(qū)域比較廣,我們還希望它在不同的工作環(huán)境下能夠采用不同的工作頻率,在惡劣的環(huán)境下保證其工作的穩(wěn)定性,在環(huán)境比較好的情況下我們希望它的工作效率得到更好的提高。這就需要我們的工作頻率能夠隨著我們環(huán)境的變化而變化。對(duì)于一個(gè)晶振源我們只能得到一個(gè)工作頻率,但如果集成大量晶振來(lái)實(shí)現(xiàn)多頻率輸出,一方面要投入很大的成本,另一方面不同晶振間的相位延遲無(wú)法預(yù)測(cè),而且在一個(gè)區(qū)間中集成大量晶振也容易引起串?dāng)_。如果我們僅通過(guò)分頻,對(duì)較高的晶振源進(jìn)行分頻就能很容易的得到比較豐富的頻率,有利于我們對(duì)產(chǎn)品的測(cè)試和應(yīng)用在傳統(tǒng)的FPGA設(shè)計(jì)方法中,為了能實(shí)現(xiàn)等占空比的奇數(shù)分頻,常常采用對(duì)輸入頻率進(jìn)行二倍頻的電路,以及對(duì)倍頻后的頻率F進(jìn)行偶數(shù)分頻,這樣就降低設(shè)計(jì)電路的最高工作頻率,提高對(duì)硬件的要求。本設(shè)計(jì)在不改變?cè)O(shè)計(jì)要求的前提下,對(duì)常規(guī)的設(shè)計(jì)方法進(jìn)行改進(jìn),實(shí)現(xiàn)了在不需要對(duì)輸入頻率進(jìn)行二倍頻的條件下實(shí)現(xiàn)等占空比分頻,從而更好的利用頻率資源,同時(shí)降低了設(shè)計(jì)的復(fù)雜性【2】。眾所周知,分頻器是FPGA設(shè)計(jì)中使用頻率非常高的基本設(shè)計(jì)之一,盡管在目前大部分設(shè)計(jì)中,廣泛使用芯片廠家集成的鎖相環(huán)資源,如ALTERA的PLL,XILINX的DLL來(lái)進(jìn)行時(shí)鐘的分頻,倍頻以及相移。但是對(duì)于時(shí)鐘要求不高的基本設(shè)計(jì),通過(guò)語(yǔ)言進(jìn)行時(shí)鐘的分頻相移仍然非常流行,首先這種方法可以節(jié)省芯片內(nèi)部的鎖相環(huán)資源,再者,消耗不多的邏輯單元就可以達(dá)到對(duì)時(shí)鐘進(jìn)行操作的目的。13國(guó)內(nèi)外應(yīng)用現(xiàn)狀及研究現(xiàn)狀131應(yīng)用現(xiàn)狀隨著人類(lèi)社會(huì)信息化進(jìn)程的加快,在現(xiàn)代電子系統(tǒng)設(shè)計(jì)中,數(shù)字電子系統(tǒng)所占的比例越來(lái)越大,現(xiàn)代電子系統(tǒng)發(fā)展的趨勢(shì)是數(shù)字化和集成化。而在數(shù)字系統(tǒng)中,時(shí)鐘是各模塊協(xié)同工作的根本保障,特別是時(shí)序數(shù)字系統(tǒng),沒(méi)有時(shí)鐘根本無(wú)從工作。在數(shù)字系統(tǒng)設(shè)計(jì)中,經(jīng)常需要對(duì)基準(zhǔn)時(shí)鐘進(jìn)行不同倍數(shù)的分頻而得到各模塊所需的時(shí)鐘頻率,分頻器是數(shù)字系統(tǒng)設(shè)計(jì)中最常見(jiàn)的基本電路之一。在此前提下,低功耗的高速通信電路設(shè)計(jì)近年來(lái)在集成電路研究領(lǐng)域受到越來(lái)越多的關(guān)注。分頻器作為通信系統(tǒng)的核心部件之一,廣泛應(yīng)用于頻率合成器、正交信號(hào)生成以及時(shí)鐘恢復(fù)電路中。如圖11所示分頻器用于無(wú)線接收機(jī)圖11分頻器是頻率合成器中工作在最高頻率的模塊之一。其工作速度往往決定了整個(gè)系統(tǒng)的最高工作速度,而且其性能往往對(duì)系統(tǒng)性能有決定性的影響,因此,許多科研單位都對(duì)分頻器展開(kāi)了廣泛的研究。當(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)勢(shì),但是在系統(tǒng)中它們功耗往往是不能忽視的,而且其功耗隨著系統(tǒng)工作頻率的提高而增加。在一些應(yīng)用中,為了降低功耗,甚至?xí)褂梅至⒌姆诸l器作為分頻器組的第一級(jí)。132研究現(xiàn)狀在數(shù)字邏輯電路設(shè)計(jì)中,分頻器是一種基本電路,通常用來(lái)對(duì)某個(gè)給定頻率的時(shí)鐘進(jìn)行分頻,得到所需的時(shí)鐘。時(shí)序電路設(shè)計(jì)中需要各種各樣的分頻器來(lái)獲得不同頻率的時(shí)鐘,其中以整數(shù)分頻器最為常見(jiàn)。整數(shù)分頻可以簡(jiǎn)單的使用模N計(jì)數(shù)器實(shí)現(xiàn),即隨驅(qū)動(dòng)時(shí)鐘跳變N次后就輸出一個(gè)進(jìn)位脈沖,然后立即被清零或置位,再開(kāi)始新一輪的循環(huán)的計(jì)數(shù)。模N計(jì)數(shù)器的進(jìn)位脈沖的寬度一般與驅(qū)動(dòng)時(shí)鐘相同,這對(duì)于邊沿驅(qū)動(dòng)的時(shí)序邏輯并不會(huì)帶來(lái)什么問(wèn)題。但是在某些需要使用電平邏輯的設(shè)計(jì)中,我們更希望分頻時(shí)鐘擁有50,或者與驅(qū)動(dòng)時(shí)鐘有相同的占空比。這時(shí)就需要通過(guò)另外的邏輯方法來(lái)進(jìn)行分頻,或者使用PLL。在基于CPLD(復(fù)雜可編程邏輯器件)/FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)的數(shù)字系統(tǒng)設(shè)計(jì)中,很容易實(shí)現(xiàn)由計(jì)數(shù)器或其級(jí)聯(lián)構(gòu)成各種形式的偶數(shù)分頻及非等占空比的奇數(shù)分頻,但對(duì)等占空比的奇數(shù)分頻及半整數(shù)分頻的實(shí)現(xiàn)較為容易。對(duì)于分頻器的研究,ADLER最早對(duì)注入鎖定分頻器進(jìn)行研究,他在注入信號(hào)強(qiáng)度很弱的情況下對(duì)此進(jìn)行了精確的推導(dǎo),并且在小注入情況下得到了注入鎖定范圍比較精確的表達(dá)式,由此可以推導(dǎo)出在弱注入鎖定現(xiàn)象發(fā)生的范圍。但是這個(gè)模型是不完善的,它的前提是注入信號(hào)的強(qiáng)度很弱,而在實(shí)際應(yīng)用中,這個(gè)前提往往是不成立的。STANFORD大學(xué)的THOMASHLEE等人對(duì)其做出了改進(jìn),提高了模型的精度,重新推導(dǎo)了ADLER的經(jīng)典公式。由于注入鎖定分頻器各種優(yōu)點(diǎn),使之非常適合在毫米波通信領(lǐng)域擔(dān)任分頻角色,因此,近年來(lái)受到學(xué)術(shù)界的廣泛重視。許多科研單位,如加州大學(xué)洛杉磯分校,斯坦福大學(xué),明呢蘇達(dá)雙城分校,佛羅里達(dá)大學(xué),香港科技大學(xué),韓國(guó)科技大學(xué),田納西大學(xué),臺(tái)灣大學(xué),東京大學(xué)等知名高校都紛紛加入關(guān)于此研究的行列。相比之下,國(guó)內(nèi)對(duì)此的研究還比較少,主要集中在清華大學(xué)和浙江大學(xué)等高校。因此,為了縮小與國(guó)外研究的差距,在以后毫米通信的核心技術(shù)競(jìng)爭(zhēng)上占據(jù)主動(dòng)位置,積極展開(kāi)這方面的研究顯得很有必要。在應(yīng)用研究方面,科研人員針對(duì)目前注入鎖定分頻器在應(yīng)用中出現(xiàn)的主要問(wèn)題進(jìn)行了廣泛的研究,主要的方向有擴(kuò)大鎖定范圍,提高正交多相輸出的精度,降低源電壓和功耗,研究多模分頻以及提高工作速度。多模分頻的研究在應(yīng)用中,常常需要分頻器有靈活的分頻模式,比如小數(shù)頻率合成器中就需要用到雙?;蚨嗄5姆诸l器。這種技術(shù)在數(shù)字觸發(fā)器實(shí)現(xiàn)的分頻器中已經(jīng)比較成熟,但是在注入鎖定分頻器領(lǐng)域仍然需要深入研究【9】。14本文組織結(jié)構(gòu)本文講述了一種可用于FPGA實(shí)現(xiàn)的可完成偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻和小數(shù)分頻的分類(lèi)設(shè)計(jì)和可以完成任意數(shù)分頻的通用分頻器,并通過(guò)FPGA實(shí)現(xiàn)證明其可行性。論文共分為三章,具體的組織結(jié)構(gòu)如下第一章緒論主要對(duì)FPGA進(jìn)行了簡(jiǎn)單介紹,介紹了課題的研究背景,國(guó)內(nèi)外研究現(xiàn)狀及應(yīng)用現(xiàn)狀,并且提出了文章的組織結(jié)構(gòu)。第二章幾類(lèi)分頻器的設(shè)計(jì)及其分頻原理介紹了各種獨(dú)立的分頻器的分配原理,對(duì)偶數(shù)分頻和奇數(shù)分頻舉例進(jìn)行如何仿真,并介紹分頻器在日常生活中的一些應(yīng)用實(shí)例。第三章通用分頻器的設(shè)計(jì)首先對(duì)通用分頻器設(shè)計(jì)方案的提出并進(jìn)行分析,最終選擇可以實(shí)施的方案。方案選定后對(duì)通用分頻器進(jìn)行系統(tǒng)的設(shè)計(jì),最后分析通用分頻器的應(yīng)用。第二章幾類(lèi)分頻器的設(shè)計(jì)及其分頻原理21偶數(shù)倍分頻211分頻原理偶數(shù)分頻應(yīng)該是大家都比較熟悉的分頻,通過(guò)計(jì)數(shù)器計(jì)數(shù)是完全可以實(shí)現(xiàn)的。如進(jìn)行N倍偶數(shù)分頻,若要實(shí)現(xiàn)占空比為50的偶數(shù)N分頻,那么可以通過(guò)由待分頻的時(shí)鐘觸發(fā)計(jì)數(shù)器計(jì)數(shù),當(dāng)計(jì)數(shù)器從0計(jì)數(shù)到N/21時(shí),輸出時(shí)鐘進(jìn)行翻轉(zhuǎn),并給計(jì)數(shù)器一個(gè)復(fù)位信號(hào),使得下一個(gè)時(shí)鐘從零開(kāi)始計(jì)數(shù)。以此循環(huán)下去,這種方法可以實(shí)現(xiàn)任意的偶數(shù)分頻。212軟件簡(jiǎn)介【5】LIBERO開(kāi)發(fā)軟件是一個(gè)非常人性化的開(kāi)發(fā)環(huán)境,整個(gè)界面以流程圖的方式指明了開(kāi)發(fā)的步驟,它集合了眾多第三方先進(jìn)的EDA工具,包括MENTOR公司提供的仿真工具M(jìn)ODESIM、SYNPLICITY公司提供的綜合工具SYNPLIFY,還有AYNAPTICAD公司提供的波形激勵(lì)生成工具WAVEFORMERLITE等。ACTEL的LIBERO設(shè)計(jì)文件生成可以有四種方式HDL語(yǔ)言生成、SMARTDESIGN輸入、CORECONSOLE輸入和VIEWDRAW原理圖輸入。其中應(yīng)該還有一種輸入就是SMARTGEN輸入,它已經(jīng)集成在LIBERO開(kāi)發(fā)環(huán)境左側(cè)的CATLOG窗口中。在這些輸入方式中,HDL語(yǔ)言生成是最常用也是移植性最好的。如果想到ACTEL公司一些現(xiàn)成的模塊就需要用到SMARTGEN,例如RAM、FIFO、加法器等;對(duì)于HDL語(yǔ)言不熟悉或者習(xí)慣于用原理圖來(lái)搭建頂層設(shè)計(jì)的用戶可以使用原理圖輸入,例如SMARTDESIGN、VIEWDRAW;如果想搭建系統(tǒng)級(jí)的平臺(tái),如8051、ARM7、COREXM1可以用CORECONSOLE作為輸入。213軟件仿真下面以十二分頻為例進(jìn)行介紹如何在LIBERO85軟件下進(jìn)行仿真。點(diǎn)擊HDLEDITOR進(jìn)入HDL輸入方式,在彈出文件類(lèi)型選擇框中選擇VERILOGSOURCEFILE,如果用VHDL的用戶可以選擇VHDLSOURCEFILE,然后在右邊輸入文件名稱(chēng)66。在彈出的新文件中,輸入HDL代碼。輸入源文件后可以對(duì)剛才的程序進(jìn)行功能仿真。首先要?jiǎng)?chuàng)建仿真用的激勵(lì)文件,激勵(lì)文件可以采用HDL文本輸入或者畫(huà)波形圖的方式得到。然后點(diǎn)擊WAVEFORMER圖標(biāo)打開(kāi)WAVEFOMER,點(diǎn)擊CLK48M,從右鍵菜單中選擇“SIGNALCLOCK“把這個(gè)信號(hào)設(shè)為時(shí)鐘信號(hào),再繼續(xù)雙擊CLK48M信號(hào),從彈出的菜單中選擇”CLOCKPROPETIES“把信號(hào)的時(shí)鐘頻率改成為48MHZ,選中信號(hào),先把HIGH圖標(biāo)選中,畫(huà)一段高電平信號(hào),再把LOW圖標(biāo)選中,畫(huà)一段低電平。畫(huà)完好以后點(diǎn)擊保存圖標(biāo),保存類(lèi)型選為VERILOGW/TOPLEVELTESTBENCH(V)類(lèi)型,文件名不要更改,采用默認(rèn)就就可以。保存V類(lèi)型的文件后再點(diǎn)擊保存圖標(biāo),把文件保存為BTIM格式的文件。最后關(guān)閉WAVEFORMER,右擊SIMULUSEDITOR,選擇ORGANIZESTIMULUS,在彈出的窗口點(diǎn)擊ADD按鈕把測(cè)試文件導(dǎo)入,如下圖21所示圖21當(dāng)把仿真激勵(lì)文件加入后,WAVEFORMER會(huì)變成綠色,說(shuō)明已經(jīng)通過(guò),然后點(diǎn)擊MODELSIM仿真就可以了,MODELSIM的工程在調(diào)用的時(shí)候自動(dòng)會(huì)建立。最后得到的十二分頻等占空比的仿真效果圖如圖22下圖2222奇數(shù)倍分頻221分頻原理【7】奇數(shù)倍分頻有兩種實(shí)現(xiàn)方法,其中之一完全可以通過(guò)計(jì)數(shù)器來(lái)實(shí)現(xiàn),如進(jìn)行三分頻,就可通過(guò)待分頻時(shí)鐘上升沿觸發(fā)計(jì)數(shù)器來(lái)進(jìn)行模三計(jì)數(shù),當(dāng)計(jì)數(shù)器計(jì)數(shù)到鄰近值時(shí)進(jìn)行兩次翻轉(zhuǎn)。比如可以在計(jì)數(shù)器計(jì)數(shù)到1時(shí),輸出時(shí)鐘進(jìn)行翻轉(zhuǎn),計(jì)數(shù)到2時(shí)再次進(jìn)行翻轉(zhuǎn)。這樣,就在計(jì)數(shù)值鄰近的1和2進(jìn)行了兩次翻轉(zhuǎn)。如此便實(shí)現(xiàn)了三分頻,其占空比為13或23。如果要實(shí)現(xiàn)占空比為50的三分頻時(shí)鐘,則可通過(guò)待分頻時(shí)鐘下降沿觸發(fā)計(jì)數(shù),并以和上升沿同樣的方法計(jì)數(shù)進(jìn)行三分頻,然后對(duì)下降沿產(chǎn)生的三分頻時(shí)鐘和上升沿產(chǎn)生的時(shí)鐘進(jìn)行相或運(yùn)算。即可得到占空比為50的三分頻時(shí)鐘,這是奇數(shù)分頻的三種方法。這種方法可以實(shí)現(xiàn)任意的奇數(shù)分頻。如將其歸類(lèi)為一般的方法對(duì)于實(shí)現(xiàn)占空比為50的N倍奇數(shù)分頻,首先要進(jìn)行上升沿觸發(fā)以進(jìn)行模N計(jì)數(shù),計(jì)數(shù)選定到某一個(gè)值再進(jìn)行輸出時(shí)鐘翻轉(zhuǎn),然后通過(guò)N12再次進(jìn)行翻轉(zhuǎn),就可得到一個(gè)占空比非50的奇數(shù)N分頻時(shí)鐘。再同時(shí)進(jìn)行下降沿觸發(fā)的模N計(jì)數(shù),當(dāng)其到達(dá)與上升沿觸發(fā)輸出時(shí)鐘翻轉(zhuǎn)選定值相同時(shí),再進(jìn)行輸出時(shí)鐘翻轉(zhuǎn),同樣,經(jīng)過(guò)N12時(shí),輸出時(shí)鐘再次翻轉(zhuǎn)以生成占空比非50的奇數(shù)N分頻時(shí)鐘。將這兩個(gè)占空比非50的N分頻時(shí)鐘相或運(yùn)算,就可以得到占空比為50的奇數(shù)分頻時(shí)鐘。原理圖見(jiàn)下圖23CLKQOUTRESETCLKQOUTRESETCOUNT3COUNT3CLK_OUTCLKRESETORNOT圖23222軟件仿真在LIBERO開(kāi)發(fā)軟件下,如等占空比三分頻的仿真圖如圖24下圖24仿真結(jié)果如下圖25圖2523半整數(shù)分頻【1】首先講講如何進(jìn)行N05分頻,這種分頻需要對(duì)輸入時(shí)鐘進(jìn)行操作?;镜脑O(shè)計(jì)思想對(duì)于進(jìn)行N05分頻,首先進(jìn)行模N的計(jì)數(shù),在計(jì)數(shù)到N1時(shí),輸出時(shí)鐘賦為1,回到計(jì)數(shù)0時(shí),又賦為0,因此,可以知道,當(dāng)計(jì)數(shù)值為N1時(shí),輸出時(shí)鐘才為1。因此,只要保持計(jì)數(shù)值N1為半個(gè)輸入時(shí)鐘周期,即實(shí)現(xiàn)了N05分頻時(shí)鐘,因此保持N1為半個(gè)時(shí)鐘周期是一個(gè)難點(diǎn)。從中可以發(fā)現(xiàn),因?yàn)橛?jì)數(shù)器是通過(guò)時(shí)鐘上升沿計(jì)數(shù),因此可以在計(jì)數(shù)為N1時(shí)對(duì)計(jì)數(shù)觸發(fā)時(shí)鐘進(jìn)行翻轉(zhuǎn)。那么時(shí)鐘的下降沿變成了上升沿。即在計(jì)數(shù)值為N1期間的時(shí)鐘下降沿變成了上升沿,則計(jì)數(shù)值N1只保持了半個(gè)時(shí)鐘周期,由于時(shí)鐘翻轉(zhuǎn)下降沿變成上升沿,因此計(jì)數(shù)值變?yōu)?。因此,每產(chǎn)生一個(gè)N05分頻時(shí)鐘的周期,觸發(fā)時(shí)鐘都是要翻轉(zhuǎn)一次。電路圖見(jiàn)下圖26,原理圖見(jiàn)下圖27異或門(mén)模N計(jì)數(shù)器2分頻器FF0/N05F0/2N1圖26M分頻M1分頻選擇輸出控制計(jì)數(shù)器時(shí)鐘源輸出時(shí)鐘圖2724小數(shù)分頻器小數(shù)分頻器的實(shí)現(xiàn)方法很多,但其基本原理一樣在若干個(gè)分頻周期中采取某種方法使某幾個(gè)周期少計(jì)一個(gè)或幾個(gè)數(shù),即吞脈沖原理,從而在整個(gè)計(jì)數(shù)周期的總體平均意義上獲得一個(gè)小數(shù)分頻比。以下簡(jiǎn)要說(shuō)明兩種比較常用的小數(shù)分頻電路的原理及設(shè)計(jì)方法。積分分頻器是比較常見(jiàn)的小數(shù)分頻器,其基本原理是將小數(shù)分頻比轉(zhuǎn)換為整數(shù)比值,再采用計(jì)數(shù)器對(duì)輸入時(shí)鐘進(jìn)行計(jì)數(shù),根據(jù)計(jì)數(shù)值吞掉一些脈沖,從而得到所需的頻率輸出;累加器分頻則是一種基于相位累加器基本原理的一種分頻技術(shù),將累加器最高位作為分頻輸出,根據(jù)送入累加器中不同的累加步長(zhǎng)改變分頻倍數(shù)。241積分分頻器積分分頻器的設(shè)計(jì)首先需將小數(shù)分頻比轉(zhuǎn)換為整數(shù)比值,再采用計(jì)數(shù)器對(duì)輸入時(shí)鐘進(jìn)行計(jì)數(shù),根據(jù)計(jì)數(shù)值對(duì)輸入時(shí)鐘及插入脈沖進(jìn)行選擇分配,從而得到需要的頻率輸出脈沖,如圖28所示。計(jì)數(shù)器多路選擇器輸入時(shí)鐘頻率控制字插入脈沖分布輸出圖28設(shè)“1010101010”代表5KHZ信號(hào)中的一段信號(hào)。在同樣長(zhǎng)的時(shí)間內(nèi)設(shè)法得到另一脈沖串“1010100000”信號(hào),若其0、1寬度與5KHZ信號(hào)中的0、1寬度相同,即為輸入時(shí)鐘的寬度,則可得到3KHZ的時(shí)鐘信號(hào)。這樣,多路選擇器可在前三個(gè)周期中選擇輸入時(shí)鐘直接輸出,而在后兩個(gè)周期選擇輸出0,就可以得到脈沖串“1010100000”,從而完成3/5倍的分頻,得到3KHZ的信號(hào)。242累加器分頻在DDS技術(shù)中經(jīng)常采用相位累加器來(lái)進(jìn)出頻率控制,對(duì)于頻率不變的輸入基準(zhǔn)時(shí)鐘,可采用對(duì)相位累加器置不同的累加步長(zhǎng)來(lái)得到不同的尋址速率。從中得到啟示,可采用累加器進(jìn)行小數(shù)分頻,如圖29所示。數(shù)據(jù)轉(zhuǎn)換加法器并行數(shù)據(jù)寄存器頻率控制字寄存器最高位分頻輸出時(shí)鐘輸入圖29累加器由加法器與并行數(shù)據(jù)寄存器組成,頻率控制字經(jīng)數(shù)據(jù)轉(zhuǎn)換模塊轉(zhuǎn)換為累加器的累加步長(zhǎng),將并行數(shù)據(jù)寄存器的高位作為時(shí)鐘輸出。設(shè)輸入時(shí)鐘為頻率FIN,相位累加器的位數(shù)為N,輸出頻率的分辨率當(dāng)送入的頻率控制字K為1時(shí)的輸出頻率為F2FIN/2N從式可看出,在累加器位數(shù)足夠高時(shí),最小輸出頻率頻率分辨率可接近零頻。實(shí)際設(shè)計(jì)過(guò)程中,可根據(jù)分頻倍數(shù)的要求來(lái)選擇累加器的位數(shù)。若設(shè)頻率控制字為K,則輸出頻率為FOUT(KFIN)/2N。以上三種小數(shù)分頻器各有其特點(diǎn),采用4527的分頻電路比較復(fù)雜,適用于頻率為10的冪的輸入;積分分頻器首先需把分頻倍數(shù)轉(zhuǎn)換為兩整數(shù)之比值,故在使用中,對(duì)分頻倍數(shù)要求比較嚴(yán)格,靈活性受到一定限制;累加器分頻則對(duì)頻率為2的冪的輸入時(shí)鐘分頻效果比較好,而且輸出時(shí)鐘有一定的抖動(dòng),但還是可以應(yīng)用于一些特殊場(chǎng)合。243小數(shù)分頻器的應(yīng)用【12】小數(shù)分頻器在數(shù)字系統(tǒng)設(shè)計(jì)中的應(yīng)用非常廣泛,經(jīng)常是各個(gè)模塊需要的頻率不相同,這就需要對(duì)時(shí)鐘進(jìn)行分頻得到各模塊需要的時(shí)鐘頻率。但常規(guī)的整數(shù)分頻器實(shí)際就是計(jì)數(shù)器不能滿足要求。例如,若基準(zhǔn)時(shí)鐘頻率為100MHZ,對(duì)其進(jìn)行整數(shù)分頻,只能得到50MHZ、25MHZ等頻率值,如想得到30MHZ、20MHZ等頻率值,就需要應(yīng)用小數(shù)分頻器對(duì)基準(zhǔn)時(shí)鐘進(jìn)行小數(shù)分頻。在DDS波形發(fā)生器設(shè)計(jì)和步進(jìn)電機(jī)驅(qū)動(dòng)中,需要對(duì)輸出信號(hào)頻率進(jìn)行控制,若采用一般計(jì)數(shù)器來(lái)進(jìn)行分頻,由上述分析可知,輸出信號(hào)頻率值的連續(xù)性就受到限制。為了使輸出信號(hào)頻率值能連續(xù)可控,就需進(jìn)行小數(shù)分頻。在DDS技術(shù)中的應(yīng)用圖210為DDS技術(shù)基本原理圖,頻率控制字送入分頻器。設(shè)基頻頻率為FIN,分頻倍數(shù)為W,則計(jì)數(shù)器的時(shí)鐘頻率為為FIN/W。計(jì)數(shù)器在頻率FIN/W的時(shí)鐘作用下計(jì)數(shù)對(duì)查找表尋址輸出波形數(shù)據(jù)。若查找表存儲(chǔ)深度為M一個(gè)周波存儲(chǔ)M個(gè)點(diǎn),則輸出波形的頻率為FOFIN/WM式中,F(xiàn)IN為基頻頻率、存儲(chǔ)深度M為一定值,這樣就只需控制分頻倍數(shù)K來(lái)控制合成波形的頻率。分頻器可編程數(shù)據(jù)轉(zhuǎn)換計(jì)數(shù)器查找表基頻輸出頻率控制字圖210在DDS技術(shù)中,常用的技術(shù)是采用累加器對(duì)查找表尋址。但采用這種方法時(shí),在輸出高頻與低頻波形時(shí)的尋址點(diǎn)數(shù)不同。在高頻尋址點(diǎn)數(shù)較少,而在低頻時(shí)點(diǎn)數(shù)較多,為保證在頻率較高時(shí)輸出的波形失真度小,在低頻階段,尋址的點(diǎn)數(shù)就比較多,需要較深的存儲(chǔ)深度。而采用圖210所示的方法,則不管在低頻或高頻,尋址點(diǎn)數(shù)一樣,這樣就可以采用一致的存儲(chǔ)深度,節(jié)約存儲(chǔ)器。特別是采用CPLD進(jìn)行系統(tǒng)設(shè)計(jì)時(shí),查找表也可采用CPLD來(lái)設(shè)計(jì),易于系統(tǒng)集成。在步進(jìn)電機(jī)驅(qū)動(dòng)中的應(yīng)用步進(jìn)電機(jī)是一種用電脈沖信號(hào)進(jìn)行控制,將電脈沖信號(hào)轉(zhuǎn)換為相應(yīng)的角位移或線位移的控制電機(jī)。在步進(jìn)電機(jī)的驅(qū)動(dòng)中,需要對(duì)步進(jìn)電機(jī)轉(zhuǎn)速進(jìn)行控制。圖211為步進(jìn)電機(jī)驅(qū)動(dòng)電路原理圖?;鶞?zhǔn)時(shí)鐘在頻率控制字作用下分頻得到所需頻率的脈沖作為脈沖分配器的時(shí)鐘,這樣即可控制脈沖分配器輸出驅(qū)動(dòng)脈沖的速率,經(jīng)功率放大后驅(qū)動(dòng)步進(jìn)電機(jī)。小數(shù)分頻器功率放大器脈沖分配器步進(jìn)電機(jī)控制信號(hào)頻率控制字基準(zhǔn)時(shí)鐘圖21125本章小結(jié)通過(guò)對(duì)以上幾種分頻器的設(shè)計(jì)可知,如果需要的分頻形式較少,只需要偶數(shù)分頻、奇數(shù)分頻、半整數(shù)分頻或者小數(shù)分頻中的一種,就可以參考用本章所設(shè)計(jì)的分頻器來(lái)進(jìn)行分配,從而滿足需要,利用各個(gè)獨(dú)立的分頻器,可以節(jié)省資源。第三章通用分頻器的設(shè)計(jì)31設(shè)計(jì)方案【12】針對(duì)現(xiàn)有的常用分頻器的使用局限性,介紹了一種可以實(shí)現(xiàn)任意小數(shù)、分?jǐn)?shù)分頻的新型分頻器。由預(yù)先設(shè)置的分頻參數(shù),通過(guò)使用的一個(gè)帶余數(shù)輸出的除法器,計(jì)數(shù)出其商和余數(shù),確定兩個(gè)分頻器的分頻系數(shù)和分頻次數(shù)。通過(guò)控制兩個(gè)分頻交替工作,從而實(shí)現(xiàn)任意分頻。分析了這種分頻器的工作原理,提出了一種簡(jiǎn)單的實(shí)現(xiàn)電路,并用VERILONGHDL語(yǔ)言描述了該分頻器。311設(shè)計(jì)方案一頻率合成器是數(shù)字系統(tǒng)設(shè)計(jì)中的基本電路,在數(shù)字系統(tǒng)特別是無(wú)線通信系統(tǒng)中有著廣泛的應(yīng)用,如載波恢復(fù)、上下變頻、比特同步、時(shí)隙同步等等,都需要各種不同性能指標(biāo)的頻率合成器。他是現(xiàn)代數(shù)字通信中必不可少的部分。頻率合成器可由鎖相環(huán)實(shí)現(xiàn),完成頻率的捕獲、跟蹤和鎖定,再通過(guò)倍頻或分頻得到所需要的頻率。在實(shí)現(xiàn)分頻過(guò)程中,有時(shí)會(huì)遇到分?jǐn)?shù)或者小數(shù)分頻,這種分頻器一般不好用單個(gè)計(jì)數(shù)器實(shí)現(xiàn),而需要用兩個(gè)或多個(gè)整數(shù)計(jì)數(shù)器交替分頻,得到一個(gè)平均分頻系數(shù)。其原理為控制整數(shù)分頻器按照一定的規(guī)則變化,比如,若要得到53的小數(shù)分頻,只要在10次分頻中,作7次5分頻,再作3次6分頻,就可以實(shí)現(xiàn)小數(shù)分頻。上述的分頻原理能夠?qū)崿F(xiàn)任意的分頻要求,但是必須事先算好兩個(gè)分頻器的分頻值和各自的分頻次數(shù)。文獻(xiàn)中闡述了能夠?qū)崿F(xiàn)任意小數(shù)分頻的分頻器的實(shí)現(xiàn)方法。其原理為如果原先設(shè)置的分頻系數(shù)K能夠轉(zhuǎn)化成有窮小數(shù),通過(guò)一個(gè)控制器控制N和N1分頻器交替工作,使每10個(gè)脈沖中,有X個(gè)為N1分頻所得,10X個(gè)脈沖為N分頻所得,從而能夠?qū)崿F(xiàn)預(yù)置分頻值為K的任意分頻,即能夠?qū)崿F(xiàn)任意小數(shù)分頻。這種分頻器在K值為分?jǐn)?shù)時(shí),比如3/2,就無(wú)法計(jì)算出對(duì)應(yīng)的X和N值。這就是這種電路的局限性所在。文獻(xiàn)中還提到一種能夠?qū)崿F(xiàn)占空比為50的分頻電路,但是,該電路只用于整數(shù)分頻或半整數(shù)分頻,使用局限性更大。312設(shè)計(jì)方案二上面介紹的分頻器均存在一定的局限性,這里介紹一種新型的分配方法。假定需要對(duì)輸入頻率進(jìn)行任意分頻,為了表示其通用性,這里用分?jǐn)?shù)M/N(其中M、N均屬于非0正整數(shù))表示分頻系數(shù)。假定使用兩個(gè)分頻系數(shù)分別為K和K1的分頻器交替工作,每個(gè)分頻器的工作周期分別為NX次和X次,若通過(guò)這種方式,能夠得到所需的M/N分頻的頻率輸出,則K、X、M和N必將滿足一下關(guān)系式M/NKNXK1X/N。要實(shí)現(xiàn)M/N分頻,則當(dāng)有N個(gè)脈沖輸出時(shí),必須對(duì)應(yīng)M個(gè)脈沖輸入,即輸入時(shí)鐘經(jīng)過(guò)M個(gè)周期,上式右邊表示,M個(gè)輸入脈沖分別進(jìn)行了NX次K分頻和X次K1分頻。每次分頻得到一個(gè)輸出脈沖,共得到NXXN個(gè)輸出脈沖。顯然等式左右相等。將上面公式化簡(jiǎn)可得MKNX上式說(shuō)明了分?jǐn)?shù)分頻的分子M、分母N、分頻系數(shù)K和分頻次數(shù)X的等式關(guān)系。從另一個(gè)角度看,如果把兩個(gè)預(yù)置值M、N分別當(dāng)作被除數(shù)和除數(shù),則N和X就可以分別看成是商和余數(shù),如下式所示(MX)/NK即如果輸出需要得到一個(gè)任意M/N的分?jǐn)?shù)頻率,只要事先預(yù)置其分子M和分母N,經(jīng)過(guò)一個(gè)帶余數(shù)輸出的除法器,即可以得到兩個(gè)分頻器的分頻系數(shù)K、K1和對(duì)應(yīng)的分頻次數(shù)NX和X,從而實(shí)現(xiàn)任意的分?jǐn)?shù)分頻。32系統(tǒng)設(shè)計(jì)下面介紹如何利用FPGA實(shí)現(xiàn)該分頻器分頻次數(shù)和復(fù)位選擇等,幾個(gè)部分組成,如圖所示由上面介紹可知,該分頻器可由一個(gè)帶余數(shù)輸出的觸發(fā)器、可置位的K/K1分頻器、分頻器分頻次數(shù)和復(fù)位選擇等幾個(gè)部分組成,如圖31所示除法器復(fù)位選擇分頻器分頻次數(shù)計(jì)數(shù)輸入時(shí)鐘輸入系數(shù)M、N商、K頻率輸出圖31圖31中為了合理利用硬件資源,提高系統(tǒng)工作頻率,除法器可以采用多級(jí)流水線的移位減方法實(shí)現(xiàn),每次計(jì)算完一位商,將被除數(shù)左移一位,最后得到所需要的商K和余數(shù)X。分頻器可以使用一個(gè)最大計(jì)數(shù)值為K的計(jì)數(shù)器實(shí)現(xiàn),其中K為M/N所得到的商。通過(guò)復(fù)位選擇模塊,控制計(jì)數(shù)器復(fù)位到0或者1,從而通過(guò)使用一個(gè)計(jì)數(shù)器同時(shí)完成K1分頻和K分頻。每次計(jì)數(shù)器溢出,分頻次數(shù)計(jì)數(shù)器加1,通過(guò)分頻次數(shù)計(jì)數(shù)器的值決定分頻器的復(fù)位值。當(dāng)分頻計(jì)數(shù)器的值大于X時(shí),分頻器復(fù)位值為0,否則為1。當(dāng)分頻次數(shù)計(jì)數(shù)器計(jì)數(shù)到N時(shí),該計(jì)數(shù)器復(fù)位到1,從而實(shí)現(xiàn)周期為N的計(jì)數(shù)。321電路工作流程圖及部分程序上述電路的工作流程如圖32所示開(kāi)始無(wú)法分頻K值不為0分頻次數(shù)大于等于N計(jì)數(shù)器計(jì)數(shù)到K值值輸入分?jǐn)?shù)分母M和分子N分頻計(jì)數(shù)器復(fù)位到1值分頻計(jì)數(shù)器復(fù)位到0值K1分頻計(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值K1分頻計(jì)數(shù)NYYNNN圖32用FPGA實(shí)現(xiàn)K/K1分頻器的部分VERILOGHDL源代碼如下所示ALWAYSPOSEDGECLKINBEGINIFRESETCOUNTKDIVTIMESXASSIGNCOUNTNINCCOUNTKDIVFREQK322時(shí)鐘輸出流程圖及部分程序時(shí)鐘輸出的流程如圖所示。當(dāng)分頻計(jì)數(shù)器計(jì)數(shù)到分頻值K的1/2倍和1倍時(shí),輸出脈沖反轉(zhuǎn),以保證分頻計(jì)數(shù)器工作在一個(gè)周期,輸出時(shí)鐘也為一個(gè)周期。從而實(shí)現(xiàn)所需的分頻功能。當(dāng)分頻系數(shù)K為1時(shí),輸出時(shí)鐘直接等于輸入時(shí)鐘,當(dāng)K為0時(shí),這是個(gè)倍頻器,不是本文討論的范圍。時(shí)鐘輸出的電路工作流程圖如圖33下開(kāi)始輸出時(shí)鐘任意分?jǐn)?shù)計(jì)數(shù)值為K/2或KK值為1且為K1分頻計(jì)數(shù)K值為1,且為K分頻計(jì)數(shù)K值不為0輸出時(shí)鐘為輸入時(shí)鐘輸出時(shí)鐘電平值取反NNNYNY圖33用FPGA實(shí)現(xiàn)頻率輸出功能的部分VERILOGHDL源代碼如下/當(dāng)計(jì)數(shù)到K/2時(shí),輸出時(shí)鐘反轉(zhuǎn)標(biāo)志ASSIGNCLKREVERSECOUNT1B0,DIVFREQK31ALWAYSPOSEDGECLKINBEGINIFRESETCLKDIV1B0/計(jì)數(shù)到K或K/2時(shí),輸出時(shí)鐘反轉(zhuǎn)ELSEIFCLKREVERSECOUNTNINCCLKDIVCLKDIVEND/當(dāng)K值為0或1時(shí),輸出時(shí)鐘等于輸入時(shí)鐘ASSIGNCLKOUTCNDIVFREQKEN/時(shí)鐘輸出ASSIGNCLKOUTCLKOUTCNCLKINCLKDIV33通用分頻器的應(yīng)用【9】綜上可以看出,只需要對(duì)帶預(yù)置的模N計(jì)數(shù)器的初值進(jìn)行設(shè)定,以及對(duì)控制端口CONTROL的電平高低進(jìn)行設(shè)定,就可以利用這個(gè)基于FPGA的實(shí)用分頻器來(lái)得到我們所需要的頻率。331等占空比的奇數(shù)分頻器如果需要得到分頻系數(shù)為M的等占空比的奇數(shù)分頻,那么只需要將帶預(yù)置的模N計(jì)數(shù)器的初值N設(shè)定為NM1/2,然后根據(jù)N的值調(diào)整帶預(yù)置的模N計(jì)數(shù)器模塊的程序中位寬就可以在輸出端口QDENG得到所需要的分頻系數(shù)為M的等占空比的奇數(shù)分頻。332任意占空比的奇、偶數(shù)分頻如果需要得到分頻系數(shù)為M的任意占空比的奇、偶數(shù)分頻,那么只需將帶預(yù)置的模N計(jì)數(shù)器的初值N設(shè)定為NM,然后根據(jù)N的值調(diào)整帶預(yù)置的模N計(jì)數(shù)器模塊的程序中的位寬就可以在輸出端口QBAN得到所需要的分頻系數(shù)為M的任意占空比的奇、偶數(shù)分頻。333等占空比的偶數(shù)分頻器如果需要得到分頻系數(shù)為M的等占空比的偶數(shù)分頻,那么只需要將帶預(yù)置的模N計(jì)數(shù)器的初值N設(shè)定為NM/2,然后根據(jù)N的值調(diào)整帶預(yù)置的模N計(jì)數(shù)器模塊的程序中的位寬就可以在輸出端口QDENG得到所需的分頻系數(shù)為M的等占空比的偶數(shù)分頻。334半整數(shù)分頻器如果需要得到分頻系數(shù)為M05的半整數(shù)分頻,那么只需要將帶預(yù)置的模N計(jì)數(shù)器的初值N設(shè)定為NM,然后根據(jù)N的值調(diào)整帶預(yù)置的模N計(jì)數(shù)器模塊的程序中位寬就可以在輸出端口QBAN得到所需的分頻系數(shù)為M05的半整數(shù)分頻。34本章小結(jié)本章介紹了一種進(jìn)行FPGA開(kāi)發(fā)式,所需多種分頻的實(shí)現(xiàn)方法。如果設(shè)計(jì)中所需要的分頻形式較多??梢灾苯永帽菊碌脑O(shè)計(jì),通過(guò)對(duì)程序的稍微改動(dòng)來(lái)滿足自己的設(shè)計(jì)要求,該設(shè)計(jì)具有很強(qiáng)的通用性。結(jié)論經(jīng)過(guò)本次課程設(shè)計(jì),讓我更加深刻的學(xué)習(xí)和鞏固了VERILO數(shù)字系統(tǒng)設(shè)計(jì)這門(mén)課程,不僅從理論上掌握了課堂上沒(méi)有學(xué)懂的知識(shí),還從實(shí)踐中拓寬了我的知識(shí)面,讓我對(duì)我們專(zhuān)業(yè)的知識(shí)有了更加全
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 物聯(lián)網(wǎng)設(shè)備維護(hù)合同協(xié)議
- 團(tuán)建拓展活動(dòng)合同模板(3篇)
- 合伙企業(yè)合同協(xié)議書(shū)范
- 即時(shí)物流合同
- 2025年房地產(chǎn)投資合作合同書(shū)
- 2026中國(guó)科協(xié)所屬單位面向社會(huì)招聘5人參考考試試題及答案解析
- 2025中國(guó)農(nóng)業(yè)大學(xué)鄧愛(ài)華教授誠(chéng)聘博士后模擬筆試試題及答案解析
- 2025年廣西中醫(yī)藥大學(xué)第一附屬醫(yī)院公開(kāi)招聘36人參考考試試題及答案解析
- 2025四川德陽(yáng)市旌陽(yáng)區(qū)孝泉鎮(zhèn)衛(wèi)生院(旌陽(yáng)區(qū)第二人民醫(yī)院)招聘2人備考考試試題及答案解析
- 2025江西省人力資源有限公司招聘生產(chǎn)服務(wù)一線人員2人備考考試試題及答案解析
- 2025年夏季山東高中學(xué)業(yè)水平合格考地理試卷試題(含答案)
- DBJ04-T483-2025 海綿型城市道路與廣場(chǎng)設(shè)計(jì)標(biāo)準(zhǔn)
- 農(nóng)藥運(yùn)輸儲(chǔ)存管理制度
- TD/T 1036-2013土地復(fù)墾質(zhì)量控制標(biāo)準(zhǔn)
- 童年的閱讀測(cè)試題及答案
- 爆破備案工作報(bào)告
- 山東省濟(jì)南市鋼城區(qū)(五四學(xué)制)2024-2025學(xué)年八年級(jí)上學(xué)期1月期末考試數(shù)學(xué)試卷
- 客戶押款協(xié)議書(shū)范本
- 地理建筑特征教案課件
- 1.1冪的乘除第4課時(shí)(課件)-2024-2025學(xué)年七年級(jí)數(shù)學(xué)下冊(cè)同步課堂(北師大版)
- 人教版(PEP)英語(yǔ)六年級(jí)上冊(cè) Unit4 Part A Lets learn 教案
評(píng)論
0/150
提交評(píng)論