版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p> 摘 要:硬件描述語言HDL是EDA技術(shù)中的重要組成部分,VHDL是當(dāng)前最流行的硬件描述語言之一,此語言具有良好的可讀性、可移植性等特點。本設(shè)計主要是利用VHDL語言設(shè)計一個多功能信號發(fā)生器,根據(jù)輸入信號的選擇可以輸出方波、三角波、正弦波和階梯波4種信號,主要使用了Altera公司的Quartus II軟件。</p><p> 本設(shè)計利用VHDL語言使用文本輸入法,新建工程,通過設(shè)計輸入、編
2、譯、仿真完成各種信號的設(shè)計,然后生成元器件,再使用原理圖輸入法完成各部分的整合,從而形成一個完整的多波形信號發(fā)生器,而后經(jīng)過鎖定引腳下載數(shù)模轉(zhuǎn)換可以在示波器上觀察到波形。</p><p> 關(guān)鍵詞:VHDL,文本輸入法,原理圖輸入法,數(shù)模轉(zhuǎn)換</p><p> Abstract:Hardware describe language HDL is an important part of
3、 EDA technology ,VHDL is one of the current most popular hardware describe language,this language has a nice readability and portability. This design primarily uses vhdl language to design a versatile signal generator. A
4、ccording to the choice of the input signal wave,the generator can export the one wave of the four waves including square-wave、triangular-wave、 sine-wave、 ladder-wave . This design primarily uses the Quartus II softwar<
5、;/p><p> The design uses text input method by VHDL language to creat new projects,design the input,compile,simulate various kinds signals.And it generate new component,then it form a completed various kinds si
6、gnals generator by schematic diagram method,then you can observe the waveforms on the oscillograph after locking the pins,downloading,digital-analogue conversion.</p><p> Keywords: VHDL,text input method,sc
7、hematic diagram method,digital-to-analogue conversion</p><p><b> 目 錄</b></p><p><b> 1. 緒論4</b></p><p> 1.1 EDA概述4</p><p> 1.2 Quartus II 概
8、述4</p><p> 1.3 信號發(fā)生器概述5</p><p> 2. VHDL語言介紹5</p><p><b> 3. 主要功能6</b></p><p> 3.1 功能模塊的劃分7</p><p> 3.2 主要功能的實現(xiàn)7</p><p>
9、 3.2.1方波的實現(xiàn)7</p><p> 3.2.2三角波的實現(xiàn)9</p><p> 3.2.3正弦波的實現(xiàn)10</p><p> 3.2.4階梯波的實現(xiàn)13</p><p> 3.2.5四選一輸出波形選擇模塊14</p><p> 3.3 多波形信號發(fā)生器15</p><p
10、> 4. 外圍電路設(shè)計17</p><p> 4.1基于EPM1270T144C5芯片的開發(fā)板介紹17</p><p> 4.2 D/A轉(zhuǎn)換器17</p><p> 4.3示波器觀察圖形19</p><p><b> 結(jié) 論21</b></p><p> 參 考 文 獻(xiàn)
11、22</p><p><b> 致 謝23</b></p><p><b> 1. 緒論</b></p><p><b> 1.1 EDA概述</b></p><p> EDA技術(shù)是以大規(guī)??删幊踢壿嬈骷樵O(shè)計載體,以硬件描述語言為系統(tǒng)邏輯描述的主要表達(dá)方式,以計算
12、機、大規(guī)模可編程邏輯器件的開發(fā)軟件及實驗開發(fā)系統(tǒng)為設(shè)計工具,通過有關(guān)開發(fā)軟件,自動完成用軟件的方式設(shè)計的電子系統(tǒng)到硬件系統(tǒng)實現(xiàn),最終形成集成電子系統(tǒng)或?qū)S眉尚酒囊婚T新技術(shù)。</p><p> 1.2 Quartus II 概述</p><p> Quartus II 是Altera公司的綜合性PLD開發(fā)軟件,支持原理圖、VHDL、VerilogHDL以及AHDL(Altera Ha
13、rdware Description Language)等多種設(shè)計輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計輸入到硬件配置的完整PLD設(shè)計流程。</p><p> Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl腳本完成設(shè)計流程外,提供了完善的用戶圖形界面設(shè)計方式。具有運行速度快,界面統(tǒng)一,功能集中,易學(xué)易用等特點。</p><p> Quar
14、tus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模塊庫,使用戶可以充分利用成熟的模塊,簡化了設(shè)計的復(fù)雜性、加快了設(shè)計速度。對第三方EDA工具的良好支持也使用戶可以在設(shè)計流程的各個階段使用熟悉的第三方EDA工具。</p><p> 此外,Quartus II 通過和DSP Builder工具與Matlab/Simulink相結(jié)合,可以方便地實現(xiàn)各種DSP應(yīng)用系統(tǒng);支持Altera
15、的片上可編程系統(tǒng)(SOPC)開發(fā),集系統(tǒng)級設(shè)計、嵌入式軟件開發(fā)、可編程邏輯設(shè)計于一體,是一種綜合性的開發(fā)平臺。</p><p> Maxplus II 作為Altera的上一代PLD設(shè)計軟件,由于其出色的易用性而得到了廣泛的應(yīng)用。目前Altera已經(jīng)停止了對Maxplus II 的更新支持,Quartus II 與之相比不僅僅是支持器件類型的豐富和圖形界面的改變。Altera在Quartus II 中包含了許多
16、諸如SignalTap II、Chip Editor和RTL Viewer的設(shè)計輔助工具,集成了SOPC和HardCopy設(shè)計流程,并且繼承了Maxplus II 友好的圖形界面及簡便的使用方法。</p><p> Altera Quartus II 作為一種可編程邏輯的設(shè)計環(huán)境, 由于其強大的設(shè)計能力和直觀易用的接口,越來越受到數(shù)字系統(tǒng)設(shè)計者的歡迎。 </p><p> Altera
17、的Quartus II可編程邏輯軟件屬于第四代PLD開發(fā)平臺。該平臺支持一個工作組環(huán)境下的設(shè)計要求,其中包括支持基于Internet的協(xié)作設(shè)計。Quartus平臺與Cadence、ExemplarLogic、 MentorGraphics、Synopsys和Synplicity等EDA供應(yīng)商的開發(fā)工具相兼容。改進了軟件的LogicLock模塊設(shè)計功能,增添 了FastFit編譯選項,推進了網(wǎng)絡(luò)編輯性能,而且提升了調(diào)試能力。支持MAX70
18、00/MAX3000等乘積項器件[1]。</p><p> 1.3 信號發(fā)生器概述</p><p> 信號發(fā)生器又稱信號源或振蕩器,在生產(chǎn)實踐和科技領(lǐng)域中有著廣泛的應(yīng)用。各種波形曲線均可以用三角函數(shù)方程式來表示。能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波(含方波)、正弦波的電路被稱為函數(shù)信號發(fā)生器。函數(shù)信號發(fā)生器在電路實驗和設(shè)備檢測中具有十分廣泛的用途。例如在通信、廣播、電視系統(tǒng)中,都
19、需要射頻(高頻)發(fā)射,這里的射頻波就是載波,把音頻(低頻)、視頻信號或脈沖信號運載出去,就需要能夠產(chǎn)生高頻的振蕩器。在工業(yè)、農(nóng)業(yè)、生物醫(yī)學(xué)等領(lǐng)域內(nèi),如高頻感應(yīng)加熱、熔煉、淬火、超聲診斷、核磁共振成像等,都需要功率或大或小、頻率或高或低的振蕩器。</p><p> 2. VHDL語言介紹</p><p> 硬件描述語言HDL是EDA技術(shù)的重要組成部分,常見的HDL語言有VHDL、Veri
20、log HDL、 ABEL、AHDL、System Verilog 和 System C。</p><p> 其中VHDL,Verilog在現(xiàn)在的EDA設(shè)計中使用最多,也擁有幾乎所有主流EDA工具的支持。而System Verilog和System C這兩種HDL語言還處于完善過程中。VHDL是作為電子設(shè)計主流硬件的描述語言之一,這里我們將重點介紹它。</p><p> VHDL的英文
21、全名是VHSIC(Very High Speed Integrated Circuit Hardware Description Language),于1983年由美國國防部(DOD發(fā)起創(chuàng)建),由IEEE(The Institute of Electrical and Electronics Engineers)進一步發(fā)展,并在1987年作為“IEEE標(biāo)準(zhǔn)1076”發(fā)布。從此,VHDL成為硬件描述語言的業(yè)界標(biāo)準(zhǔn)之一。自IEEE公布了標(biāo)準(zhǔn)
22、版本(IEEE Std 1076)之后,各EDA公司相繼推出了自己的VHDL設(shè)計環(huán)境,或宣布自己的設(shè)計工具支持VHDL。從此VHDL在電子設(shè)計領(lǐng)域得到廣泛應(yīng)用,并逐步取代了原有的非標(biāo)準(zhǔn)硬件描述語言[2]。</p><p> VHDL作為一個規(guī)范語言和建模語言,隨著它的標(biāo)準(zhǔn)化,出現(xiàn)了一些支持該語言的行為仿真器。由于創(chuàng)建VHDL的最初目標(biāo)是用于標(biāo)準(zhǔn)文檔的建立和電路功能模擬,其基本想法是在高層次上描述系統(tǒng)和元件的行為
23、。但到了20世紀(jì)90年代初,人們發(fā)現(xiàn),VHDL不僅可以作為系統(tǒng)模擬的建模工具,而且可以作為電路系統(tǒng)的設(shè)計工具:可以利用軟件工具將VHDL源碼自動地轉(zhuǎn)化為文本方式表達(dá)的基本邏輯元件連接圖,即網(wǎng)表文件。這種方法顯然對于電路自動設(shè)計是一個極大的推進。很快,電子設(shè)計領(lǐng)域出現(xiàn)了第一個軟件設(shè)計工具,即VHDL邏輯綜合器,它可以標(biāo)準(zhǔn)地將VHDL的部分語句描述轉(zhuǎn)化為具體電路實現(xiàn)的網(wǎng)表文件。</p><p> 1993年,IEE
24、E對VHDL進行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴展了VHDL的內(nèi)容,公布了新版本的VHDL,即IEEE標(biāo)準(zhǔn)的1076-1993版本。現(xiàn)在,VHDL和Verilog作為IEEE的工業(yè)標(biāo)準(zhǔn)硬件描述語言,得到眾多EDA公司的支持,在電子工程領(lǐng)域,已成為事實上的通用硬件描述語言[3]。</p><p> VHDL語言具有很強的電路描述和建模能力,能從多個層次對數(shù)字系統(tǒng)進行建模和描述,從而大大簡化了硬件設(shè)計任務(wù)
25、,提高了設(shè)計效率和可靠性。VHDL允許以下三種描述方式:</p><p> ?。?)結(jié)構(gòu)描述:描述該設(shè)計單元的硬件結(jié)構(gòu),即該硬件是如何構(gòu)成的。主要使用配置指定語句及元件例化語句描述元件的類型及元件的互連關(guān)系。</p><p> (2)行為描述:描述該設(shè)計單元的功能,即該硬件能做些什么。主要使用進程語句,以算法形式描述數(shù)據(jù)的變換和傳送。</p><p> ?。?)數(shù)
26、據(jù)流方式:以類似于寄存器傳輸級的方式描述數(shù)據(jù)的傳輸和變換。主要使用并行的信號賦值語句,既顯式表示了設(shè)計單元的行為,也隱式表示了設(shè)計單元的結(jié)構(gòu)。</p><p> VHDL具有與具體硬件電路無關(guān)和與設(shè)計平臺無關(guān)的特性,并具有良好的電路行為描述和系統(tǒng)描述能力,并在語言易讀性和層次化結(jié)構(gòu)化設(shè)計方面,表現(xiàn)了強大的生命力和應(yīng)用潛力。因此,VHDL在支持各種模式的設(shè)計方法、自項向下與自底向上或混合方法方面,在面對當(dāng)今許多電
27、子產(chǎn)品生命周期的縮短,需要多次重新設(shè)計以融入最新技術(shù),改變工藝等方面都表現(xiàn)了良好的適應(yīng)性。用VHDL進行電子系統(tǒng)設(shè)計的一個很大的優(yōu)點是設(shè)計者可以專心致力于其功能的實現(xiàn),而不需要對不影響功能的工藝有關(guān)的因素花費過多的時間和精力。此外,它支持大規(guī)模設(shè)計的分解和己有設(shè)計的再利用,一個大規(guī)模設(shè)計不可能一個人獨立完成,它將由多個人甚至多個項目組共同完成。VHDL中設(shè)計實體(design entity)的概念、程序包(package)的概念、設(shè)計庫
28、(library)的概念為設(shè)計的分解和設(shè)計的再利用提供了有力的支持[4]。</p><p><b> 3. 主要功能</b></p><p> 本設(shè)計主要是利用VHDL語言設(shè)計一個多功能信號發(fā)生器,根據(jù)輸入信號的選擇可以輸出方波、三角波、正弦波和階梯波4種信號,并且可以通過示波器觀察到所選擇的波形。</p><p> 3.1 功能模塊的劃
29、分</p><p> 信號發(fā)生器的結(jié)構(gòu)框圖如圖1所示:</p><p> 圖1 信號發(fā)生器的結(jié)構(gòu)框圖</p><p> 其中信號產(chǎn)生模塊將產(chǎn)生所需的各種信號,信號發(fā)生器的控制模塊可以用數(shù)據(jù)選擇器實現(xiàn),用4選1數(shù)據(jù)選擇器實現(xiàn)對4種信號的選擇。最后將波形數(shù)據(jù)送入D/A轉(zhuǎn)換器,將數(shù)字信號轉(zhuǎn)換為模擬信號輸出。用示波器測試D/A轉(zhuǎn)換器的輸出,可以觀測到4種信號的輸出。&
30、lt;/p><p> 3.2 主要功能的實現(xiàn)</p><p> 3.2.1方波的實現(xiàn)</p><p> 產(chǎn)生方波,是通過交替送出全0和全1實現(xiàn),每32個時鐘翻轉(zhuǎn)一次。</p><p> 其VHDL代碼如下:</p><p> library ieee;</p><p> use ieee
31、.std_logic_1164.all;</p><p> entity square is</p><p> port(clk,clr:in std_logic;</p><p> q:out integer range 0 to 255);</p><p> end square;</p><p> ar
32、chitecture one of square is</p><p> signal a:bit; </p><p><b> begin</b></p><p> process(clk,clr)</p><p> variable cnt:integer;</p><p><b
33、> begin </b></p><p> if clr='0' then</p><p><b> a<='0';</b></p><p> elsif clk'event and clk='1' then</p><p> if
34、 cnt<31 then</p><p> cnt:=cnt+1;</p><p><b> else</b></p><p><b> cnt:=0;</b></p><p><b> a<=not a;</b></p><p>&
35、lt;b> end if;</b></p><p><b> end if;</b></p><p> end process;</p><p> process(clk,a)</p><p><b> begin</b></p><p> if
36、 clk'event and clk='1' then</p><p> if a='1' then</p><p><b> q<=255;</b></p><p><b> else</b></p><p><b> q<=0
37、;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process;</p><p><b> end one;</b></p><p> 其仿真
38、波形如圖2所示:</p><p><b> 圖2 方波仿真圖</b></p><p> 其生成元器件如圖3所示:</p><p> 圖3 方波元器件生成圖</p><p> 3.2.2三角波的實現(xiàn)</p><p> 該模塊產(chǎn)生的三角波以64個時鐘為一個周期,輸出q每次加減8。</p
39、><p> 其VHDL代碼如下:</p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity delta is</p>&
40、lt;p> port(clk,reset:in std_logic;</p><p> q:out std_logic_vector(7 downto 0));</p><p> end delta;</p><p> architecture delta_arc of delta is</p><p><b> b
41、egin</b></p><p> process(clk,reset)</p><p> variable tmp:std_logic_vector(7 downto 0);</p><p> variable a:std_logic;</p><p><b> begin </b></p&g
42、t;<p> if reset='0' then</p><p> tmp:="00000000";</p><p> elsif clk'event and clk='1' then</p><p> if a='0' then</p><p>
43、; if tmp="11111000" then </p><p> tmp:="11111111";</p><p><b> a:='1';</b></p><p><b> else</b></p><p> tmp:=tmp+
44、8;</p><p><b> end if;</b></p><p><b> else</b></p><p> if tmp="00000111" then</p><p> tmp:="00000000";</p><p&g
45、t;<b> a:='0';</b></p><p><b> else</b></p><p> tmp:=tmp-8;</p><p><b> end if;</b></p><p><b> end if;</b><
46、/p><p><b> end if;</b></p><p><b> q<=tmp;</b></p><p> end process;</p><p> end delta_arc;</p><p> 其仿真波形如圖4所示:</p><p
47、><b> 圖4 三角波仿真圖</b></p><p> 其生成元器件如圖5所示:</p><p> 圖5 三角波元器件生成圖</p><p> 3.2.3正弦波的實現(xiàn)</p><p> 該模塊產(chǎn)生以64個時鐘為一個周期的正弦波。</p><p> 其VHDL代碼如下:</
48、p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity sin is</p><p> port(clk,clr:in std_logi
49、c;</p><p> d:out integer range 0 to 255);</p><p><b> end sin;</b></p><p> architecture sin_arc of sin is</p><p><b> begin</b></p><
50、;p> process(clk,clr)</p><p> variable tmp:integer range 0 to 63;</p><p><b> begin</b></p><p> if clr='0' then</p><p><b> d<=0;</
51、b></p><p> elsif clk'event and clk='1' then</p><p> if tmp=63 then</p><p><b> tmp:=0;</b></p><p><b> else</b></p><
52、p> tmp:=tmp+1;</p><p><b> end if;</b></p><p> case tmp is</p><p> when 00=>d<=255; when 01=>d<=254; when 02=>d<=252;</p><p> when
53、03=>d<=249; when 04=>d<=245; when 05=>d<=239;</p><p> when 06=>d<=233; when 07=>d<=225; when 08=>d<=217;</p><p> when 09=>d<=207; when 10=>d<=19
54、7; when 11=>d<=186;</p><p> when 12=>d<=174; when 13=>d<=162; when 14=>d<=150;</p><p> when 15=>d<=137; when 16=>d<=124; when 17=>d<=112;</p>&
55、lt;p> when 18=>d<=99; when 19=>d<=87; when 20=>d<=75;</p><p> when 21=>d<=64; when 22=>d<=53; when 23=>d<=43;</p><p> when 24=>d<=34; when 25
56、=>d<=26; when 26=>d<=19;</p><p> when 27=>d<=13; when 28=>d<=8; when 29=>d<=4;</p><p> when 30=>d<=1; when 31=>d<=0; when 32=>d<=0;</
57、p><p> when 33=>d<=1; when 34=>d<=4; when 35=>d<=8; </p><p> when 36=>d<=13; when 37=>d<=19; when 38=>d<=26;</p><p> when 39=>d<=34;
58、 when 40=>d<=43; when 41=>d<=53;</p><p> when 42=>d<=64; when 43=>d<=75; when 44=>d<=87;</p><p> when 45=>d<=99; when 46=>d<=112; when 47=>d<
59、;=124;</p><p> when 48=>d<=137; when 49=>d<=150; when 50=>d<=162;</p><p> when 51=>d<=174; when 52=>d<=186; when 53=>d<=197;</p><p> when 54=&
60、gt;d<=207; when 55=>d<=217; when 56=>d<=225;</p><p> when 57=>d<=233; when 58=>d<=239; when 59=>d<=245;</p><p> when 60=>d<=249; when 61=>d<=252; w
61、hen 62=>d<=254;</p><p> when 63=>d<=255; </p><p> when others=>null;</p><p><b> end case;</b></p><p><b> end if;</b></p>
62、;<p> end process;</p><p> end sin_arc;</p><p> 其仿真波形如圖6所示:</p><p><b> 圖6 正弦波仿真圖</b></p><p> 其生成元器件如圖7所示:</p><p> 圖7 正弦波元器件生成圖<
63、/p><p> 3.2.4階梯波的實現(xiàn)</p><p> 改變該模塊遞增的常數(shù),可以改變階梯的個數(shù)。</p><p> 其VHDL代碼如下:</p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use
64、 ieee.std_logic_unsigned.all;</p><p> entity ladder is</p><p> port(clk,reset:in std_logic;</p><p> q:out std_logic_vector(7 downto 0));</p><p> end ladder;</p&g
65、t;<p> architecture ladder_arc of ladder is</p><p><b> begin</b></p><p> process(clk,reset)</p><p> variable tmp:std_logic_vector(7 downto 0);</p><
66、p> variable a:std_logic;</p><p><b> begin</b></p><p> if reset='0' then</p><p> tmp:="00000000";</p><p> elsif clk'event and c
67、lk='1' then</p><p> if a='0' then</p><p> if tmp="11111111" then </p><p> tmp:="00000000";</p><p><b> a:='1';</
68、b></p><p><b> else</b></p><p> tmp:=tmp+16; --階梯常數(shù)為16,可修改</p><p><b> a:='1';</b></p><p><b> end if;</b></p>&l
69、t;p><b> else</b></p><p> a:='0'; --循環(huán)計數(shù)</p><p><b> end if;</b></p><p><b> end if;</b></p><p><b> q<=tmp;<
70、;/b></p><p> end process;</p><p> end ladder_arc[5];</p><p> 其仿真波形如圖8所示:</p><p><b> 圖8 階梯波仿真圖</b></p><p> 其生成元器件如圖9所示:</p><p
71、> 圖9 階梯波元器件生成圖</p><p> 3.2.5四選一輸出波形選擇模塊</p><p> 根據(jù)外部的開關(guān)狀態(tài)可以選擇輸出的波形。</p><p> 其VHDL代碼如下:</p><p> library ieee;</p><p> use ieee.std_logic_1164.all;&
72、lt;/p><p> entity select4_1 is</p><p> port(sel:in std_logic_vector(1 downto 0);</p><p> d0,d1,d2,d3:in std_logic_vector(7 downto 0);</p><p> q:out std_logic_vector(7
73、downto 0));</p><p> end select4_1;</p><p> architecture one of select4_1 is</p><p><b> begin</b></p><p> process(sel)</p><p><b> beg
74、in</b></p><p> case sel is</p><p> when "00"=>q<=d0;</p><p> when "01"=>q<=d1;</p><p> when "10"=>q<=d2;</p
75、><p> when "11"=>q<=d3;</p><p><b> end case;</b></p><p> end process;</p><p><b> end one;</b></p><p> 其波形仿真如圖10所示
76、:</p><p> 圖10 四選一信號選擇仿真圖</p><p> 其生成元器件如圖11所示:</p><p> 圖11 4選1信號選擇元器件生成圖</p><p> 3.3 多波形信號發(fā)生器</p><p> 新建一工程,加載上述模塊,利用原理圖輸入法生成整體多波形信號發(fā)生器。</p>&l
77、t;p> 整體RTL圖如圖12所示:</p><p> 圖12 整體多波形信號發(fā)生器RTL圖</p><p> 整體多波形信號發(fā)生器仿真如圖13所示:</p><p> 圖13 整體多波形信號發(fā)生器仿真圖</p><p><b> 4. 外圍電路設(shè)計</b></p><p> 4
78、.1基于EPM1270T144C5芯片的開發(fā)板介紹</p><p> 開發(fā)板具體功能如圖14所示</p><p> 圖14 基于EPM1270T144C5芯片的開發(fā)板</p><p> 4.2 D/A轉(zhuǎn)換器</p><p> 在整體系統(tǒng)中,波形的幅度值被量化成數(shù)字值存儲在ROM中,通過一組數(shù)據(jù)線輸出代表二進制編碼的電平信號。為了將數(shù)字
79、信號轉(zhuǎn)換成模擬信號,需要用到數(shù)一模轉(zhuǎn)換器,簡稱DAC (Digital-Analog Converter)。為了數(shù)據(jù)處理結(jié)果的準(zhǔn)確性,DAC轉(zhuǎn)換器必須有足夠的轉(zhuǎn)換精度,同時為了能夠在較高頻率下工作,它必須有足夠快的轉(zhuǎn)換速度。因此,轉(zhuǎn)換精度和轉(zhuǎn)換速度是衡量DAC轉(zhuǎn)換器性能優(yōu)劣的主要標(biāo)志。</p><p> 目前常見的D/A轉(zhuǎn)換器中,有權(quán)電阻網(wǎng)絡(luò)D/A轉(zhuǎn)換器,倒梯形電阻網(wǎng)絡(luò)D/A轉(zhuǎn)換器,權(quán)電阻網(wǎng)絡(luò)D/A轉(zhuǎn)換器,倒梯
80、形電阻網(wǎng)絡(luò)D/A轉(zhuǎn)換器、權(quán)電流型D/A轉(zhuǎn)換器、權(quán)電容型網(wǎng)絡(luò)D/A轉(zhuǎn)換器以及開關(guān)樹型D/A轉(zhuǎn)換器幾類型。本設(shè)計中采用倒T形電阻網(wǎng)絡(luò)的單片集成D/A轉(zhuǎn)換器AD7520,其內(nèi)部結(jié)構(gòu)如圖所示,它的輸入為10位二十制數(shù),采用CMOS電路構(gòu)成的模擬開關(guān),為了降低開關(guān)的導(dǎo)通內(nèi)阻,開關(guān)電路的電源電壓設(shè)計在15V左右。使用AD7520時需要外加運算放大器。運算放大器的反饋電阻可以使用其內(nèi)部的反饋電阻R,也可以另外選取反饋電阻連接到Iout1與放大器輸出之
81、間。外接的參考電壓VREF必須保證有足夠的穩(wěn)定度,才能確保應(yīng)有的轉(zhuǎn)換精度。</p><p> 圖15 AD7520內(nèi)部結(jié)構(gòu)</p><p> 電路原理如圖16所示,DO-D7對應(yīng)ROM的8位輸出,D/A的最低兩位直接接地,參考電壓采用5V,開關(guān)電路的電源電壓為12V,由于參考電壓直接影響到輸出,故必須保證它有足夠的穩(wěn)定度,在電源和地之間應(yīng)當(dāng)有去耦電容,并盡可能的接近IC引腳,這將有助于
82、濾除電源噪聲。</p><p> 圖16 D/A 電路原理圖</p><p> 4.3示波器觀察圖形</p><p> 在沒有分頻的情況下,直接利用開發(fā)板上的時鐘脈沖作為輸入信號,將輸出信號通過開發(fā)板上數(shù)模轉(zhuǎn)換器轉(zhuǎn)換成模擬信號,改變選擇值和時鐘頻率就可以在示波器上觀察到相應(yīng)的波形。</p><p> 通過示波器可以觀察到波形幅度約為2
83、.4V。</p><p> 將選擇鍵置為00時觀察到方波波形如圖17所示:</p><p><b> 圖17 方波波形</b></p><p> 將選擇鍵置為01時觀察到三角波波形如圖18所示:</p><p><b> 圖18 三角波波形</b></p><p>
84、 將選擇值置為10時觀察到正弦波如圖19所示:</p><p><b> 圖19 正弦波波形</b></p><p> 將選擇鍵置為11時觀察到階梯波如圖20所示:</p><p><b> 圖20 階梯波波形</b></p><p><b> 結(jié) 論</b></
85、p><p> 通過該設(shè)計使我全面熟悉、掌握VHDL語言基本知識,掌握利用VHDL語言對信號發(fā)生器的編程和時序邏輯電路編程,把編程和實際結(jié)合起來,熟悉編制和調(diào)試程序的技巧,掌握分析結(jié)果的若干有效方法,進一步提高動手能力,培養(yǎng)使用設(shè)計綜合電路的能力,養(yǎng)成提供文檔資料的習(xí)慣和規(guī)范編程的思想。</p><p> 該設(shè)計因為輸入信號是通過開發(fā)板上的時鐘頻率直接引入的,并沒有通過分頻來實現(xiàn),所以可以選
86、擇的輸入信號是有限的,選擇頻率不當(dāng)時,示波器上相應(yīng)的波形并不能夠清楚地顯示出來??梢酝ㄟ^分頻解決這一問題,也可以選擇更精確的晶振來解決。</p><p><b> 參 考 文 獻(xiàn)</b></p><p> [1]汪國強.EDA技術(shù)與應(yīng)用.北京:電子工業(yè)出版社,2007.4</p><p> [2]黃正瑾.CPLD系統(tǒng)技術(shù)入門與應(yīng)用[M].
87、北京:電子工業(yè)出版社,2002</p><p> [3]潘松,黃繼業(yè).EDA技術(shù)與VHDL[M].北京:清華大學(xué)出版社,2006.389-39 </p><p> [4]潘景良.程控任意波形功率驅(qū)動電源的研制[J].南京:南京理工大學(xué)測試計量技術(shù)及儀器專業(yè),2004</p><p> [5]王振紅.VHDL數(shù)字電路設(shè)計與應(yīng)用實踐教程.北京:機械工業(yè)出版社,20
88、03.6</p><p><b> 致 謝</b></p><p> 本論文的工作是在我的導(dǎo)師:陳華寶老師的悉心指導(dǎo)下完成的,導(dǎo)師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度和科學(xué)的工作方法給了我極大的影響和幫助,他的博學(xué)多識給予我大量的指導(dǎo),正是在導(dǎo)師的諄諄教導(dǎo)下,我不斷克服來自于方方面面的困難,最終較為順利的完成了畢業(yè)設(shè)計工作,在此向我的指導(dǎo)老師致以深沉的敬意和誠摯的謝意! 我還要感謝畢業(yè)
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 多波形函數(shù)信號發(fā)生器的設(shè)計-畢業(yè)論文
- 多波形函數(shù)信號發(fā)生器的設(shè)計-畢業(yè)論文
- 基于cpld的多波形信號發(fā)生器的設(shè)計
- vhdl信號發(fā)生器論文
- 波形發(fā)生器畢業(yè)論文
- 波形發(fā)生器畢業(yè)論文
- 基于vhdl語言信號發(fā)生器的設(shè)計--eda課程設(shè)計
- 基于vhdl的函數(shù)信號發(fā)生器的設(shè)計畢業(yè)設(shè)計
- 基于labview的信號發(fā)生器設(shè)計畢業(yè)論文
- 畢業(yè)論文 基于fpga的信號發(fā)生器設(shè)計
- 基于labview的信號發(fā)生器設(shè)計畢業(yè)論文
- 信號波形發(fā)生器的設(shè)計畢業(yè)設(shè)計
- 多功能波形發(fā)生器的設(shè)計 畢業(yè)論文
- 基于dds信號發(fā)生器的設(shè)計畢業(yè)論文
- 畢業(yè)論文--基于fpga的信號發(fā)生器設(shè)計
- 基于dsp的信號發(fā)生器的設(shè)計畢業(yè)論文
- 基于fpga的多波形發(fā)生器設(shè)計
- 基于dds的信號發(fā)生器的設(shè)計 畢業(yè)論文
- 基于fpga的dds信號發(fā)生器設(shè)計【畢業(yè)論文】
- 基于fpga的函數(shù)信號發(fā)生器設(shè)計畢業(yè)論文
評論
0/150
提交評論