基于DDS的信號發(fā)生器設計_第1頁
基于DDS的信號發(fā)生器設計_第2頁
基于DDS的信號發(fā)生器設計_第3頁
基于DDS的信號發(fā)生器設計_第4頁
基于DDS的信號發(fā)生器設計_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGEIV題目名稱:基于DDS的信號發(fā)生器設計摘要在信號發(fā)生器的設計中,傳統(tǒng)的用分立元件或通用數(shù)字電路元件設計電子線路的方法設計周期長,花費大,可移植性差。本設計是用直接數(shù)字頻率合成器(DDS),設計出兩個相互正交的信號,該信號發(fā)生器輸出信號的頻率范圍為:0-4MHz,頻率分辨率:0.232Hz,頻率誤差范圍:-2%~2%,相位差的誤差<4°。與傳統(tǒng)的頻率合成方法相比,DDS合成信號具有頻率切換時間短、頻率分辨率高、相位變化連續(xù)等諸多優(yōu)點。使用單片機靈活的控制能力與FPGA器件的高性能、高集成度相結合,可以克服傳統(tǒng)DDS設計中的不足,從而設計開發(fā)出性能優(yōu)良的DDS系統(tǒng)。關鍵詞:單片機,直接數(shù)字頻率合成,可編程邏輯器件PAGEABSTRACTInthedesigningofthesignalgenerator,thetraditionalmethod,whichdesignselectroniccircuitsusingdiscretecomponentsorgeneraldigitalcircuitscomponents,takesalongtimewithhighcost,what’smore,thetransplantingabilityofitisunsatisfactory.Inthisdesign,thecircuitisdesignedthedesigningofDDS.Itsoutputfrequencyrangeis0to4MHz,theresolutionis0.232HZandzheerrorisbitween-2%and2%.Comparedwithtraditionalmethodsoffrequencysynthesizing,directdigitalfrequencysynthesizing(DDS)haslotsofadvantages,suchasshorttimeofquickfrequencyexchanging,highfrequencyresolution,continuousphasechanging,etc.Micro-controlunithasischaracterizedby.ManydrawbackscanbeovercomeandagoodDDSsystemwithgoodperformancecanbedevelopedaftercombiningtheflexiblecontrolcapabilityofmicro-controlunitwithhighperformanceandintegrationoftheFPGAdevicesinthesamesystem.Keywords:MUC;DDS;FPGA目錄第1章緒言 .11.1課題背景 .11.2課題研究的目的和意義 11.3國內外的研究狀況 21.3.1波形發(fā)生器的發(fā)展狀況 21.3.2國內外波形發(fā)生器產品比較 31.3.3本課題在國內外的研究現(xiàn)狀 4第2章信號發(fā)生器的方案設計 42.1系統(tǒng)實現(xiàn)方案分析與比較 42.1.1頻率合成器方案 42.1.2移相方案 62.1.3存儲器方案 72.2模塊結構劃分 82.2.1DDS的基本原理 92.2.2FPGA實現(xiàn)的直接數(shù)字頻率合成器 102.2.3移相原理 10第3章電路設計 143.1FPGA設計DDS電路的具體實現(xiàn) 143.1.1相位累加器部分 143.1.2相位/幅度轉換電路 143.1.3波形表生成 153.1.4D/A轉換電路 153.1.5系統(tǒng)控制電路 153.2單片機與FPGA的接口設計 153.3現(xiàn)場可編程邏輯器件(FPGA)的選擇 173.4其他電路設計 183.4.1晶體振蕩電路 183.4.2地址計數(shù)脈沖產生電路 183.4.3幅度控制電路 193.4.4單片機外擴展存儲器電路 193.4.5濾波、緩沖輸出電路 203.4.6鍵盤和顯示控制電路 213.4.7D/A轉換電路的設計 223.4.8DAC0832芯片原理 24結束語 28參考文獻...........................29致謝.............................30附錄1 31附錄2 32附錄3 34)PAGE29第1章緒言1.1課題背景在一些電子設備的電路板故障檢測儀中,往往需要頻率、幅度都能由計算機自動調節(jié)的信號源。采用諸如MAX038信號發(fā)生器芯片外加電阻及切換開關等器件雖然也能調節(jié)頻率和幅度,但這種調節(jié)是離散的,且電路復雜,使用不方便。而采用直接數(shù)字合成芯片DDS及外加D/A轉換芯片構成的可控信號源,可產生正弦波、調頻波、調幅波及方波等,并且其信號的頻率和幅度可由微機來精確控制,調節(jié)非常方便。另外隨著21世紀的到來,人類正在跨入信息時代?,F(xiàn)代通信系統(tǒng)的發(fā)展方向是功能更強,體積更小,速度更快,功耗更低。而大規(guī)模可編程器件CPLD/FPGA在集成度、功能和速度上的優(yōu)勢正好滿足通信系統(tǒng)的這些要求。所以今天無論是民用的移動電話、程控交換機、集群電臺、廣播發(fā)射機和調制解調器,還是軍用的雷達設備、圖形處理儀器、遙控遙測設備、加密通信機中,都已廣泛地使用大規(guī)??删幊唐骷2]。由于數(shù)字技術在處理和傳輸信息方面的各種優(yōu)點,數(shù)字技術和數(shù)字集成電路的使用已經成為構成現(xiàn)代電子系統(tǒng)的重要標志。電子系統(tǒng)的集成化,不僅可使系統(tǒng)的體積小、重量輕且功耗低,更重要的是可使系統(tǒng)的可靠性大大提高。因此自集成電路問世以來,集成規(guī)模便以10倍/6年的速度增長。從20世紀90年代初以來,電子系統(tǒng)日趨數(shù)字化、復雜化和大規(guī)模集成化。為滿足個人電腦、無繩電話和高速數(shù)據傳輸設備的發(fā)展需求,電子廠商們越加迫切地追求電子產品的高功能、優(yōu)品質、低成本、微功耗和微小封裝尺寸。為達到此目標,必須采用少量的IC器件使面積盡可能小。1.2課題研究的目的和意義正弦信號發(fā)生器作為電子技術領域中最基本的電子儀器,廣泛應用于航空航天測控、通信系統(tǒng)、電子對抗、電子測量、科研等各個領域中。隨著電子信息技術的發(fā)展,對其性能的要求也越來越高,如要求頻率穩(wěn)定性高、轉換速度快,具有調幅、調頻、調相等功能,另外還經常需要兩路正弦信號不僅具有相同的頻率,同時要有確定的相位差[4]。隨著數(shù)字信號處理和集成電路技術的發(fā)展,直接數(shù)字頻率合成(DDS)的應用也越來越廣泛。DDS具有相位和頻率分辨率高、穩(wěn)定度好、頻率轉換時間短、輸出相位連續(xù)、可以實現(xiàn)多種數(shù)字與模擬調制的優(yōu)點,而可編程門陣列(FPGA)具有集成度高、通用性好、設計靈活、編程方便、可以實現(xiàn)芯片的動態(tài)重構等特點,因此可以快速地完成復雜的數(shù)字系統(tǒng)。由于模擬調相方法有生產性差、調試不方便、調制度控制不精確等缺點,因此采用數(shù)字方法實現(xiàn)各種模擬調制也越來越普遍[5]?,F(xiàn)在許多DDS芯片都直接提供了實現(xiàn)多種數(shù)字調制的功能,實現(xiàn)起來比較簡單,而要實現(xiàn)模擬線性調制具有一定的難度。因此本設計介紹了一種由單片機控制,并采用FPGA實現(xiàn)DDS功能,產生頻率和相位可調的正弦波信號的方法。單片機是實現(xiàn)各種控制策略和算法的載體。波形發(fā)生器也可運用單片機技術,通過巧妙的軟件設計和簡易的硬件電路,產生數(shù)字式的正弦波相位、頻率和幅值可調的信號。信號的頻率、相位可通過鍵盤輸入并顯示。與現(xiàn)有各類型波形發(fā)生器比較而言,產生的數(shù)字信號干擾小,輸出穩(wěn)定,可靠性高,特別是操作簡單方便,成本低。1.3國內外的研究狀況1.3.1波形發(fā)生器的發(fā)展狀況波形發(fā)生器亦稱函數(shù)發(fā)生器,作為實驗用信號源,是現(xiàn)今各種電子電路實驗設計應用中必不可少的儀器設備之一。目前,市場上常見的波形發(fā)生器多為純硬件的搭接而成,且波形種類有限,多為鋸齒、正弦、方波、三角等波形。信號發(fā)生器作為一種常見的應用電子儀器設備,傳統(tǒng)的可以完全由硬件電路搭接而成,如采用555振蕩電路發(fā)生正弦波、三角波和方波的電路便是可取的路徑之一,不用依靠單片機。但是這種電路存在波形質量差,控制難,可調范圍小,電路復雜和體積大等缺點。在科學研究和生產實踐中,如工業(yè)過程控制,生物醫(yī)學,地震模擬機械振動等領域常常要用到低頻信號源。而由硬件電路構成的低頻信號其性能難以令人滿意,而且由于低頻信號源所需的RC很大;大電阻,大電容在制作上有困難,參數(shù)的精度亦難以保證;體積大,漏電,損耗顯著更是其致命的弱點。一旦工作需求功能有增加,則電路復雜程度會大大增加。波形發(fā)生器是能夠產生大量的標準信號和用戶定義信號,并保證高精度、高穩(wěn)定性、可重復性和易操作性的電子儀器。函數(shù)波形發(fā)生器具有連續(xù)的相位變換、和頻率穩(wěn)定性等優(yōu)點,不僅可以模擬各種復雜信號,還可對頻率、幅值、相移、波形進行動態(tài)、及時的控制,并能夠與其它儀器進行通訊,組成自動測試系統(tǒng),因此被廣泛用于自動控制系統(tǒng)、震動激勵、通訊和儀器儀表領域。在70年代前,信號發(fā)生器主要有兩類:正弦波和脈沖波,而函數(shù)發(fā)生器介于兩類之間,能夠提供正弦波、余弦波、方波、三角波、上弦波等幾種常用標準波形,產生其它波形時,需要采用較復雜的電路和機電結合的方法。這個時期的波形發(fā)生器多采用模擬電子技術,而且模擬器件構成的電路存在著尺寸大、價格貴、功耗大等缺點,并且要產生較為復雜的信號波形,則電路結構非常復雜。同時,主要表現(xiàn)為兩個突出問題,一是通過電位器的調節(jié)來實現(xiàn)輸出頻率的調節(jié),因此很難將頻率調到某一固定值;二是脈沖的占空比不可調節(jié)。在70年代后,微處理器的出現(xiàn),可以利用處理器、A/D/和D/A,硬件和軟件使波形發(fā)生器的功能擴大,產生更加復雜的波形。這時期的波形發(fā)生器多以軟件為主,實質是采用微處理器對DAC的程序控制,就可以得到各種簡單的波形。90年代末,出現(xiàn)幾種真正高性能、高價格的函數(shù)發(fā)生器、但是HP公司推出了型號為HP770S的信號模擬裝置系統(tǒng),它由HP8770A任意波形數(shù)字化和HP1776A波形發(fā)生軟件組成。HP8770A實際上也只能產生8中波形,而且價格昂貴。不久以后,Analogic公司推出了型號為Data-2020的多波形合成器,Lecroy公司生產的型號為9100的任意波形發(fā)生器等。而近幾年來,國際上波形發(fā)生器技術發(fā)展主要體現(xiàn)在以下幾個方面:(1)過去由于頻率很低應用的范圍比較狹小,輸出波形頻率的提高,使得波形發(fā)生器能應用于越來越廣的領域。波形發(fā)生器軟件的開發(fā)正使波形數(shù)據的輸入變得更加方便和容易。波形發(fā)生器通常允許用一系列的點、直線和固定的函數(shù)段把波形數(shù)據存入存儲器。同時可以利用一種強有力的數(shù)學方程輸入方式,復雜的波形可以由幾個比較簡單的公式復合成v=f(t)形式的波形方程的數(shù)學表達式產生。從而促進了函數(shù)波形發(fā)生器向任意波形發(fā)生器的發(fā)展,各種計算機語言的飛速發(fā)展也對任意波形發(fā)生器軟件技術起到了推動作用。目前可以利用可視化編程語言(如VisualBasic,VisualC等等)編寫任意波形發(fā)生器的軟面板,這樣允許從計算機顯示屏上輸入任意波形,來實現(xiàn)波形的輸入。(2)與VXI資源結合。目前,波形發(fā)生器由獨立的臺式儀器和適用于個人計算機的插卡以及新近開發(fā)的VXI模塊。由于VXI總線的逐漸成熟和對測量儀器的高要求,在很多領域需要使用VXI系統(tǒng)測量產生復雜的波形,VXI的系統(tǒng)資源提供了明顯的優(yōu)越性,但由于開發(fā)VXI模塊的周期長,而且需要專門的VXI機箱的配套使用,使得波形發(fā)生器VXI模塊僅限于航空、軍事及國防等大型領域。在民用方面,VXI模塊遠遠不如臺式儀器更為方便。(3)隨著信息技術蓬勃發(fā)展,臺式儀器在走了一段下坡路之后,又重新繁榮起來。不過現(xiàn)在新的臺式儀器的形態(tài),和幾年前的己有很大的不同。這些新一代臺式儀器具有多種特性,可以執(zhí)行多種功能。而且外形尺寸與價格,都比過去的類似產品減少了一半。1.3.2國內外波形發(fā)生器產品比較早在1978年,由美國Wavetek公司和日本東亞電波工業(yè)公司公布了最高取樣頻率為5MHz,可以形成256點(存儲長度)波形數(shù)據,垂直分辨率為8bit,主要用于振動、醫(yī)療、材料等領域的第一代高性能信號源,經過將近30年的發(fā)展,伴隨著電子元器件、電路、及生產設備的高速化、高集成化,波形發(fā)生器的性能有了飛速的提高。變得操作越來越簡單而輸出波形的能力越來越強。波形操作方法的好壞,是由波形發(fā)生器控制軟件質量保證的,編輯功能增加的越多,波形形成的操作性越好。表1.1給出了幾種波形發(fā)生器的性能指標,從中可以看出當今世界上重要電子儀器生產商在波形發(fā)生器上的研制水平。表1.1一些波形發(fā)生器的性能指標公司TektronixTektronix橫河電機Wavetek型號AG320AWG710AG5100295最高采用頻率16MS/s4GMS/s1GMS/s50MS/s通道數(shù)2224垂直分辨率12bit8bit8bit12bit存儲容量64K8M8M64K輸出電壓10V2.5V2V15V1.3.3本課題在國內外的研究現(xiàn)狀二十一世紀,隨著集成電路技術的高速發(fā)展,出現(xiàn)了多種工作頻率可過GHz的DDS芯片,同時也推動了函數(shù)波形發(fā)生器的發(fā)展,2003年,Agilent的產品33220A能夠產生17種波形,最高頻率可達到20M,2005年的產品N6030A能夠產生高達500MHz的頻率,采樣的頻率可達1.25GHz。由上面的產品可以看出,函數(shù)波形發(fā)生器發(fā)展很快。對目前而言,國外(美)研究和使用的信號發(fā)生器大多要求頻率在10HZ-50MHZ,產生正弦、三角、鋸齒、方波、調幅、直流等波形,而國內則對頻率在5*10HZ-40MHZ,能產生正選-三角等基本波形已經調幅、調頻、TTL等的信號發(fā)生器需求大。第二章信號發(fā)生器的方案設計2.1系統(tǒng)實現(xiàn)方案分析與比較在這個系統(tǒng)中,較為困難的部分是由FPGA實現(xiàn)頻率合成器的功能及移相功能的實現(xiàn)。因為要求產生兩路兩路信號,頻率和相位可調,且都要以數(shù)字的形式進行控制和處理,所以在設計中將分別對部分電路提出幾種實現(xiàn)方案并進行分析和論證。2.1.1頻率合成器方案頻率合成是指對一個標準信號頻率經過一系列算術運算,產生具有相同精度和穩(wěn)定度的大量離散頻率的技術[13]。頻率合成有多種實現(xiàn)方法,其中直接數(shù)字頻率合成技術與傳統(tǒng)頻率合成技術相比具有難以比擬的優(yōu)點,如頻率切換速度快、分辨率高、頻率和相位易于控制等。因此得到越來越廣泛的應用,成為當今現(xiàn)代電子系統(tǒng)及設備中頻率源設計的首選。實現(xiàn)DDS的三種技術方案:(1)采用高性能DDS單片電路的解決方案:隨著微電子技術的飛速發(fā)展,目前市場上性能優(yōu)良的DDS產品不斷推出,主要有Qualcomm、AD、Sciteg和Stanforc等公司單片電路(monolithic)。Qualcomm公司推出了DDS系列Q2220、Q2230、Q2334、Q2240、Q2368,其中Q2368的時鐘頻率為130MHZ,分辨率為0.03HZ,雜散控制為-76dBc,變頻時間為0.1us;美國AD公司也相繼推出了他們的DDS系列:AD9850、AD9851、可以實現(xiàn)線性調頻的AD9852、兩路正交輸出的AD9854以及以DDS為核心的QPSK調制器AD9853、數(shù)字上變頻器AD9856和AD9857。AD公司的DDS系列產品以其較高的性能價格比,目前取得了極為廣泛的應用。下面僅對比較常用的AD9850芯片作一個簡單介紹。AD9850是AD公司采用先進的DDS技術,1996年推出的高集成度DDS頻率合成器,它內部包括可編程DDS系統(tǒng)、高性能DAC及高速比較器,能實現(xiàn)全數(shù)字編程控制的頻率合成器和時鐘發(fā)生器。接上精密時鐘源,AD9850可產生一個頻譜純凈、頻率和相位都可編程控制的模擬正弦波輸出。此正弦波可直接用作頻率信號源或轉換成方波用作時鐘輸出。AD9850接口控制簡單,可以用8位并行口或串行口直接輸入頻率、相位等控制數(shù)據。32位頻率控制字,在125MHZ時鐘下,輸出頻率分辨率達0.029HZ。先進的CMOS工藝使AD9850不僅性能指標一流,而且功耗少,在3.3V供電時,功耗僅為155mW。擴展工業(yè)級溫度范圍為-40~+85攝氏度,其封裝是28引腳的SSOP表面封裝。AD9850采用32位相位累加器,截斷成14位,輸入正弦查詢表,查詢表輸出截斷成10位,輸入到DAC。DAC輸出兩個互補的模擬電流,接到濾波器上。調節(jié)DAC滿量程輸出電流,需外接一個電阻Rset,其調節(jié)關系是Iset=32(1.248V/Rset),滿量程電流為10~20mA[14]。(2)采用低頻正弦波DDS單片電路的解決方案:MicroLinear公司的電源管理事業(yè)部推出低頻正弦波DDS單片電路ML2035以其價格低廉、使用簡單得到廣泛應用。ML2035特性:(1)輸出頻率為0~25KHZ,在時鐘輸入為12.352MHZ時頻率分辨率可達到1.5HZ(-0.75~+0.75HZ),輸出正弦波信號的峰-峰值為Vcc;(2)高度集成化,無需或僅需極少的外接元件支持,自帶3~12MHZ晶體振蕩電路;(3)兼容的3線SPI串行輸入口,帶雙緩沖,能方便地配合單片機使用;(4)增益誤差和總諧波失真很低。ML2035為DIP-8封裝,各引腳功能如下:(1)Vss:-5V電源;(2)SCK:串行時鐘輸入,在上升沿將串行數(shù)據鎖入16位移位寄存器;(3)SID:串行數(shù)據輸入,該串行數(shù)據為頻率控制字,決定6腳輸出的頻率;(4)LATI:串行數(shù)據鎖存,在下降沿將頻率控制字鎖入16位數(shù)據鎖存器;(5)VCC:+5V電源;(6)VOUT:模擬信號輸出;(7)GND:公共地,輸入、輸出均以此點作為參考點;(8)CLKIN:時鐘輸入,可外接時鐘或石英晶體。ML2035生成的頻率較低(0~25KHZ),一般應用于一些需產生的頻率為工頻和音頻的場合。如用2片ML2035產生多頻互控信號,并與AMS3104(多頻接收芯片)或ML2031/2032(音頻檢波器)配合,制作通信系統(tǒng)中的收發(fā)電路等??删幊陶也òl(fā)生器芯片ML2035設計巧妙,具有可編程、使用方便、價格低廉等優(yōu)點,應用范圍廣泛,適合需要低成本、高可靠性的正弦信號的場合。(3)自行設計的基于FPGA芯片的解決方案:DDS技術的實現(xiàn)依賴于高速、高性能的數(shù)字器件??删幊踢壿嬈骷云渌俣雀?、規(guī)模大、可編程,以及有強大EDA軟件支持等特性,十分適合實現(xiàn)DDS技術。Altera是著名的PLD生產廠商,多年來一直占據著行業(yè)領先的地位。Altera的PLD具有高性能、高集成度和高性價比的優(yōu)點,此外它還提供了功能全面的開發(fā)工具和豐富的IP核、宏功能庫等,因此Altera的產品獲得了廣泛的應用。Altera的產品有多個系列,按照推出的先后順序依次為Classic系列、MAX(MultipleArrayMatrix)系列、FLEX(FlexibleLogicElementMatrix)系列、APEX(AdvancedLogicElementMatrix)系列、ACEX系列、Stratix系列以及Cyclone等[15]。雖然有的專用DDS芯片的功能也比較多,但控制方式卻是固定的,因此不一定是我們所需要的。而利用FPGA則可以根據需要方便地實現(xiàn)各種比較復雜的調頻、調相和調幅功能,具有良好的實用性。就合成信號質量而言,專用DDS芯片由于采用特定的集成工藝,內部數(shù)字信號抖動很小,可以輸出高質量的模擬信號;利用FPGA也能輸出較高質量的信號,雖然達不到專用DDS芯片的水平,但信號精度誤差在允許范圍之內。2.1.2移相方案要實現(xiàn)兩路信號具有確定的相位差,采用數(shù)字移相技術,這是目前移相技術的潮流。數(shù)字移相技術的核心是先將模擬信號數(shù)字化,移相后再還原成模擬信號。數(shù)字移相主要有兩種形式:一種是先將正弦波信號數(shù)字化,并形成一張數(shù)據表存入ROM芯片中,此后可通過兩片D/A轉換芯片在單片機的控制下連續(xù)地循環(huán)輸出該數(shù)據表,就可獲得兩路正弦波信號,當兩片D/A轉換芯片所獲得的數(shù)據序列不同時,則轉換所得到的兩路正弦波信號就存在著相位差。相位差的值與數(shù)據表中數(shù)據的總個數(shù)及數(shù)據地址的偏移量有關。這種處理方式的實質是將數(shù)據地址的偏移量映射為信號間的相位值。另一種是先將參考信號整形為方波信號,并以此信號為基準,延時產生另一個同頻的方波信號,再通過波形變換電路將方波信號還原成正弦波信號。以延時的長短來決定兩信號間的相位值。這種處理方式的實質是將延時的時間映射為信號間的相位值。綜合各方面考慮本設計采用前一種方式,具體調整方法如下:可預置計數(shù)器的初值不同,從ROM中讀出周期信號函數(shù)采樣信號時的起始地址就不同,對應的信號相位也就不同。故只要在初始時刻,通過對計數(shù)器預置不同的初值即可形成兩路信號間不同的相位差,從而達到調節(jié)信號間相位的目的。2.1.3存儲器方案(1)波形表存儲器因為本設計是采用FPGA實現(xiàn)DDS的功能,所以使用FPGA作為數(shù)據轉換的橋梁,將波形數(shù)據存儲到其內部的RAM中,并由DDS系統(tǒng)產生波形輸出。需存儲在RAM中的波形數(shù)據是由單片機采集外部數(shù)據,對ROM中存儲的標準波形進行各種相應的運算而得到。波形表存儲器ROM有三種方法實現(xiàn)。方法一:外接ROM用單片機來完成??刹捎貌⑿袃善?2K的EEPROM存儲器AT28C256,共16位位寬,可以實現(xiàn)12位波形表存儲,150ns讀取速度完全滿足20KHZ的工作頻率。實現(xiàn)方案:將歸一化的正弦波存儲在32KEEPROM中,波形存儲64個點。然后由單片機根據鍵盤輸入的不同要求,對各點數(shù)據乘相應系數(shù)并疊加,再將所得到的新數(shù)據存儲在RAM中,此時便得到了所需要的波形數(shù)據表。方法二:由邏輯方式在FPGA中實現(xiàn)。方法三:利用Altera公司的含于EAB器件中的兆功能模塊LPM_ROM,通過VHDL語言編程來實現(xiàn)。第一種方法容量最大,但速度最慢,且編程比較麻煩;第二種方法速度最快,但容量非常小;第三種方法兼顧了兩者的優(yōu)點,克服了其缺點。在選用FPGA芯片時,本設計選用的是Altera公司的FLEX10K系列芯片EPF10K10LC84_4,有LPM_ROM模塊,因此ROM選用第三種方法。(2)外存儲器由于本設計選用的單片機為MSC-51系列的8051,它相對于高速的FPGA來說速度太慢,因此對單片機擴展外部數(shù)據存儲器和波形存儲器。半導體存儲器可分為三類:只讀存儲器(ROM、PROM、EPROM),隨機存儲器(SRAM、DRAM),不揮發(fā)性讀寫存儲器(EEPROM、NOVRAM)。本設計要實現(xiàn)編輯功能,故必須選擇隨機存儲器或不揮發(fā)性讀寫存儲器。方案一:采用SRAM(6264:8KRAM)和EEPROM(2817:2KROM),通過總線隔離的辦法實現(xiàn),既能通過CPU改變存儲器數(shù)據,又能通過相位累加實現(xiàn)讀取波形存儲器數(shù)據的功能。方案二:采用特殊存儲器雙口RAM。雙口RAM有左右兩套相同的I/O口,即兩套數(shù)據總線,分別有兩套地址、控制總線,并有一套競爭仲裁電路。它可通過左右兩邊的任一組I/O進行異步的存儲器讀寫操作,避免了系統(tǒng)總線隔離[17]。對比上述兩種方案,方案一的硬件電路雖較復雜,但設計簡單,成本低,容量大,故采用此方案。2.1.4存儲器尋址方案方案一:采用移位寄存器74164對BCD乘法器14527進行設置。BCD乘法器14527接成加法級聯(lián)方式,輸入頻率由晶振提供,級聯(lián)輸出頻率為:(2.1)式中K1、K2、K3、K4、K5為BCD乘法器置數(shù)。根據置數(shù)不同,可以輸出不同的頻率的計數(shù)脈沖,再經計數(shù)器計數(shù)對存儲器尋址,頻率控制尋址頻率,從而控制輸出波形的頻率。此方案硬件接線復雜,頻帶不易拓寬。方案二:運用FPGA構成的相位累加器對EEPROM進行尋址。由單片機控制步長即可控制尋址頻率,而相移也可方便地由單片機控制相位累加器的初始值來設定。比較兩種方案,方案二設計簡單,易于單片機控制,故選方案二。2.2模塊結構劃分本次設計所研究的就是對所需要的某種波形輸出對應的數(shù)字信號,在通過D/A轉換器和單片機部分的轉換輸出一組連續(xù)變化的0~5V的電壓脈沖值。在通過顯示部分顯示其頻率,和波形。在設計時分塊來做,按照波形設定,D/A轉換,51單片機連接,鍵盤控制和顯示五個模塊的設計。最后通過聯(lián)調仿真,做出電路板成品。從而簡化人機交互的問題,具體設計模塊如圖模塊介紹:1.波形設定:對任意波形的手動設定2.D/A轉換:主要選用DAC0832來把數(shù)字信號轉換為模擬信號,在送入單片機進行處理。3.單片機部分:最小系統(tǒng)4.鍵盤:用按鍵來控制輸出波形的種類和數(shù)值的輸入5.顯示部分:采用LCD顯示波形的頻率系統(tǒng)要求是便攜式低功耗的,所以在硬件電路建立前首先粗略計算一下整個系統(tǒng)所需的功耗??紤]單片機部分(有最小系統(tǒng),D/A轉換,鍵盤接口,擴展部分顯示等部分)的功耗大小,機器體積小,價格便宜,耗電少,頻率適中,便于攜帶。2.2.1DDS的基本原理直接數(shù)字頻率合成器(DDFS)的基本原理:DDS是利用采樣定理,根據相位間隔對正弦信號進行取樣、量化、編碼,然后儲存在EPROM中構成一個正弦查詢表,通過查表法產生波形[10]。它是由參考時鐘、相位累加器、正弦查詢表和D/A轉換器組成,如圖2.2所示。圖2.2直接數(shù)字頻率合成器原理框圖相位累加器由N位加法器與N位累加寄存器級聯(lián)構成,其原理框圖如圖2.3所示。每來一個時鐘脈沖Fc,N位加法器將頻率控制數(shù)據K與累加寄存器輸出的累加相位數(shù)據相加,把相加后的結果Y送至累加寄存器的輸入端。累加寄存器一方面將在上一時鐘周期作用后所產生的新的相位數(shù)據反饋到加法器的輸入端,以使加法器在下一時鐘的作用下繼續(xù)與頻率控制數(shù)據K相加;另一方面以相加后的結果形成正弦查詢表的地址,取出表中與該相位對應的單元中的幅度量化正弦函數(shù)值,作為取樣地址值送入幅度/相位轉換電路(即圖2.1中的波形存儲器)。這樣就可把存儲在波形存儲器內的波形抽樣值(二進制編碼)經查找表查出,完成相位到幅值轉換。波形存儲器的輸出送到D/A轉換器,D/A轉換器將數(shù)字量形式的波形幅值轉換成所要求合成頻率的模擬量形式信號。圖2.3相位累加器原理框圖由此可以看出,相位累加器在每一個時鐘脈沖輸入時,把頻率控制字累加一次,相位累加器輸出的數(shù)據就是合成信號的相位。當相位累加器加滿量時就會產生一次溢出,溢出頻率就是DDS輸出的信號頻率。相位累加器的最大計數(shù)長度與正弦查詢表中所存儲的相位分隔點數(shù)相同,在取樣頻率(由參考時鐘頻率決定)不變的情況下,由于相位累加器的相位增量不同,將導致一周期內的取樣點數(shù)不同,輸出信號的頻率也相應變化。如果設定累加器的初始相位,則可以對輸出信號進行相位控制。由采樣原理可知,如果使用兩個相同的頻率合成器,并使其參考時鐘相同,同時設定相同的頻率控制字、不同的初始相位,那么在原理上就可以實現(xiàn)輸出兩路具有一定相位差的同頻信號。2.2.2FPGA實現(xiàn)的直接數(shù)字頻率合成器本設計基于DDS的基本原理,利用Altera公司的FPGA芯片F(xiàn)LEX10系列器件設法將波形采樣點的值依次通過數(shù)模轉換器(MDAC)轉換成模擬量輸出,可達到預期的目的,具有較高的性價比。其基本環(huán)節(jié)由計數(shù)器(Counter)、只讀存儲器(EPROM)、數(shù)模轉換器(MDAC)和濾波器等組成(同DDS原理)[11]。具體方案如下:累加器由加法器和D觸發(fā)器級聯(lián)組成。在時鐘脈沖fc的控制下,對輸入頻率控制字K進行累加,累加滿量時產生溢出。相位累加器的輸出對應于該合成周期信號的相位,并且這個相位是周期性的,在0~2范圍內起變化。相位累加器位數(shù)為N,最大輸出為2-1,對應于2的相位,累加一次就輸出一個相應的相位碼,通過查表得到正弦信號的幅度,然后經D/A轉換及低通濾波器濾除不需要的取樣分量,以便輸出頻譜純凈的正弦波信號。整個DDS電路的電路結構如圖2.4所示。圖2.4FPGA實現(xiàn)的DDS原理框圖2.2.3移相原理所謂移相是指兩路同頻的信號,以其中的一路為參考,另一路相對于該參考作超前或滯后的移動,即稱為相位的移動。兩路信號的相位不同,便存在相位差,簡稱相差。若我們將一個信號周期看作是360°,則相差的范圍就在0°~360°之間。例如在圖2.5中,以A信號為參考,B信號相對于A信號作滯后移相φ°,則稱A超前Bφ°,或稱B滯后Aφ°。圖2.5移相示意圖若輸出信號A和B的相位差可調,須保證兩路信號同步,故應滿足以下條件:(1)輸入到兩個頻率合成器芯片的參考時鐘之間的相位偏移要足夠小。這個相移會導致輸出信號之間產生與之成比例的相移。因此在布線時必須精心設計,使從FPGA輸出參考時鐘的引腳到兩個頻率合成器芯片的參考時鐘輸入引腳的引線距離相等,以保證系統(tǒng)時鐘同步。另外,參考時鐘上升/下降沿的抖動應盡可能小,并且時間應盡可能短,因為不同頻率合成器芯片輸入電路的觸發(fā)電壓不同,因此參考時鐘的上升/下降沿時間太長會增加輸出信號的相位誤差。(2)頻率控制字送到頻率合成器的數(shù)據緩沖區(qū)后,還必須通過一個更新時鐘才能將數(shù)據緩沖區(qū)中的數(shù)據送到相位累加器,成為有效數(shù)據后進行輸出。頻率合成器有兩種更新時鐘產生方式,一種由FPGA內部自動產生,另一種由外部提供。要使兩路輸出信號同步,必須使用外部I/O更新時鐘,同時必須使參考時鐘信號(REFCLK)與外部I/O更新時鐘(UPDATECLK)上升沿之間滿足圖2.6所示的時序關系。圖2.6參考時鐘與更新時鐘之間的時序關系圖更新時鐘的上升沿必須在參考時鐘的下降沿0.3ns之后與下一個下降沿1.5ns之前之間(圖2.6中深色區(qū)間為有效區(qū)域)產生,這樣可以使兩個頻率合成器工作在相同的系統(tǒng)時鐘(參考時鐘乘以一定倍數(shù))下,且它們的系統(tǒng)時鐘脈沖數(shù)相差不能超過1個脈沖。(3)在第一次傳送數(shù)據之前必須先使頻率合成器復位,以保證其輸出的相位是可知的。因為DDS芯片的相位輸出是連續(xù)的,所示復位信號可使兩個頻率合成器的相位累加器復位到COS(0)狀態(tài)。新的數(shù)據送到相位累加器時,它們之間的相位關系可以得到保持,也可以通過相位控制字來調節(jié)兩片頻率合成器之間的相位差。第三章電路設計3.1基于FPGA設計DDS電路的設計FPGA設計的DDS系統(tǒng)主要由相位累加器及相位/幅度轉換電路組成。根據設計的具體要求,還設計了一個系統(tǒng)控制電路,這一電路可靈活設計,以突出FPGA的優(yōu)點所在。另外采用VHDL硬件描述語言實現(xiàn)整個DDS電路,不僅利于設計文檔的管理,而且方便設計的修改和擴充,還可以在不同F(xiàn)PGA器件之間實現(xiàn)移植。

3.1.1FPGA器件的選擇FPGA是現(xiàn)場可編程門陣列(FieldProgrammableGateArray)的英語縮寫,它是在陣列的各個節(jié)點放上由門、觸發(fā)器等做成的邏輯單元,并在各個單元之間預先制作了許多連線。在FPGA中常用的編程工藝有反熔絲和SRAM兩類。綜合考慮設計、仿真和調試的全過程,在此主要考慮選用Altera公司的FLEX10K系列的FPGA芯片。FLEX10K是Altera公司1995年推出的產品系列,它集合了可編程器件的靈活性,采用0.5μmCMOSSRAM工藝制造,器件規(guī)模從10000門到250000門,系統(tǒng)時鐘可以達到204MHZ,兼容66MHZ,64bitPIC,采用獨特的嵌入式陣列和邏輯陣列的邏輯實現(xiàn)結構,同一系列相同封裝的芯片在管腳上滿足兼容。同時,可為用戶提供多達3K8位的片內RAM,其雙口RAM為獨立的讀寫操作提供了獨立的讀、寫端口,且每個I/O口都有寄存器;PLL時鐘管理和時鐘增強電路提高了系統(tǒng)的性能,并且可以提供時鐘倍頻;專用進位鏈路,可實現(xiàn)快速加法器和計數(shù)器功能;專用級聯(lián)鏈路,支持系統(tǒng)集成;支持多時鐘系統(tǒng)的低時滯要求;具有JTAG邊界掃描測試內速電路;Altera的I/O多重電壓3.3V或3.0V工作模式和FineLineBGA封裝極大的提高了FLEX10K系列的靈活性和適應性。并由Altera公司的MAXplusⅡ開發(fā)系列提供軟件支持。本設計中采用Altera公司的FLEX10K系列芯片EPF10K10LC84-4,作為實現(xiàn)DDS的FPGA芯片。EPF10K10LC84-4的主要參數(shù)如表3.1:表3.1EPF10K10LC84-4的主要參數(shù)邏輯門數(shù)I/O門數(shù)電源V速度等級/ns邏輯單元RAM/bit參數(shù)10000845.0-45766144其5V外部電源和TTL、CMOS電平兼,豐富的寄存器資源和I/O口,40MHZ的工作頻率滿足基準時鐘10MHZ的要求,其優(yōu)良的特性完全可以實現(xiàn)DDS芯片的功能。3.1.2相位累加器電路設計在用FPGA設計DDS電路的時候,相位累加器是決定DDS電路性能的一個關鍵部分。小的累加器可以利用FLEX器件的進位鏈得到快速、高效的電路結構。然而由于進位鏈必須位于臨近的LAB(邏輯陣列塊)和LE(邏輯單元)內,因此長的進位鏈勢必會減少其它邏輯使用的布線資源,同時過長的進位鏈也會制約整個系統(tǒng)速度的提高。另一種提高速度的辦法是采用流水線技術,即把在一個時鐘內要完成的邏輯操作分成幾步較小的操作,并插入幾個時鐘周期來提高系統(tǒng)的數(shù)據吞吐率。但是流水線技術比較適合開環(huán)結構的電路,要用在累加器這樣的閉環(huán)反饋的電路中必須謹慎考慮,以保證設計的準確無誤。綜合考慮后,相位累加器采用流水線技術來實現(xiàn),這樣能保證較高的資源利用率,又能提高系統(tǒng)的性能和速度。設計中整個系統(tǒng)只加入了一級流水線來提高速度。為了進一步提高速度,在設計相位累加器模塊和加法器模塊時并沒有采用FPGA單元庫中16~32位加法器,盡管它們可以很容易地實現(xiàn)高達32位的相位累加器,但當工作頻率較高時,它們較大的延時不能滿足速度要求,故不可取。因此,具體實現(xiàn)時分別采用了4個和8個4位累加器,以流水線的方式實現(xiàn)16位累加器和32位加法器。采用流水線技術可以大大提高系統(tǒng)的工作速度。3.1.3相位/幅度轉換電路相位/幅度轉換電路是DDS電路中的另一個關鍵部分。該電路通常采用ROM結構,相位累加器的輸出是一種數(shù)字式鋸齒波,通過取它的若干位作為ROM的地址輸入,而后通過查表和運算,ROM就能輸出所需波形的量化數(shù)據。

在FPGA(針對Altera公司的器件)中,ROM一般由EAB實現(xiàn),且ROM表的尺寸隨地址位數(shù)或數(shù)據位數(shù)的增加成指數(shù)遞增關系,因此在滿足信號性能的前提下,如何有效利用FPGA的有限資源,成為相位/幅度轉換電路中最關鍵的一點。在設計時可充分利用信號周期內的對稱性和算術關系來減少EAB的開銷。相位/幅度轉換電路中的主要問題在于ROM的大小。由于本設計只需要輸出正弦波,故考慮了以下的優(yōu)化方式:正弦波信號對于x=π直線成奇對稱,基于此可以將ROM表減至原來的1/2,再利用左半周期內,波形對于點(π/2,0)成偶對稱,進一步將ROM表減至最初的1/4,因此通過一個正弦碼表的前1/4周期就可以變換得到的正弦的整個周期碼表,這樣就節(jié)省了將近3/4的資源[19]。3.1.4波形表生成由于DDS中波形表存儲器是采用FPGA芯片內部的LPM_ROM實現(xiàn),故波形表可以VHDL編程的.mif文件形式存入LPM_ROM中,具體實現(xiàn)見附錄2。3.1.5D/A轉換電路設計DAC0832是CMOS工藝制造的8位D/A轉換器,屬于8位電流輸出型D/A轉換器,轉換時間為1us,片內帶輸入數(shù)字鎖存器。DAC0832與單片機接成數(shù)據直接寫入方式,當單片機把一個數(shù)據寫入DAC寄存器時,DAC0832的輸出模擬電壓信號隨之對應變化。利用D/A轉換器可以產生各種波形,如方波、三角波、正弦波、鋸齒波等以及它們組合產生的復合波形和不規(guī)則波形。1.DAC0832主要性能:◆輸入的數(shù)字量為8位;◆采用CMOS工藝,所有引腳的邏輯電平與TTL兼容;◆數(shù)據輸入可以采用雙緩沖、單緩沖和直通方式;◆轉換時間:1us;◆精度:1LSB;◆分辨率:8位;◆單一電源:5—15V,功耗20mw;◆參考電壓:-10—+10V;DAC0832內部結構資料:芯片內有兩級輸入寄存器,使DAC0832具備雙緩沖、單緩沖和直通三種輸入方式,以便適于各種電路的需要(如要求多路D/A異步輸入、同步轉換等)。D/A轉換結果采用電流形式輸出。要是需要相應的模擬信號,可通過一個高輸入阻抗的線性運算放大器實現(xiàn)這個供功能。運放的反饋電阻可通過RFB端引用片內固有電阻,還可以外接。該片邏輯輸入滿足TTL電壓電平范圍,可直接與TTL電路或微機電路相接,下面是芯片電路原理圖3-20圖3-9DAC0832電路原理圖如圖3-9所示,待轉換的8位數(shù)字量由芯片的8位數(shù)據輸入線D0~D7輸入,經DAC0832轉換后,通過2個電流輸出端IOUT1和IOUT2輸出,IOUT1是邏輯電平為"1"的各位輸出電流之和,IOUT2是邏輯電平為"0"的各位輸出電流之和。另外,ILE、、、和是控制轉換的控制信號。

DAC0832由8位輸入寄存器、8位DAC寄存器和8位D/A轉換電路組成。輸入寄存器和DAC寄存器作為雙緩沖,因為在CPU數(shù)據線直接接到DAC0832的輸入端時,數(shù)據在輸入端保持的時間僅僅是在CPU執(zhí)行輸出指令的瞬間內,輸入寄存器可用于保存此瞬間出現(xiàn)的數(shù)據。有時,微機控制系統(tǒng)要求同時輸出多個模擬量參數(shù),此時對應于每一種參數(shù)需要一片DAC0832,每片DAC0832的轉換時間相同,就可采用DAC寄存器對CPU分時輸入到輸入寄存器的各參數(shù)在同一時刻開始鎖存,進而同時產生各模擬信號。

控制信號ILE、、用來控制輸入寄存器。當ILE為高電平,為低電平,為負脈沖時,在LE產生正脈沖;其中LE為高電平時,輸入寄存器的狀態(tài)隨數(shù)據輸入線狀態(tài)變化,LE的負跳變將輸入數(shù)據線上的信息存入輸入寄存器。

控制信號和用來控制8位A/D轉換器。當為低電平,輸入負脈沖時,則在LE產生正脈沖;其中LE為高電平時,DAC寄存器的輸入與輸出的狀態(tài)一致,LE負跳變,輸入寄存器內容存入DAC寄存器。DAC0832的數(shù)據輸出方式在微機應用系統(tǒng)中,通常使用的是電壓信號,而DAC0832輸出的是電流信號,這就需要由運算放大器組成的電路實現(xiàn)轉換。其中有輸出電壓各自極性固定的單位性輸出和在隨動系統(tǒng)中輸出電壓有正負極性的雙極性輸出兩種輸出方式。3.DAC0832同CPU的連接微處理器與DAC0832之間可以不加鎖存器,而是利用DAC0832內部鎖存器,將CPU通過數(shù)據總線直接向DAC0832輸出的停留時間很短的數(shù)據保存,直至轉換結束。

DAC0832同CPU的接口如圖3-10所示.DAC0832作為微處理器的一個端口,用地址92H的選通作為和的控制信號,微處理器的寫信號直接來控制和。圖3-10DAC0832和CPU連接電路本系統(tǒng)D/A轉換電路圖3-11圖3-11D/A轉換電路圖3.1.6DAC0832芯片原理管腳功能介紹(如圖3-12所示)圖3-12DAC0832管腳圖(1)DI7~DI0:8位的數(shù)據輸入端,DI7為最高位。(2)IOUT1:模擬電流輸出端1,當DAC寄存器中數(shù)據全為1時,輸出電流最大,當DAC寄存器中數(shù)據全為0時,輸出電流為0。(3)IOUT2:模擬電流輸出端2,IOUT2與IOUT1的和為一個常數(shù),即IOUT1+IOUT2=常數(shù)。(4)RFB:反饋電阻引出端,DAC0832內部已經有反饋電阻,所以RFB端可以直接接到外部運算放大器的輸出端,這樣相當于將一個反饋電阻接在運算放大器的輸出端和輸入端之間。(5)VREF:參考電壓輸入端,此端可接一個正電壓,也可接一個負電壓,它決定0至255的數(shù)字量轉化出來的模擬量電壓值的幅度,VREF范圍為(+10~-10)V。VREF端與D/A內部T形電阻網絡相連。(6)Vcc:芯片供電電壓,范圍為(+5~15)V。(7)AGND:模擬量地,即模擬電路接地端。(8)DGND:數(shù)字量地。當WR2和XFER同時有效時,8位DAC寄存器端為高電平“1”,此時DAC寄存器的輸出端Q跟隨輸入端D也就是輸入寄存器Q端的電平變化;反之,當端為低電平“0”時,第一級8位輸入寄存器Q端的狀態(tài)則鎖存到第二級8位DAC寄存器中,以便第三級8位DAC轉換器進行D/A轉換。一般情況下為了簡化接口電路,可以把和直接接地,使第二級8位DAC寄存器的輸入端到輸出端直通,只有第一級8位輸入寄存器置成可選通、可鎖存的單緩沖輸入方式。特殊情況下可采用雙緩沖輸入方式,即把兩個寄存器都分別接成受控方式制作低頻信號發(fā)生器有許多方案:主要有單緩沖方式,雙緩沖方式和直通方式。單緩沖方式具有適用于只有一路模擬信號輸出或幾路模擬信號非同步輸出的情形的優(yōu)點,但是電路線路連接比較簡單。而雙緩沖方式適用于在需要同時輸出幾路模擬信號的場合,每一路模擬量輸出需一片DAC0832芯片,構成多個DAC0832同步輸出電路,程序簡單化,但是電路線路連接比較復雜。根據以上分析,我們的課題選擇了單緩沖方式使用方便,程序簡單,易操作。DAC0832主要是用于波形的數(shù)據的傳送,是本題目電路中的主要芯片一、D/A轉換器的性能指標:1.分辨率:輸出模擬電壓應能區(qū)分0~2n-1共2n個輸入數(shù)字量。表示方法:(1)用輸入二進制數(shù)的位數(shù)表示;如8位。(2)用輸出模擬電壓的最小值與最大值的比值表示。指最小輸出電壓和最大輸出電壓之比。DAC0808的分辨率為1/256。2.精度:DAC實際輸出電壓與理想的輸出電壓的偏差。DAC0808的最大滿刻度偏差為+1LSB。3.線性度:DAC實際傳輸特性曲線與理想的傳輸特性曲線的偏差。DAC0808的最大誤差為+0.19%。4.溫度靈敏度:在輸入不變的情況下,輸出模擬電壓隨溫度變化產生的變化量。一般用滿刻度輸出條件下溫度每升高1℃5.轉換速度:用完成一次轉換所需的時間——建立時間Tset來衡量。建立時間:輸入信號從開始變化到輸出電壓進入與穩(wěn)態(tài)值相差1/2LSB范圍以內的時間。輸入信號由全0變?yōu)槿?所需時間最長。當外接運放時,轉換時間還應加上運放的上升(下降)時間。(3—2)式中為轉換時間,為建立時間,輸出最大電壓值,為運放輸出轉換速率。二、D/A轉換器的分類D/A轉換器的品種繁多、性能各異。按輸入數(shù)字量的位數(shù)分:8位、10位、12位和16位等;按輸入的數(shù)碼分:二進制方式和BCD碼方式;按傳送數(shù)字量的方式分:并行方式和串行方式;按輸出形式分:電流輸出型和電壓輸出型,電壓輸出型又有單極性和雙極性;按與單片機的接口分:帶輸入鎖存的和不帶輸入鎖存的。三、雙極性輸出實現(xiàn)圖3-13D/A轉換器雙極性輸出電路圖3-13中,運算放大器A2的作用是把運算放大器A1的單向輸出電壓轉換成雙向輸出電壓。其原理是將A2的輸入端Σ通過電阻R1與參考電壓VREF相連,VREF經R1向A2提供一個偏流I1,其電流方向與I2相反,因此運算放大器A2的輸入電流為I1、I2之代數(shù)和。則D/A轉換器的總輸出電壓為:(11)(12)為DAC0832提供的參考電壓,輸入的波形數(shù)據。由上兩式可得:(13)取,當時,;時,;時,。由上述分析可看出,取不同數(shù)據時(0~255),可得對稱的雙極性波形輸出。再取,則式(11)可表示為:由上式可知,輸出信號的幅度受的改變而改變3.1.7系統(tǒng)控制電路設計系統(tǒng)控制電路主要是根據是否需要相位調制及頻率調制,系統(tǒng)時鐘是否需要分頻得到所需的基準時鐘,頻率碼的輸入方式是串行、并行還是微機接口方式,如何控制輸出等具體要求而設計的,其功能實現(xiàn)見圖2.4。3.2單片機與FPGA的接口設計在功能上,單片機與FPGA有很強的互補性。單片機具有性價比高、功能靈活、易于人機對話、良好的數(shù)據處理能力等特點;FPGA則具有高速、高可靠性以及開發(fā)便捷、規(guī)范等優(yōu)點。用這兩類器件相結合的電路結構在許多高性能儀器儀表和電子產品中仍將被廣泛應用。MCS51單片機(8051)系統(tǒng)是整個硬件系統(tǒng)的核心,其引腳如圖3.1所示,它既是協(xié)調整機工作的控制器,又是數(shù)據處理器,其內部資源分配和性能如下:8位CPU、尋址能力達2×64K;4KB的ROM和128字節(jié)RAM;4個8位I/O接口電路;一個串行全雙工異步接口;5個中斷源和兩個中斷優(yōu)先級。圖3.18051的引腳圖單片機的功能主要是傳送頻率控制字K1和相位控制字K2給FPGA處理;生成波形表存儲于EEPROM中;控制鍵盤的寫入和LED的顯示;控制DAC0832進行幅值轉換。在每次加電前都要通過單片機初始化,將寫好的程序加載在信號產生系統(tǒng)上,然后把從鍵盤上輸入的數(shù)據送到中央處理芯片上,信號通過低通濾波器輸出的同時,LED數(shù)碼管顯示信號的頻率和相位差。單片機與FPGA的接口方式一般有兩種,即總線方式與獨立方式。因為單片機以總線方式與FPGA進行數(shù)據與控制信息通信有許多優(yōu)點,如速度快;節(jié)省PLD芯片的I/O口線;編程簡捷,控制可靠;另外在FPGA中通過邏輯切換,單片機易于與SRAM或ROM接口。故單片機與FPGA的接口方式選用總線方式。FPGA與單片機的總線接口如圖3.2所示,其外部接口和VHDL設計見附錄2。圖3.2FPGA與單片機的總線接口MCS-51單片機的總線接口方式工作時序如圖3.3所示,它以總線方式與FPGA進行數(shù)據與控制信息通信,其通信工作時序是純硬件行為,只需一條單字節(jié)指令就能完成所需的讀寫時序,如:MOVX@DPTR,A;MOVXA,@DPTR根據時序圖3.3來設計單片機與FPGA以總線方式通信的邏輯結構。其時序電平變化速度與單片機工作時鐘頻率有關。圖3.3MCS-51單片機總線接口方式工作時序圖中,ALE為地址鎖存使能信號,利用其下降沿將低8位地址鎖存于FPGA中的地址鎖存器(LATCH_ADDRES)中;當ALE將低8位地址通過P0鎖存的同時,高8位地址已穩(wěn)定建立于P2口,單片機利用讀指令允許信號PSEN的低電平從外部ROM中將指令從P0口讀入,由時序圖可見,其指令讀入的時機是在PSEN的上升沿之前。然后由P2口和P0口分別輸出高8位和低8位的數(shù)據地址,并由ALE的下降沿P0口的低8位地址鎖存于地址鎖存器。若需從FPGA中讀出數(shù)據,單片機則通過指令“MOVXA,@DPTR”使RD信號為低電平,由P0口將圖3.1中鎖存器LATCH_IN1中的數(shù)據讀入累加器A;若要將累加器A的數(shù)據寫入FPGA,則需通過指令”MOVX@DPTR,A”和寫允許信號WR。這時,DPTR的高8位和低8位數(shù)據作為高、低8位地址分別向P2和P0口輸出,最后由WR的低電平結合譯碼,將累加器A的數(shù)據寫入圖中相關的鎖存器。3.3外圍電路設計在設計中除單片機和FPGA之外,還需要很多外圍電路來提供時鐘源和波形調整等,以下將簡要介紹各外圍電路的設計及參數(shù)選擇。3.3.1晶體振蕩電路設計中取64個點組成一個周期的波形,且頻率最小步進定為20HZ,這樣需要產生1280HZ的方波作為鎖相環(huán)電路的輸入。將32.768KHZ的晶振通過整形電路整形和分頻,即可得到頻率為1280HZ的方波f1,如圖3.4所示。圖3.4晶體振蕩電路3.3.2地址計數(shù)脈沖產生電路由于一個周期我們取的是64個樣點,最小步進20HZ,因此如果計數(shù)器的計數(shù)脈沖頻率為1280HZ,D/A轉換器就會輸出20HZ的波形。這樣若要得到頻率為F0(F0為20的倍數(shù))赫茲的波形,只要輸入頻率為64×F0(HZ)的計數(shù)脈沖即可。例如要得到20HZ的正弦波,計數(shù)脈沖頻率應為1280HZ;要得到頻率為20KHZ的正弦波,計數(shù)頻率應為1.28MHZ。電路設計如圖3.5所示,1280HZ的方波信號作為鎖相環(huán)頻率合成器4046的基準時鐘,并配以可編程計數(shù)器8254實現(xiàn)基準時鐘頻率的2~62500倍頻,這樣就得到了地址計數(shù)器脈沖f2。圖3.5地址計數(shù)脈沖產生電路3.3.3幅度控制電路波形的幅度控制利用帶寬1MHZ的DAC0832控制,利用DAC0832內部的分壓網絡,將經DDS產生的波形作為DAC0832的基準電壓,由單片機控制輸入的數(shù)字量,從而實現(xiàn)步進0.1V的幅度調整,幅值范圍0.3~5V。如圖3.6所示。圖3.6幅度控制電路3.3.4單片機外擴展存儲器電路采用外部存儲器6264(SRAM:8KRAM)和2817(EEPROM:2KROM),通過總線隔離的辦法實現(xiàn),電路如圖3.7所示。圖3.7外擴存儲器電路3.3.5濾波、緩沖輸出電路D/A輸出后,通過濾波電路、輸出緩沖電路,使信號平滑且具有負載能力。濾波采用二階巴特沃茲低通濾波器,其幅度函數(shù)是單調下降的,且n階巴特沃茲低通濾波器的前(2n-1)階導數(shù)在ω=0處為零,所以它又稱為最大平坦幅度濾波器[24]。由于本設計要求濾波的分量主要為由D/A產生的高頻分量,和要保留的頻率(小于20KHZ)相差很遠,所以濾波器在通帶內的平坦程度比其衰減陡度更為重要。另外,巴特沃茲低通濾波器也不像其它濾波器對元件值要求那么苛刻,因為在截止頻率附近,頻率響應鈍化可能是這些濾波器在要求銳截止的地方不合要求。設計中主要是頻率為≤20KHZ的正弦波。運放選用寬帶運放LF351,電路設計如圖3.8。正弦波的輸出頻率小于20.48KHZ,為保證20.48KHZ頻帶內輸出幅度平坦,又要盡可能抑制諧波和高頻噪聲,綜合考慮?。篟1=1KΩ,R2=1KΩ,C1=100pF,C=100pF。圖3.8濾波、緩沖電路3.3.6鍵盤和顯示控制電路采用通用鍵盤接口芯片8279,通過74LS373和74LS377與單片機的P0口相連,控制4×4陣列鍵盤和4個數(shù)碼管顯示的鍵盤顯示模塊,用掃描方式由8279得到鍵盤碼,由中斷服務程序把數(shù)據送給單片機,以實現(xiàn)系統(tǒng)控制和顯示功能。此方案不用單片機掃描,占用資源少,電路見附錄1。用四個LED進行顯示,這種方案的缺點是不能適時顯示,但也能滿足設計要求。本方案采用單片機控制,由4511驅動4個共陰極數(shù)碼管LED進行動態(tài)顯示相位和頻率。結束語通過幾周的畢業(yè)設計,我從中認識到了一個真正的自我。這幾周的時間里,我利用圖書館的豐富資源,查閱與其有關的書籍;利用網絡資源搜索一些相關的知識。在指導老師的大力支持下,在同學們的熱情幫助下,通過自我的不懈努力,順利的完成了畢業(yè)論文——基于DDS的信號發(fā)生器的設計。通過本次的設計,我學到了更為有趣的知識,自己的知識面也得到了進一步的擴展。通過本次的設計,我深深的感悟到了團隊合作的重要性。我們每一個人不可以孤立的存在于社會中。學會團結合作,是我們每一個人的必修課。在本次的畢業(yè)論文設計過程中,同指導老師共同商量設計思路;和同學們共同討論、解決問題……這都是團隊合作精神的體現(xiàn)。設計中我完成了各個模塊功能的設計。但是這只是成功路上的一小步,我們還可以在此基礎上附加一些其他的功能如多波形模塊設計等等。使之更加的精美、完善,實現(xiàn)多功能的控制,合理的利用有限的資源。由于本人的水平有限,在本次設計中難免有缺點和漏洞之處,懇求大家批評指導,提出您寶貴的意見和建議,以便本人在以后的學習和工作中加以改正。參考文獻[1]鄭鳳濤,陳金佳.基于CPLD的數(shù)控正弦波的信號源的設計.黎明職業(yè)大學學報,2003,[2]徐志軍,徐光輝.CPLD/FPGA的開發(fā)與應用.北京:電子工業(yè)出版社,2002[3]黃正謹,徐堅,章小麗等.CPLD系統(tǒng)設計技術入門與應用.北京:電子工業(yè)出版社,2002[4]韓素敏,鄭征.基于VHDL的正弦波發(fā)生器設計.陜西工學院學報,2003[5]陳新原,龍世瑜.DDS芯片AD9850的EEP接口設計.微型機與應用,2005[6]畢紅軍,張永瑞.利用單片機與CPLD實現(xiàn)直接數(shù)字頻率合成器(DDS).現(xiàn)代電子技術,2002[7]姜萍,王建新,吉訓生.FPGA實現(xiàn)的直接數(shù)字頻率合成器.電子工程師.2002[8]邵正途,高玉良.DDS/FPGA在信號產生系統(tǒng)中的應用.電子技術,2005[9]譚建軍,楊慶.EWB與電子技術基礎課程設計.北京:中央民族大學出版社,2002[10周正干,李和平,李然.超低頻移相信號發(fā)生器的設計.儀表技術,2000[11]周峻峰,陳濤.基于FPGA的直接數(shù)字頻率合成器的設計與實現(xiàn).國外電子元器件,2003[12]宋躍,周明輝,譚愛群.基于VHDL的虛擬相位差測量方法研究及其實現(xiàn).半導體技術,2002[13]陳輝,王迎旭.CPLD在頻率測控系統(tǒng)中的應用.半導體技術,2001[14]AD公司.ATechnicalTutorialOnDigitalSignalSynthesis,1999[15]IEEETran.ADirect_DigitalsynthesizerwithImprovedspectralperformance.oncommunication,1991[16]傅玉朋,李明浩,呂進華.DDS技術的FPGA設計與實現(xiàn).大連民族學院學報,2004[17]全國大學生電子設計競賽組委會編.第五屆全國大學生電子設計競賽獲獎作品選編(2001).北京:北京理工大學出版社,2003[18]文卓然.數(shù)字式移相信號發(fā)生器中的一個誤區(qū).電子世界,2004[19]H.T.NicholasIIIH.Samulei.AnanalysisoftheoutputspectrumofDirectDigitalFrequencySynthesizersinthepresenceofphaseaccumulatortruncation,IEEEProc.41stAFCS,1999[20]胡漢才.單片機原理及其接口技術.北京:清華大學出版社,2003[21]VankkaJ.Spurreductiontechniquesinsineout-putdirectdigitalsynthesis,IEEEProc.50thAFCS,2001[22]AlteraInc.DATABOOK.Alteracorporation,2001[23]鄒軼才,黃正東.用AD7008構成可程控正弦波信號發(fā)生器.經驗交流,2005[24]賈方亮,趙泳,郝立果,張錫鵑.高精度數(shù)字式移相信號發(fā)生器的研制.天津職業(yè)技術師范學院學報,2004[25]王皓,劉克剛,李小青.低頻相位測量系統(tǒng)的研究與實現(xiàn).電子技術,2004致謝附錄1附錄2FPGA與MCS_51系列單片機(8051)總線方式接口的VHDL電路設計:8051與FPGA總線方式接口邏輯外部引腳libraryieee;--MCS-51單片機與FPGA的通信讀寫電路useieee.std_logic_1164.all;entitymcs51isport(--與MCS-51接口的各端口定義p0:inoutstd_logic_vector(7downto0);--雙向地址/數(shù)據口p2:instd_logic_vector(7downto0);--高8位地址線rd,wr:instd_logic;--讀、寫允許ale:instd_logic;--地址鎖存ready:instd_logic;--待讀入數(shù)據準備就緒標志位ad_cs:outstd_logic;--A/D器件片選信號datain1:instd_logic_vector(7downto0);--單片機待讀回信號latch1:instd_logic;--讀回鎖存信號datout1:outstd_logic_vector(7downto0);--鎖存輸出數(shù)據1datout2:outstd_logic_vector(7downto0));--鎖存輸出數(shù)據2endmcs51;architecturebehaveofmcs51issignallatch_addres:std_logic_vector(7downto0);signallatch_out1:std_logic_vector(7downto0);signallatch_out2:std_logic_vector(7downto0);signallatch_in1:std_logic_vector(7downto0);signalwr_enable1:std_logic;signalwr_enable2:std_logic;beginprocess(ale)--低8位地址鎖存進程beginifale'eventandale='0'thenlatch_addres<=p0;--ale的下降沿將p0口的低8位地址鎖入鎖存器endif;endprocess;process(p2,latch_addres)--WR寫信號譯碼過程1beginif(latch_addres="11110101")and(p2="01101111")thenwr_enable1<=wr;--寫允許elsewr_enable1<='1';--寫禁止endif;endprocess;process(wr_enable1)--數(shù)據寫入寄存器1beginifwr_enable1'eventandwr_enable1='1'thenlatch_out1<=p0;endif;endprocess;process(p2,latch_addres)--WR寫信號譯碼過程2beginif(latch_addres="11110011")and(p2="00011111")thenwr_enable2<=wr;--寫允許elsewr_enable2<='1';--寫禁止endif;endprocess;process(wr_enable2)--數(shù)據寫入寄存器2beginifwr_enable2'eventandwr_enable2='1'thenlatch_out2<=p0;endif;endprocess;process(p2,latch_addres,ready,rd)--8031對PLD中數(shù)據讀入進程beginif(latch_addres="01111110")

溫馨提示

  • 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

提交評論