dds信號發(fā)生器的fpga實現(xiàn)【畢業(yè)論文】_第1頁
已閱讀1頁,還剩34頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  本科畢業(yè)設(shè)計(論文)</p><p><b>  ( 屆)</b></p><p>  論文題目 DDS信號發(fā)生器的FPGA實現(xiàn)</p><p>  (英文) Design of DDS Signal Generator</p><p>  Based on FPGA</p>

2、<p>  所在學(xué)院 電子信息學(xué)院 </p><p>  專業(yè)班級 電子信息工程 </p><p>  學(xué)生姓名 學(xué)號 </p><p>  指導(dǎo)教師 職稱 </p><p>  完

3、成日期 年 月 日</p><p><b>  摘 要</b></p><p>  直接數(shù)字頻率合成(DDS)技術(shù)是頻率合成技術(shù)的數(shù)字化的實現(xiàn)方式。DDS技術(shù)帶來了其它傳統(tǒng)頻率合成技術(shù)無法比擬的優(yōu)越性,比如:頻率切換快、頻率分辨率高、相位變化連續(xù)、容易實現(xiàn)各種信號調(diào)制等,因此DDS技術(shù)在通信、雷達、電子對抗、導(dǎo)航、廣播電視、遙控

4、遙測、儀器儀表、航空航天等方面得到了廣泛的應(yīng)用。</p><p>  本文設(shè)計一個基于FPGA的DDS信號發(fā)生器,以Altera公司的EP3C25Q240為載體,利用SOPC技術(shù),將時鐘模塊、相位累加模塊、地址譯碼模塊、幅值轉(zhuǎn)換模塊、波形ROM和NIOS II軟核集成到單片F(xiàn)PGA內(nèi)部,設(shè)計了能夠輸出正弦波的信號發(fā)生器。文中對DDS原理進行了深入的研究和分析,并簡單討論了DDS系統(tǒng)中的噪聲,同時,根據(jù)正弦波的對稱

5、性,縮減了3/4的波形數(shù)據(jù)。</p><p>  關(guān)鍵詞:DDS;FPGA;SOPC;NIOS</p><p><b>  Abstract</b></p><p>  Direct digital frequency synthesis (DDS) technology is frequency synthesis technology di

6、gital realization.DDS technology has other traditional frequency synthesis technology incomparable advantages,For example:fast Frequency switch ,High frequency resolution,Continuous phase change,Easy to implement various

7、 signal modulation.....So in communications, radar DDS technology, electronic against, navigation, radio and television, remote control telemetry, instruments and meters, aerospace and other a</p><p>  This

8、paper designs a DDS signal generator based on FPGA,the EPEP3C25Q240N chip priduced by Altera Ltd.Use the SOPC technology, will clock module, phase accumulate module, address decode module, amplitude conversion module, wa

9、veform ROM and NIOS II nuclear integrated into the single chip soft FPGA internal,design a signal generator that can output the sine wave.In this paper the principle of DDS further research and analysis, and simple disc

10、ussed the noise of DDS system, at the same time, accord</p><p>  Key Words: DDS;FPGA;SOPC;NIOS </p><p><b>  目 錄</b></p><p><b>  1 引言1</b></p><p

11、>  1.1頻率合成技術(shù)的產(chǎn)生與應(yīng)用1</p><p>  1.2研究課題的目的及意義2</p><p>  1.3本文研究的主要內(nèi)容3</p><p>  1.4本文章節(jié)及內(nèi)容劃分3</p><p>  2 直接數(shù)字頻率合成技術(shù)4</p><p>  2.1直接頻率合成技術(shù)(DDS)原理4<

12、/p><p>  2.2DDS系統(tǒng)中的噪聲分析6</p><p>  2.3頻率合成的主要技術(shù)指標6</p><p>  3 EDA技術(shù)與NIOS8</p><p>  3.1 EDA技術(shù)8</p><p>  3.2 Quartus II軟件介紹8</p><p>  3.3仿真工具M

13、odelsim介紹9</p><p>  3.4硬件描述語言—VHDL9</p><p>  3.5 NIOS II介紹10</p><p>  4 系統(tǒng)軟硬件的實現(xiàn)12</p><p>  4.1 總體設(shè)計方案12</p><p>  4.2 FPGA片上各模塊設(shè)計13</p><p

14、>  4.2.1 Cyclone III器件介紹13</p><p>  4.2.2 時鐘模塊設(shè)計13</p><p>  4.2.3 相位累加器模塊13</p><p>  4.2.4 地址譯碼模塊15</p><p>  4.2.5 幅值轉(zhuǎn)換16</p><p>  4.2.6 波形儲存器17&l

15、t;/p><p>  4.2.7 NIOS II軟核及其外設(shè)19</p><p>  4.3 數(shù)模轉(zhuǎn)換模塊(D/A)19</p><p>  4.4 RS232電平轉(zhuǎn)換模塊20</p><p>  4.6 上位機設(shè)計21</p><p>  4.7 DDS波形模塊的Modelsim仿真22</p>

16、<p>  5 總結(jié)與展望23</p><p><b>  致 謝24</b></p><p><b>  參考文獻25</b></p><p>  附錄1 VHDL程序源代碼26</p><p><b>  1 引言</b></p><

17、;p>  1.1頻率合成技術(shù)的產(chǎn)生與應(yīng)用</p><p>  隨著電子技術(shù)的發(fā)展,很多應(yīng)用領(lǐng)域?qū)π盘栴l率的穩(wěn)定性要求越來越高,而且不僅需要單一的固定頻率,還需要多點頻率。比如在雷達運用方面,其信號要求具有頻率捷變、波形參數(shù)捷變以及自適應(yīng)跳頻的能力。傳統(tǒng)的頻率合成技術(shù)已經(jīng)無法滿足要求,直接數(shù)字合成技術(shù)(DDS)的出現(xiàn)與發(fā)展給各個領(lǐng)域帶來福音。</p><p>  早在20世紀30年代,

18、頻率合成技術(shù)就已經(jīng)提出,它是通過將參考頻率源倍頻、分頻、混頻來得到所需頻率,但由于它頻率范圍有限,且不能單片集成,而被漸漸淘汰。最后形成目前使用的由一個晶體振蕩器產(chǎn)生標準頻率再合成多個頻率點的頻率合成技術(shù)。這種頻率合成技術(shù)是通過多級倍頻和分頻,運用混頻器產(chǎn)生所需的各種頻率點[1]。</p><p>  得益于集成電路的發(fā)展,出現(xiàn)了第二代頻率合成技術(shù)——鎖相式頻率合成技術(shù),它由壓控振蕩器、可變分頻器及鑒相器組成。到

19、1971年,J.Tierney,C.M.Rader和B.Gold發(fā)表的論文《A Digital Frequency Synthesizer》[2],這奠定了全新的頻率合成技術(shù)思想,他們提出以全數(shù)字技術(shù)從相位概念出發(fā),直接合成所需頻率的一種新理念,即直接數(shù)字頻率合成(DDS)。它完全不同于直接式和間接式(PLL)頻率合成,因為他是全數(shù)字處理的,他輸出的頻率、相位和幅度能在數(shù)字處理器控制下精確而快速的變化,其他特征包括極微小的頻率調(diào)諧和相位

20、分辨率,以及在兩個頻率之間的“跳躍”能力。</p><p>  DDS獨特的實現(xiàn)方式,使其具有以往的頻率合成技術(shù)無法比擬的優(yōu)點,由于這些優(yōu)點,使得其在各個領(lǐng)域中運用廣泛:</p><p>  DDS在雷達中的應(yīng)用</p><p>  載波頻率有規(guī)律的或者隨機快速變化的捷變頻雷達,與普通的雷達相比具有很強的抗干擾能力。捷變頻雷達的這種特點決定了對應(yīng)的接收機要具有一個能

21、夠跟蹤雷達載波頻率變化的本振源,這樣才能使接收機接收到信號并混頻后得到一個固定的中頻信號。DDS具有高精度、頻率切換時間短、低相噪等優(yōu)點,成為雷達接收機實現(xiàn)高跟蹤精度與高穩(wěn)定度本振源的首選方式。</p><p>  DDS在通信系統(tǒng)中的應(yīng)用</p><p>  由于DDS是通過數(shù)字化實現(xiàn)的,所以能靈活的進行FSK(頻移鍵控)、ASK(幅度鍵控)、PSK(相移鍵控)等各種數(shù)字調(diào)制,較之于模擬

22、技術(shù)實現(xiàn),數(shù)字方式靈活并簡單高效,這使得DDS在各種調(diào)制系統(tǒng)被廣泛運用。</p><p>  DDS在電子對抗中的應(yīng)用</p><p>  在現(xiàn)代戰(zhàn)爭中,幾乎所有的設(shè)備都離不開電子系統(tǒng),而其中最重要的要數(shù)雷達和衛(wèi)星,如果能對雷達和衛(wèi)星信號進行有效的干擾,將給敵人帶來毀滅性的災(zāi)難。在干擾機中,對多普勒雷達干擾的一個重要方法就是對接收到的雷達信號頻率進行適當(dāng)?shù)囊祁l調(diào)制, 以破壞或擾亂對真目標的

23、檢測、顯示、識別、選擇和跟蹤。傳統(tǒng)上利用行波管移相放大器或固態(tài)移相器來實現(xiàn)移頻,這些方法存在相位不連續(xù)、誤差大等缺點。而DDS獨特的特性正符合這一的要求,替代了傳統(tǒng)的方法。 </p><p>  DDS其它方面的應(yīng)用</p><p>  DDS不僅在上述所講到一些場合得到廣泛應(yīng)用,而且在導(dǎo)航、廣播電視、遙控遙測、儀器儀表、航空航天等領(lǐng)域也得到廣泛的應(yīng)用[6]。</p>

24、<p>  1.2研究課題的目的及意義</p><p>  各種電子設(shè)備都離不開信號,尤其是在要對某些電路或感興趣的參數(shù)進行測量的時候,信號就變得尤為重要。波形發(fā)生器是信號源的一種,而用DDS實現(xiàn)則是一個絕佳的選擇。</p><p>  本設(shè)計是利用可編程器FPGA來完成一個DDS系統(tǒng),用FPGA實現(xiàn)DDS技術(shù)比用專用DDS芯片具更多的優(yōu)勢,用FPGA實現(xiàn)DDS技術(shù)比較靈活,可

25、以產(chǎn)生任意波形,可以有多種組合和多種調(diào)制方式。并且在資源允許的情況下,能實現(xiàn)多個DDS芯片的功能。有時候所設(shè)計的系統(tǒng)不一定能找到合適的DDS芯片,比如控制方式或者頻率需求不符合,這時如果用FPGA,自己就能根據(jù)系統(tǒng)的需求,隨心所欲的設(shè)計自己想要的。</p><p>  目前市場上的信號源多是利用專用DDS芯片開發(fā)的,它們輸出頻率、波形和功能都比較好,但與FPGA方案相比,后者具有如下優(yōu)勢:由于專用DDS芯片一般不

26、帶控制器,所以利用專用DDS芯片實現(xiàn)的信號源需要一塊微控制器的協(xié)助才能工作,這無疑增加了成本和系統(tǒng)的復(fù)雜性;而基于FPGA的DDS信號源,可以在一片F(xiàn)PGA芯片上實現(xiàn)信號源的信號的產(chǎn)生和控制,并且在FPGA內(nèi)部資源允許的情況下,改變儲存的波形數(shù)據(jù),就能改變輸出波形的種類和質(zhì)量,實現(xiàn)任意波形發(fā)生器專用DDS芯片實現(xiàn)的信號源功耗大,不適合要求低功耗的場合,其價格也比較高;而如果將DDS信號源設(shè)計嵌入到即FPGA芯片所構(gòu)成的系統(tǒng)中,在其系統(tǒng)成

27、本增加不多的情況下,還可以實現(xiàn)很多更加復(fù)雜的功能。因此,采用FPGA的設(shè)計方案更具靈活性,更具性價比。</p><p>  1.3本文研究的主要內(nèi)容</p><p>  (1) DDS基本原理以及DDS雜散信號研究</p><p>  本文研究了DDS系統(tǒng)的基本原理和基本結(jié)構(gòu),介紹了頻率合成技術(shù)的主要指標,并對DDS的主要特點進行了詳盡的介紹和分析;然后通過數(shù)學(xué)描述

28、,更深入的分析了在理想狀態(tài)下的DDS信號的頻譜特性。</p><p>  (2) 完成硬件系統(tǒng)各個模塊的設(shè)計與調(diào)試</p><p>  (3) 完成FPGA內(nèi)部電路的設(shè)計,包括NIOS II軟核及其外圍電路,用VHDL語言完成DDS信號發(fā)生模塊的設(shè)計以及整個系統(tǒng)的調(diào)試。</p><p>  (4) 完成上位機軟件的設(shè)計,上位機主要完成通過串口向NIOS處理器發(fā)送命令

29、的工作。</p><p>  1.4本文章節(jié)及內(nèi)容劃分</p><p>  全文共分6章,各章的主要內(nèi)容如下:</p><p>  第一章 引言。介紹背景知識以及研究的意義。</p><p>  第二章 介紹直接數(shù)字頻率合成技術(shù)的原理及實現(xiàn)方案。</p><p>  第三章 簡單介紹了本設(shè)計采用的平臺的相關(guān)知識,

30、EDA技術(shù)的運用領(lǐng)域,F(xiàn)PGA的開發(fā)流程,及VHDL語言的優(yōu)點。</p><p>  第四章 整個系統(tǒng)的軟硬件設(shè)計</p><p>  第五章 結(jié)論??偨Y(jié)本設(shè)計的成果及不足之處,還需要改進的地方。</p><p>  2 直接數(shù)字頻率合成技術(shù)</p><p>  2.1直接頻率合成技術(shù)(DDS)原理</p><p&g

31、t;  DDS是從相位概念出發(fā),直接對參考正弦信號進行抽樣,得到不同的相位然后通過數(shù)字技術(shù)產(chǎn)生對于的電壓幅度,最后濾波平滑輸出[12] [14]。如圖為以半徑R為1的單位圓,在點A順著圓周運動時,它在Y軸上的投影S的取值將的-1~+1之間的任意值,半徑R與X正半軸的夾角從0°~360°之間變化。觀察可以發(fā)現(xiàn),,即一個正弦函數(shù),其波形如圖2-1所示[15]:</p><p>  圖2-1 正弦波

32、的產(chǎn)生</p><p>  現(xiàn)假設(shè)一單頻信號,幅度為1,初始相位為0,即</p><p>  = (1)</p><p>  則其相位是時間的線性函數(shù),即</p><p>  = (

33、2)</p><p>  其斜率為,為一常數(shù)。</p><p>  現(xiàn)以采樣周期為Tc對信號進行采樣,則可得離散的序列</p><p> ?。╪=0,1,2,3....) (3)</p><p>  其相應(yīng)的離散相位序列為:</p><p> ?。╪=0,1,2,3..

34、..) (4)</p><p>  設(shè)為連續(xù)兩次采樣之間相位的增量,則</p><p> ?。ǎ瑸椴蓸宇l率) (5)</p><p>  經(jīng)過以上分析,我們做如下圖2-2所示:</p><p>  圖2-2 離散信號圖</p><p>  我

35、們觀察到,相位函數(shù)的斜率即決定了信號的頻率。由采樣定理可以,只要滿足條件</p><p><b>  <</b></p><p>  就能從離散序列唯一的恢復(fù)出原模擬信號,從式(3)和(5)可以看出,兩次連續(xù)采樣直接相位的增量決定了相位函數(shù)的斜率,也就是說,只要控制這個相位增量,就能控制輸出信號的頻率,這就是DDS合成的原理。</p><p&

36、gt;  下面來看看合成信號的頻率和最小頻率步進?,F(xiàn)將一個周期2π進行M等分,若增量的最小值為,最大值為π,所以輸出信號的最小頻率為</p><p><b>  其最大頻率為</b></p><p>  若以最小相位增量的K倍增加,這輸出信號頻率為:</p><p> ?。↘ 為1~之間的整數(shù))</p><p>  現(xiàn)設(shè)

37、相位累加器為N位,頻率控制字為K,則輸出頻率為:</p><p>  當(dāng)K=1時,最小為,當(dāng)K最大時(即K=),有最大為。其頻率分辨率為。</p><p>  2.2DDS系統(tǒng)中的噪聲分析</p><p>  在DDS系統(tǒng)中存在著許多噪聲。理想狀態(tài)下的DDS應(yīng)該沒有相位截斷誤差,即相位累加器輸出的N為將全部用于波形ROM的尋址,沒有波形幅度的量化誤差,也就等于儲存在

38、波形ROM中的波形數(shù)據(jù)具有無限的精度,DAC轉(zhuǎn)換也具有理想的特性。這樣的DDS系統(tǒng),在數(shù)字系統(tǒng)中肯定無法實現(xiàn),因為想通過數(shù)字方式實現(xiàn),波形幅度量化誤差必然存在,DAC轉(zhuǎn)換帶入的雜散必然存在,如果想消除相位截斷效應(yīng),要么降低波形量化級數(shù),要么增加系統(tǒng)成本。下面對各種噪聲做簡要分析。</p><p>  1、相位截斷誤差,也稱為舍位誤差。我們?yōu)榱说玫奖容^高的頻率分辨率,即想要縮小頻率的最小步進,就將相位累加器的位數(shù)N

39、設(shè)置的很大,比如本系統(tǒng)將N設(shè)為32,即便本系統(tǒng)將ROM數(shù)據(jù)壓縮至原來的1/4,可是如果用全部的32位去尋址,那也會對ROM的容量帶來不小的壓力。所以,在實際操作中,局限于器件資源的有限性,通常只取相位累加器的高幾位來作為數(shù)據(jù)ROM的尋址數(shù)據(jù),將多數(shù)的低位數(shù)據(jù)舍去,因此就引入了相位截斷誤差。</p><p>  2、幅度量化誤差。本人認為在數(shù)字系統(tǒng)中,量化誤差是不可避免的,因為任何一個幅度值如果要精確的表示,必將使

40、用無限長的比特流,這在現(xiàn)實中是不可能做到的,而且還要考慮ROM的存儲空間的限制,所以選擇合適的量化級數(shù)以適當(dāng)減少量化誤差帶來的影響。</p><p>  3、DAC轉(zhuǎn)換誤差。DAC轉(zhuǎn)換的誤差主要有DAC非線性化引入的雜散、DAC的毛刺引入的雜散和有限分辨率引入的雜散。</p><p>  2.3頻率合成的主要技術(shù)指標</p><p>  數(shù)字頻率合成器主要技術(shù)指標如

41、下[15]:</p><p><b>  1、頻率范圍指標</b></p><p>  頻率范圍是指合成器在滿足一定技術(shù)條件下的最低輸出頻率和最高輸出頻率所確定的范圍,通常用帶寬來表示,頻率范圍是合成器重要的技術(shù)指標。</p><p><b>  2、頻率間隔</b></p><p>  每個離散頻

42、率之間的最小間隔稱為頻率間隔,也稱頻率分辨率,不同的場合要求不同的分辨率,有100Hz、10Hz、1Hz,甚至0.1Hz。</p><p><b>  3、頻率轉(zhuǎn)換時間</b></p><p>  從發(fā)出頻率轉(zhuǎn)換指令開始,到頻率轉(zhuǎn)換完畢,并進入允許的相位誤差范圍所需要的時間稱為頻率轉(zhuǎn)換時間。對于變?nèi)莨苷{(diào)諧的電壓控制振蕩器來說其轉(zhuǎn)換時間在ns量級。直接式頻率合成器的轉(zhuǎn)換

43、速度取決于各部分電路的響應(yīng)時間,一般放大、混頻、倍頻、分頻電路和速度是很快的,主要限制來自電路中的濾波器以及控制電路的響應(yīng)時間。總之,直接式頻率合成器的頻率轉(zhuǎn)換時間容易達到1~2微秒。</p><p>  4、諧波抑制和雜散抑制</p><p>  諧波是與輸出信號有想干關(guān)系的信號,在頻譜上反映為信號頻率F的整倍數(shù)頻率處的單根譜線,諧波功率與載波功率之比稱為諧波抑制。雜散系指和輸出信號沒有

44、諧波關(guān)系的一些無用譜。在頻譜上可能表現(xiàn)為著干對稱邊帶,也可能表現(xiàn)為信號頻率F譜線旁存在的非諧波關(guān)系的離散單根諾線。這些譜線的幅度一般都高于噪聲。雜散抑制就是指與載波頻率成非諧波關(guān)系的離散頻譜功率與載波功率之比。</p><p><b>  5、長期頻率穩(wěn)定度</b></p><p>  頻率合成器在規(guī)定條件下,在一定時間內(nèi)工作頻率下相對變化,稱為長期穩(wěn)定度。</

45、p><p>  3 EDA技術(shù)與NIOS</p><p><b>  3.1 EDA技術(shù)</b></p><p>  EDA是電子設(shè)計自動化(Electronic Design Automation)的英文縮寫,是20世紀90年代初從CAD(計算機輔助設(shè)計)、CAM(計算機輔助制造)、CAT(計算機輔助測試)和CAE(計算機輔助工程)的概念發(fā)展而

46、來的。它是一種借助于強大的計算機,來實現(xiàn)電子系統(tǒng)或電子產(chǎn)品自動化設(shè)計的技術(shù),通過EDA軟件平臺,利用硬件描述語言(HDL)完成系統(tǒng)的邏輯描述,并自動的完成邏輯編譯、邏輯簡化、邏輯分割、邏輯綜合和布局布線,以及完成系統(tǒng)的優(yōu)化和仿真調(diào)試。這種技術(shù)使得設(shè)計者的工作僅限于通過計算機軟件,即利用EDA工具和硬件描述語言就能完成硬件系統(tǒng)的設(shè)計[9]。</p><p>  EDA工具在EDA技術(shù)應(yīng)用中占據(jù)著非常重要的地位,可以

47、說如果沒有強大的EDA工具的支持,想通過計算機來完成電子設(shè)計全程自動化是不可能的。Altera公司推出的Quartus II軟件是一款適合于大規(guī)模復(fù)雜邏輯電路開發(fā)的設(shè)計軟件,它提供了從設(shè)計輸入到器件編程的全部功能,與其前一代的設(shè)計工具MAXPLU II相比,Quartus II軟件增加了許多功能,比如網(wǎng)絡(luò)編譯功能,對更多器件的支持等,同時提高了編譯的速度,提升了調(diào)試的能力,是一款被大多數(shù)數(shù)字系統(tǒng)設(shè)計者認可的EDA工具。硬件描述語言的發(fā)展

48、也給設(shè)計者的設(shè)計工作帶來了很大的方便,比如早期的硬件描述語言,如ABEL-HDL、AHDL是有不同EDA廠商各自開發(fā)的,相互之間不兼容,且不支持多層次的設(shè)計。為了改變這一狀況,美國國防部在1985年正式推出了VHDL語言,在1987年IEEE將VHDL采納為硬件描述一樣標準。VHDL是一種全方位的硬件描述語言,在下面將詳細的介紹。</p><p>  3.2 Quartus II軟件介紹 </p>

49、<p>  本設(shè)計采用的工具是Altera公司的Quartus II軟件。Quartus II在21世紀初推出,是Altera公司用來替代其前一代FPGA/CPLD集成開發(fā)環(huán)境MAXPLUS II的新一代產(chǎn)品,它是一款界面友好,使用便捷,功能全面的設(shè)計軟件,至今已經(jīng)發(fā)布了11.0以上的版本。它提供了完整的多平臺設(shè)計環(huán)境,能滿足各種特定設(shè)計的需要,包括單芯片可編程系統(tǒng)(SOPC)設(shè)計的綜合性環(huán)境和SOPC開發(fā)的基本設(shè)計,且為Al

50、tera DSP開發(fā)包進行系統(tǒng)模型設(shè)計提供了集成綜合環(huán)境。Quartus II包含了許多重要的LPM(Library of ParameterizedModules)模塊,它們是許多高級系統(tǒng)的重要構(gòu)成部分,特別是在SOPC設(shè)計中被大量使用。EDA設(shè)計流程如圖3-1所示[4]:</p><p>  圖3-1 QuartusII設(shè)計流程圖</p><p>  3.3仿真工具Modelsim介紹

51、</p><p>  ModelSim是Mentor公司推出的一款仿真軟件,是業(yè)界最優(yōu)秀的HDL語言仿真軟件,它提供友好的仿真環(huán)境,我們可以利用該軟件對所有VHDL和Verilog代碼進行仿真,并可以將整個程序分步執(zhí)行,使設(shè)計者能直接看到程序每一條語句執(zhí)行的結(jié)果,它是業(yè)界唯一一款單內(nèi)核支持VHDL和Verilog混合仿真的仿真器,同時支持IEEE常見的各種硬件描述語言標準。它采用直接優(yōu)化的編譯技術(shù)、Tcl/Tk技

52、術(shù)、和單一內(nèi)核仿真技術(shù),編譯仿真速度快,編譯的代碼與平臺無關(guān),便于保護IP核,個性化的圖形界面和用戶接口,為用戶加快調(diào)錯提供強有力的手段,是FPGA/ASIC設(shè)計的首選仿真軟件。</p><p>  3.4硬件描述語言—VHDL</p><p>  VHDL是超高速集成電路硬件描述語言(Very high-speed integrated circuit Hardware Descript

53、ion Language)的英文字頭縮寫簡稱。在1987年,VHDL成為了IEEE標準,1993年,IEEE對VHDL進行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴展了VHDL的內(nèi)容,公布了IEE標準的1076-1993版本。在EDA領(lǐng)域,VHDL以成為主要的硬件描述語言。VHDL有多種描述方式,如下[3,13]:</p><p>  1、行為描述:即描述該單元的功能,主要使用進程語句,以算法的形式來描述數(shù)據(jù)的傳

54、送和變換。</p><p>  2、結(jié)構(gòu)描述:即具體描述該單元的硬件結(jié)構(gòu),主要用配置指定語句和元件例化語句來描述元件之間的鏈接。</p><p>  3、數(shù)據(jù)流方式:類似于寄存器傳輸?shù)姆绞絹砻枋鰯?shù)據(jù)的流動,主要用并行的信號賦值語句來完成設(shè)計。</p><p>  VHDL具有很多優(yōu)秀的特點,比如VHDL與具體硬件電路或開發(fā)環(huán)境無關(guān),這就使得它的可移植性就很強。VHD

55、L具有多層次的描述能力,即可以采用上述的任何一種描述方式,也可采用三者混合的描述方式。VHDL是基于庫(Library)的設(shè)計方式,開發(fā)者可以建立各種可再次利用的模塊,以便于以后復(fù)用。因此,VHDL在支持各種模式的設(shè)計方式,在面對當(dāng)今許多商業(yè)電子產(chǎn)品開發(fā)周期短,需經(jīng)常更新以融入最新技術(shù),改革工藝等方面都表現(xiàn)出了良好的適應(yīng)能力。用VHDL進行開發(fā),設(shè)計者可以只專注于其功能的實現(xiàn),而不需要對硬件工藝等因素過多的在意。它在大規(guī)模設(shè)計的時候,可

56、以對整個系統(tǒng)進行分解設(shè)計,還可利用已有的設(shè)計,這符合現(xiàn)在的設(shè)計方式(一個大的設(shè)計不可能由一個人獨立完成)。</p><p>  3.5 NIOS II介紹</p><p>  NIOS是Altera公司推出的一款嵌入式處理器,其早期的目的是為了解決ASIC開發(fā)日益受到成本的困擾,因為這些系統(tǒng)中絕大多數(shù)需要一個處理器。</p><p>  Nios II處理器系列由三

57、個不同的內(nèi)核組成,可以靈活地控制成本和性能,從而擁有廣泛的應(yīng)用空間。其中JTAG調(diào)試模塊提供了通過遠端PC主機實現(xiàn)Nios II處理器的在芯片控制、調(diào)試和通訊功能,這是Nios II處理器的一個極具競爭力的特性。此外,Nios II系列支持60多個外設(shè)選項,包括定時器、UART、直接寄存器訪問(DMA)、以太網(wǎng)等,開發(fā)者可以選擇合適的外設(shè),獲得最合適的處理器、外設(shè)和接口組合,而將不會局限于預(yù)先制造的處理器技術(shù)。</p>&

58、lt;p>  Nios II處理器定制指令擴展了CPU指令集,提高對時間要求嚴格的軟件運行速度,從而使開發(fā)人員能夠提高系統(tǒng)性能。采用定制指令,您可以實現(xiàn)傳統(tǒng)處理器無法達到的最佳系統(tǒng)性能。專用硬件加速器可以做為FPGA中的定制協(xié)處理器,協(xié)助CPU同時處理多個數(shù)據(jù)塊。</p><p>  4 系統(tǒng)軟硬件的實現(xiàn)</p><p>  4.1 總體設(shè)計方案</p><p&

59、gt;  本設(shè)計為簡單的DDS信號發(fā)生器,產(chǎn)生的波形有正弦波、三角波、方波、鋸齒波,輸出信號的頻率范圍為1Hz~1MHz,最小步進為1Hz。整個系統(tǒng)主要可分為一下幾部分:</p><p>  1、FPGA片上系統(tǒng)(包括NIOS II軟核,數(shù)字波形產(chǎn)生電路)</p><p>  2、上位機控制及顯示</p><p><b>  3、數(shù)模轉(zhuǎn)換電路</b&

60、gt;</p><p><b>  4、低通濾波電路</b></p><p>  圖 4-1 DDS系統(tǒng)結(jié)構(gòu)圖</p><p>  圖4-1為本設(shè)計的系統(tǒng)結(jié)構(gòu)圖,本設(shè)計主要包括一下幾部分:</p><p>  上位機,利用visual studio開發(fā)平臺和C#語言設(shè)計上位機,上位機包括功能有:發(fā)送命令和數(shù)據(jù),接收下位機

61、返回的信息以分析下位機的情況。</p><p>  第二部分是FPGA部分的設(shè)計,包括NIOS II軟核,DDS發(fā)送模塊的設(shè)計,NIOS II軟核主要用來控制DDS發(fā)送模塊產(chǎn)生波形,其接收來自上位機的命令和數(shù)據(jù),根據(jù)命令做出相應(yīng)的操作,并將狀態(tài)發(fā)送給上位機。DDS模塊主要包括兩部分,即相位控制器和儲存波形的ROM。</p><p>  數(shù)模轉(zhuǎn)換模塊是將DDS發(fā)生模塊產(chǎn)生的數(shù)字波形轉(zhuǎn)換為連續(xù)

62、的模擬波形。由于實際需要的是模擬信號,故需要將所得到的離散信號經(jīng)過D/A器件,得到連續(xù)的模擬信號。</p><p>  最后是濾波模塊,雖然經(jīng)過D/A后,已經(jīng)產(chǎn)生了模擬信號,但這時候的信號往往有一定的階梯狀,不夠平滑,濾波模塊主要將信號平滑處理,得到跟完美的波形。</p><p>  4.2 FPGA片上各模塊設(shè)計</p><p>  4.2.1 Cyclone I

63、II器件介紹</p><p>  Altera公司的FPGA包含低中高三個性能的系列,低端包括Cyclone I,II,III,IV;中端包括Arria GX I,II;高端包括Stratix I,II,III,IV,V。本設(shè)計采用Altera公司的Cyclone III系列器件EP3C25Q240C8N。Cyclone III是Altera發(fā)售業(yè)界的首款65nm低成本FPGA,該系列的FPGA比以往功耗低75%

64、,含有5K至120K邏輯單元(LE),最多達288個數(shù)字信號處理(DSP)乘法器。EP3C25Q240C8N包含24624個邏輯單元和608256BitsRAM容量,遠遠能滿足本設(shè)計的需要[17]。</p><p>  4.2.2 時鐘模塊設(shè)計</p><p>  本設(shè)計的DDS模塊對系統(tǒng)時鐘的要求較高,不僅要求較高的時鐘頻率,還要求非常高的穩(wěn)定性,如果外加一個高頻的晶振,不僅時鐘不穩(wěn)定,

65、而且也增加了系統(tǒng)功耗和成本,所以,本設(shè)計直接利用Altera提供的PLL核,通過對輸入的時鐘倍頻來獲得所需的較高頻率。</p><p>  圖4-2是由Quartus II中的Mega Wizard Plug-In Manager工具產(chǎn)生的PLL模塊,三個輸出分別為內(nèi)部DDS模塊,NIOS II處理器和SDRAM提供時鐘</p><p><b>  圖4-2 系統(tǒng)時鐘</b

66、></p><p>  4.2.3 相位累加器模塊</p><p>  相位累加器模塊是本設(shè)計的核心模塊,它直接決定合成信號的產(chǎn)生。它是由N位的加法器和N位相位寄存器組成的。每來一個時鐘脈沖,加法器將相位寄存器中的值與頻率控制字K相加,并把結(jié)果保存在相位寄存器中,相位寄存器一方面將輸出反饋給加法器,以使相位累加,另一方面相位寄存器將輸出相位數(shù)據(jù)去尋址波形ROM,得到相應(yīng)的波形數(shù)據(jù)。本

67、設(shè)計的頻率控制字K為32位,考慮到用32地址去尋址,所需要的資源比較大,且做32為的數(shù)模轉(zhuǎn)換不怎么現(xiàn)實,所以本設(shè)計取相位數(shù)據(jù)的高12位作為地址來尋址波形ROM,數(shù)模轉(zhuǎn)換器也為12位,12位的效果已經(jīng)非常好了。主要代碼如下:</p><p>  Architecture behav OF Phase_Accu IS</p><p><b>  Begin</b><

68、/p><p>  Process(clk,Phase_Ctr,Phase)</p><p><b>  Begin</b></p><p>  if(clk'event and clk = '1') then</p><p>  Sum <= Phase_Ctr + Phase;</p&g

69、t;<p><b>  End if;</b></p><p>  End Process;</p><p>  End behav;</p><p>  相位寄存器也為32位的,其代碼如下:</p><p>  Architecture behav OF Fre_Reg IS</p><

70、;p><b>  Begin</b></p><p>  Process(Up_Key,Phase_In)</p><p><b>  Begin</b></p><p>  if(Up_Key'event and Up_Key = '1')then</p><p> 

71、 Phase_Out<= Phase_In; </p><p><b>  End if;</b></p><p>  End Process;</p><p>  End behav;</p><p>  下圖4-3是Quartus II生成的RTL模塊圖:</p><p>  圖4-3

72、相位累加器</p><p>  4.2.4 地址譯碼模塊</p><p>  由于本設(shè)計對波形的儲存進行了優(yōu)化,只儲存了前周期的波形數(shù)據(jù),這樣在對ROM進行尋址的時候就要根據(jù)象限對地址進行一定的轉(zhuǎn)換,從絕對值來看,第一和第三象限數(shù)據(jù)的增長方向一樣,第二和第四象限的數(shù)據(jù)增長方向一樣,且這兩這兩個形成了互補關(guān)系。下面是主要代碼:</p><p>  Architectu

73、re behav OF Add_Decoder IS</p><p>  Signal addr_r : std_logic_vector(9 downto 0);</p><p>  Signal addr_r1 : std_logic_vector(9 downto 0);</p><p>  Signal Ctr_r : std_logic_vector(1

74、 downto 0);</p><p>  Signal Ctr_r1 : std_logic_vector(1 downto 0);</p><p>  Signal Phase_r1 : std_logic_vector(31 downto 0);</p><p>  Signal Phase_r2 : std_logic_vector(31 downto 0

75、);</p><p>  Signal xz : std_logic_vector(1 downto 0);</p><p><b>  Begin</b></p><p>  Process(clk,Phase_In)</p><p><b>  Begin</b></p>&l

76、t;p>  if(clk'event and clk = '1') then</p><p>  Phase_r1 <= Phase_In;</p><p>  Phase_r2 <= Phase_r1;</p><p>  Ctr_r1 <= Phase_r2(31 downto 30);</p>&l

77、t;p>  Ctr_r <= Ctr_r1;</p><p>  addr_r1 <= Phase_r2(29 downto 20);</p><p><b>  End if;</b></p><p>  End Process;</p><p>  Process(clk,Ctr_r1)</p

78、><p><b>  Begin</b></p><p>  if(clk'event and clk = '1') then</p><p>  case Ctr_r1 is</p><p>  When "00" => addr_r <= addr_r1;</

79、p><p>  When "01" => addr_r <= ("1111111111" - addr_r1 );</p><p>  When "10" => addr_r <= addr_r1;</p><p>  When "11" => addr_r &

80、lt;= ("1111111111" - addr_r1 );</p><p>  When Others => addr_r <= "0000000000";</p><p><b>  End case;</b></p><p><b>  End if;</b>&l

81、t;/p><p>  End Process;</p><p>  Ctr <= Ctr_r;</p><p>  Address <= addr_r; </p><p>  End behav;</p><p>  下圖4-4是Quartus II生成的模塊圖:</p><p><

82、;b>  圖4-4 地址譯碼</b></p><p>  4.2.5 幅值轉(zhuǎn)換</p><p>  由正弦波的對稱性(第一象限和第二象限、第三象限和第四象限分別關(guān)于Y軸對稱,且第一象限和第三象限關(guān)于X軸對稱),我們很容易知道只要對第一象限數(shù)據(jù)取反(這里采用取補),在配以地址譯碼的作用,就能準確得到第三第四象限的數(shù)據(jù),其主要代碼如下:</p><p>

83、;  Architecture behav OF A_Conv IS</p><p>  Signal Ctr_r : std_logic_vector(1 downto 0);</p><p>  Signal Ctr_r1 : std_logic_vector(1 downto 0);</p><p>  Signal A_Reg : std_logic_vec

84、tor(11 downto 0);</p><p><b>  Begin</b></p><p>  Process(clk)</p><p><b>  Begin</b></p><p>  if(clk'event and clk = '1') then</p&

85、gt;<p>  Ctr_r1 <= Ctr;</p><p>  Ctr_r <= Ctr_r1;</p><p>  A_Reg <= Data_In;</p><p><b>  End if;</b></p><p>  End Process;</p><p&

86、gt;  Process(clk)</p><p><b>  Begin</b></p><p>  if(clk'event and clk = '1') then</p><p>  case Ctr_r IS</p><p>  When "00" => A_Ou

87、t <= A_Reg;</p><p>  When "01" => A_Out <= A_Reg;</p><p>  When "10" => A_Out <= "111111111111" - A_Reg;</p><p>  When "11" =&

88、gt; A_Out <= "111111111111" - A_Reg;</p><p>  When Others => A_Out <= "000000000000";</p><p><b>  End case;</b></p><p><b>  End if;<

89、;/b></p><p>  End Process;</p><p>  End behav;</p><p>  下圖4-5為幅值轉(zhuǎn)換模塊圖:</p><p><b>  圖4-5 幅值轉(zhuǎn)換</b></p><p>  4.2.6 波形儲存器</p><p>  

90、從DDS原理那一章節(jié)中可以知道,圓為對稱圖形,也就是說,在對應(yīng)的相位上,第一象限的幅值與第二象限的幅值相同,與第三第四象限幅值正好相反,于是我們只要儲存第一象限的幅值就可以了,這樣可以節(jié)約3/4的存儲空間,我們以地址線的高兩位來判別當(dāng)前象限,再對幅值進行相應(yīng)的處理,既能得到正確的數(shù)據(jù)。所以ROM的數(shù)據(jù)寬度為12位,地址為10為,只要用相位數(shù)據(jù)高12位中的低10來索引波形ROM即可,然后以相位數(shù)據(jù)的高兩位為判斷依據(jù),判斷波形所處的象限,然

91、后對ROM輸出的數(shù)據(jù)做相應(yīng)的處理。波形ROM的代碼如下:</p><p>  LIBRARY ieee;</p><p>  USE ieee.std_logic_1164.all;</p><p>  LIBRARY altera_mf;</p><p>  USE altera_mf.all;</p><p>  

92、ENTITY ROM_1 IS</p><p><b>  PORT</b></p><p><b>  (</b></p><p>  address: IN STD_LOGIC_VECTOR (9 DOWNTO 0);</p><p>  clock: IN STD_LOGIC :=

93、'1';</p><p>  q: OUT STD_LOGIC_VECTOR (11 DOWNTO 0)</p><p><b>  );</b></p><p>  END ROM_1;</p><p>  ARCHITECTURE SYN OF rom_1 IS</p><p&

94、gt;  SIGNAL sub_wire0: STD_LOGIC_VECTOR (11 DOWNTO 0);</p><p>  COMPONENT altsyncram</p><p><b>  GENERIC (</b></p><p>  address_aclr_a: STRING;</p><p>  

95、clock_enable_input_a: STRING;</p><p>  clock_enable_output_a: STRING;</p><p>  init_file: STRING;</p><p>  intended_device_family: STRING;</p><p>  lpm_hint:

96、STRING;</p><p>  lpm_type: STRING;</p><p>  numwords_a: NATURAL;</p><p>  operation_mode: STRING;</p><p>  outdata_aclr_a: STRING;</p><p>  outdata

97、_reg_a: STRING;</p><p>  widthad_a: NATURAL;</p><p>  width_a: NATURAL;</p><p>  width_byteena_a: NATURAL</p><p><b>  );</b></p><p><

98、;b>  PORT (</b></p><p>  address_a: IN STD_LOGIC_VECTOR (9 DOWNTO 0);</p><p>  clock0: IN STD_LOGIC ;</p><p>  q_a: OUT STD_LOGIC_VECTOR (11 DOWNTO 0)</p><p&g

99、t;<b>  );</b></p><p>  END COMPONENT;</p><p><b>  BEGIN</b></p><p>  q <= sub_wire0(11 DOWNTO 0);</p><p>  altsyncram_component : altsyncr

100、am</p><p>  GENERIC MAP (</p><p>  address_aclr_a => "NONE",</p><p>  clock_enable_input_a => "BYPASS",</p><p>  clock_enable_output_a => &

101、quot;BYPASS",</p><p>  init_file => "../../Sin_ROM.mif",</p><p>  intended_device_family => "Cyclone IV E",</p><p>  lpm_hint => "ENABLE_RUNTI

102、ME_MOD=NO",</p><p>  lpm_type => "altsyncram",</p><p>  numwords_a => 1024,</p><p>  operation_mode => "ROM",</p><p>  outdata_aclr_a

103、=> "NONE",</p><p>  outdata_reg_a => "CLOCK0",</p><p>  widthad_a => 10,</p><p>  width_a => 12,</p><p>  width_byteena_a => 1</p&

104、gt;<p><b>  )</b></p><p>  PORT MAP (</p><p>  address_a => address,</p><p>  clock0 => clock,</p><p>  q_a => sub_wire0</p><p>

105、;<b>  );</b></p><p><b>  END SYN;</b></p><p>  4.2.7 NIOS II軟核及其外設(shè)</p><p>  用FPGA做DDS是一個好處就是不用在你的PCB上再外接一個cpu,因為我們可以在FPGA中做一個cpu——NIOS II。cpu在這的作用主要是改變頻率控制字K

106、,以改變輸出信號的頻率,還有就是處理輸入的命令,和讀取相關(guān)的狀態(tài)。其外設(shè)主要有一個UART,負責(zé)與上位機通信,將上位機的命令傳入cpu,將運行狀態(tài)上傳上位機。圖4-6為Quartus II工具SOPC Builder設(shè)計的NIOS II軟核。</p><p>  圖4-6 NIOS II軟核</p><p>  4.3 數(shù)模轉(zhuǎn)換模塊(D/A) </p><p>  

107、從ROM中讀出波形數(shù)據(jù),要經(jīng)過D/A轉(zhuǎn)換之后才形成了最終我們需要的模擬信號,實際上,由于DAC的分辨率有限,經(jīng)過D/A后并不能得到真正的正弦信號,而是得到一連續(xù)的階梯波模擬信號,如需得到光滑的正弦波還需接一級低通濾波。本設(shè)計所選的D/A器件為美國ADI公司的AD9713B,它具有一下特性:</p><p>  具有100MSPS的更新速率;</p><p>  與ECL/TTL兼容;<

108、;/p><p>  無雜散動態(tài)范圍SFDR為70dBc(1MHz);</p><p>  毛刺電壓低至28Pv-s;</p><p>  建立時間快(27ns);</p><p>  低功耗:725mW;</p><p>  1/2LSB DNL (B Grade);</p><p>  具有40

109、MHz乘積帶寬。</p><p>  隨著DDS電路工作頻率的提升,DAC的性能對DDS輸出頻譜的影響越來越大,在高頻DDS電路中,DAC的非理性動態(tài)相應(yīng)特性已經(jīng)成為DDS的輸出雜散的主要來源之一。圖4-7為AD9713B的典型運用圖,也是本設(shè)計采用的。</p><p>  圖4-7 AD9713B典型電路圖</p><p>  4.4 RS232電平轉(zhuǎn)換模塊<

110、;/p><p>  RS232是一種串行總線接口標準,是電子行業(yè)協(xié)會(EIA)制定并發(fā)布的,其全名為“數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通信設(shè)備(DCE)之間的串行二進制數(shù)據(jù)交換接口技術(shù)標準”,是異步通信中應(yīng)用最早的,也是目前運用最廣泛的標準串行總線接口之一。NIOS II想要與上位機通信,必須經(jīng)過電平轉(zhuǎn)換模塊這個橋梁,因為TTL電平和電腦串口的RS232C電平標準不兼容,不能直接連接,所以設(shè)計RS232電平轉(zhuǎn)換模塊。本設(shè)

111、計運用的電路如圖4-8所示:</p><p>  圖 4-8 電平轉(zhuǎn)換模塊</p><p><b>  4.6 上位機設(shè)計</b></p><p>  本設(shè)計的控制輸入以及狀態(tài)顯示利用上位機來完成,開發(fā)工具選擇Microsoft公司的Visual Studio2010,開發(fā)語言為C#。</p><p>  Visual

112、Studio是微軟公司推出的開發(fā)環(huán)境,是目前非常流行的基于Windows平臺的應(yīng)用程序開發(fā)環(huán)境,它具有如下特點:</p><p>  1、可以快速地編寫各種基于Microsoft.NET平臺的應(yīng)用程序,提供了一系列的工具和服務(wù)來最大程度地開發(fā)利用計算與通訊領(lǐng)域。</p><p>  2、C#內(nèi)置的特性,使任何組件可以輕松轉(zhuǎn)化為XML網(wǎng)絡(luò)服務(wù),任何操作系統(tǒng)上運行的任何程序都可以通過Inter

113、net調(diào)用。</p><p>  3、集成開發(fā)環(huán)境可視,將編程器、調(diào)試器、編譯器、連接器還有各種實用工具結(jié)合在一起,開發(fā)程序越來越方便。</p><p>  C#是微軟為.NET Framework量身訂做的程序語言,它擁有C/C++的強大的功能已經(jīng)Visual Basic簡易使用的特性,是第一個組件導(dǎo)向的程序語言。</p><p>  本設(shè)計的上位機程序主要完成兩

114、個任務(wù):1、給下位機發(fā)送控制命令;2、定期更新下位機狀態(tài)。其界面如圖4-9所示:</p><p>  圖4-9 上位機界面</p><p>  4.7 DDS波形模塊的Modelsim仿真</p><p>  仿真是基于Modelsim的,在頻率控制字為0x00100000時,時鐘頻率為80MHz,由公式可得出其為19531.25Hz,波形如圖4-10所示:<

115、/p><p>  圖4-10 波形仿真圖</p><p>  從仿真結(jié)果來看通過上面的設(shè)計,能正確得到想要的波形。</p><p><b>  5 總結(jié)與展望</b></p><p>  我的課題是設(shè)計一個基于FPGA的DDS信號源,設(shè)計的目的是對數(shù)字頻率合成有一個初步的認識,本設(shè)計沒有直接采用DDS芯片,而是利用DDS原

116、理,自行通過FPGA設(shè)計,在設(shè)計中弄清楚了DDS的工作原理以及實現(xiàn)方法。本設(shè)計主要完成了一下幾個任務(wù):</p><p>  1、闡述了本課題的來源,背景、意義以及DDS技術(shù)的研究現(xiàn)狀。</p><p>  2、從廣泛的頻率合成入手,介紹了直接數(shù)字合成技術(shù)(DDS)的原理,并從數(shù)學(xué)角度深入的剖析了DDS原理。</p><p>  3、簡單介紹了EDA技術(shù)、Quartu

117、s II軟件和可編程邏輯器件相關(guān)的一些技術(shù)。</p><p>  4、完成了VHDL代碼設(shè)計,并通過了仿真,從仿真結(jié)果看該方案可行,完成了上位機設(shè)計,上位機與下位機通信正常。</p><p>  由于本次設(shè)計時間倉促和本人能力有限,本設(shè)計之神對直接數(shù)字頻率合成技術(shù)的初次窺探,功能簡陋,還有很多需要改進的地方:</p><p>  1、希望通過學(xué)習(xí),研究各種波形的產(chǎn)生

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論