版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> EDA設(shè)計(jì)實(shí)驗(yàn)</b></p><p> 題 目: 函數(shù)信號(hào)發(fā)生器 </p><p> 作 者: XXXXX </p><p> 所在學(xué)院: 信息科學(xué)與工程學(xué)院
2、 </p><p> 專業(yè)年級(jí): XXXXXX </p><p> 指導(dǎo)教師: XXXXXX </p><p> 職 稱: 講師 </p><p> 2011 年 12 月
3、 11 日</p><p><b> 函數(shù)信號(hào)發(fā)生器</b></p><p> 摘要:函數(shù)信號(hào)發(fā)生器在生產(chǎn)實(shí)踐和科技領(lǐng)域有著廣泛的應(yīng)用。本設(shè)計(jì)是采用了EDA技術(shù)設(shè)計(jì)的函數(shù)信號(hào)發(fā)生器。此函數(shù)信號(hào)發(fā)生器的實(shí)現(xiàn)是基于VHDL語(yǔ)言描述各個(gè)波形產(chǎn)生模塊,然后在QuartusⅡ軟件上實(shí)現(xiàn)波形的編譯,仿真和下載到Cyclone芯片上。整個(gè)系統(tǒng)由波形產(chǎn)生模塊和波形選擇模塊兩個(gè)部
4、分組成。最后經(jīng)過(guò)QuartusⅡ軟件仿真,證明此次設(shè)計(jì)可以輸出正弦波、方波、三角波,鋸齒波,階梯波等規(guī)定波形,并能根據(jù)波形選擇模塊的設(shè)定來(lái)選擇波形輸出。</p><p> 關(guān)鍵字:函數(shù)信號(hào)發(fā)生器;Cyclone;VHDL;QuartusⅡ</p><p><b> 引言:</b></p><p> 函數(shù)信號(hào)發(fā)生器即通常所說(shuō)的信號(hào)發(fā)生器是一
5、種常用的信號(hào)源,廣泛應(yīng)用于通信,雷達(dá),測(cè)控,電子對(duì)抗以及現(xiàn)代化儀器儀表等領(lǐng)域,是一種為電子測(cè)量工作提供符合嚴(yán)格要求的電信號(hào)設(shè)備是最普通、最基本也是應(yīng)用最廣泛的電子儀器之一,幾乎所有電參量的測(cè)量都要用到波形發(fā)生器。隨著現(xiàn)代電子技術(shù)的飛速發(fā)展,現(xiàn)代電子測(cè)量工作對(duì)函數(shù)信號(hào)信號(hào)發(fā)生器的性能提出了更高的要求,不僅要求能產(chǎn)生正弦波、方波等標(biāo)準(zhǔn)波形,還能根據(jù)需要產(chǎn)生任意波性,且操作方便,輸出波形質(zhì)量好,輸出頻率范圍寬,輸出頻率穩(wěn)定度、準(zhǔn)確度、及分辨率
6、高等。本文基于EDA設(shè)計(jì)函數(shù)信號(hào)發(fā)生器,并產(chǎn)生穩(wěn)定的正弦波、方波、鋸齒波、三角波、階梯波。</p><p><b> 正文:</b></p><p> 1、Quartus II軟件簡(jiǎn)介</p><p> 1)Quartus II軟件介紹</p><p> Quartus II 是Alera公司推出的一款功能強(qiáng)大,
7、兼容性最好的EDA工具軟件。該軟件界面友好、使用便捷、功能強(qiáng)大,是一個(gè)完全集成化的可編程邏輯設(shè)計(jì)環(huán)境,具有開(kāi)放性、與結(jié)構(gòu)無(wú)關(guān)、多平臺(tái)完全集成化豐富的設(shè)計(jì)庫(kù)、模塊化工具、支持多種硬件描述語(yǔ)言及有多種高級(jí)編程語(yǔ)言接口等特點(diǎn)。</p><p> Quartus II是Altera公司推出的CPLD/FPGA開(kāi)發(fā)工具,Quartus II提供了完全集成且與電路結(jié)構(gòu)無(wú)關(guān)的開(kāi)發(fā)包環(huán)境,具有數(shù)字邏輯設(shè)計(jì)的全部特性,包括:可利
8、用原理圖、結(jié)構(gòu)框圖、VerilogHDL、AHDL和VHDL完成電路描述,并將其保存為設(shè)計(jì)實(shí)體文件;芯片平面布局連線編輯;功能強(qiáng)大的邏輯綜合工具;完備的電路功能仿真與時(shí)序邏輯仿真工具;定時(shí)/時(shí)序分析與關(guān)鍵路徑延時(shí)分析;可使用SignalTap II邏輯分析工具進(jìn)行嵌入式的邏輯分析;支持軟件源文件的添加和創(chuàng)建,并將它們鏈接起來(lái)生成編程文件;使用組合編譯方式可一次完成整體設(shè)計(jì)流程;自動(dòng)定位編譯錯(cuò)誤;高效的期間編程與驗(yàn)證工具;可讀入標(biāo)準(zhǔn)的ED
9、IF網(wǎng)表文件、VHDL網(wǎng)表文件和Verilog網(wǎng)表文件;能生成第三方EDA軟件使用的VHDL網(wǎng)表文件和Verilog網(wǎng)表文件。</p><p> 2)Quartus II軟件設(shè)計(jì)流程</p><p> 打開(kāi)Quartus II軟件。</p><p> 選擇路徑。注意:工作目錄名不能有中文。</p><p><b> 添加設(shè)計(jì)
10、文件。</b></p><p> 選擇FPGA器件。Family選擇Cyclone,240,8。</p><p> 建立原理圖或用VHDL語(yǔ)言描述設(shè)計(jì)電路。</p><p> 對(duì)原理圖或用VHDL語(yǔ)言進(jìn)行編譯,無(wú)誤后進(jìn)行添加信號(hào)。</p><p> 對(duì)上述電路進(jìn)行仿真。</p><p><b&
11、gt; 進(jìn)行管腳分配。</b></p><p><b> 全局編譯。</b></p><p> 采用JTAG或AS模式進(jìn)行下載測(cè)試。</p><p> 圖1Quartus II軟件運(yùn)行界面</p><p> 2、設(shè)計(jì)主要任務(wù)及要求:</p><p> 波形選擇:通過(guò)對(duì)撥碼開(kāi)
12、關(guān)狀態(tài)的設(shè)置選擇不同的輸出波形。</p><p> 波形發(fā)生:通過(guò)軟件實(shí)現(xiàn)各類波形的產(chǎn)生(數(shù)字量)。</p><p> 波形清零:通過(guò)撥碼開(kāi)關(guān)狀態(tài)的改變,輸出直流波。</p><p> 波形的觀測(cè):實(shí)現(xiàn)波形的數(shù)/模轉(zhuǎn)換,便于直接在示波器上觀察輸出波形。</p><p> 3、設(shè)計(jì)方案、原理、過(guò)程、調(diào)試</p><p
13、><b> 總體方案</b></p><p> 本論文設(shè)計(jì)的函數(shù)信號(hào)發(fā)生器主要由波形選擇部分,波形發(fā)生部分和輸出部分組成,其硬件結(jié)構(gòu)圖如圖1所。其中波形選擇部分是數(shù)據(jù)選擇器電路;波形發(fā)生部分包括遞增斜波產(chǎn)生電路,遞減斜波產(chǎn)生電路,三角波產(chǎn)生電路,斜梯波產(chǎn)生電路,正弦波產(chǎn)生電路和方波產(chǎn)生電路;輸出部分是數(shù)/模轉(zhuǎn)換電路。其中數(shù)/模轉(zhuǎn)換模塊是通過(guò)硬件實(shí)現(xiàn)的,其它都是依靠軟件實(shí)現(xiàn)的。<
14、;/p><p> 根據(jù)實(shí)驗(yàn)箱的硬件資源,本次設(shè)計(jì)選用ALTERA公司MAX7000S系列的EPM7128SLC84-15作為主控芯片。它是一種基于乘積項(xiàng)結(jié)構(gòu)的復(fù)雜可編程邏輯器件,它的基本邏輯單元是由一些與、或陣列加上觸發(fā)器構(gòu)成,其中與或陣列完成組合邏輯功能,觸發(fā)器完成時(shí)序邏輯。它的邏輯控制靈活,可反復(fù)編程,有利于系統(tǒng)的擴(kuò)展和修改,而且其集成度高,保密性好。在實(shí)際應(yīng)用中,它體積小、功耗低、價(jià)格便宜,維護(hù)和升級(jí)都十分方
15、便,具有較好的應(yīng)用前景。</p><p><b> 圖2 硬件結(jié)構(gòu)圖</b></p><p><b> 數(shù)模轉(zhuǎn)換器原理</b></p><p> D/A轉(zhuǎn)換器輸入的是數(shù)字量,經(jīng)轉(zhuǎn)換后輸出的是模擬量。有關(guān)D/A轉(zhuǎn)換器的技術(shù)性能很多,例如分辨率、建立時(shí)間、接口形式、偏移量誤差以及線形度等等。</p><
16、;p> 分辨率是D/A轉(zhuǎn)換器對(duì)輸入量變化敏感程度的描述,與輸入數(shù)字量的位數(shù)有關(guān)。數(shù)字量位數(shù)越多,分辨率也就越高。建立時(shí)間是描述D/A轉(zhuǎn)換速度快慢的一個(gè)參數(shù),指從輸入數(shù)字量變化到輸出并達(dá)到終值誤差正負(fù)(1/2)LSB(最低有效位)時(shí)所需時(shí)間。通常以建立時(shí)間來(lái)表示轉(zhuǎn)換速度。D/A轉(zhuǎn)換器與微機(jī)借口方便與否,主要決定于轉(zhuǎn)換器本身是否帶數(shù)據(jù)鎖存器??偟膩?lái)說(shuō)有兩類D/A轉(zhuǎn)換器,一類是不帶鎖存器的,另一類是帶鎖存器的。帶鎖存器的D/A轉(zhuǎn)換器,
17、可以把它看作一個(gè)輸出口,因此可直接在數(shù)據(jù)總線上,而不是另加鎖存器。偏移量誤差是指輸入數(shù)據(jù)量為0的時(shí)候,輸出模擬量對(duì)0的偏移量。這種誤差可以通過(guò)DAC的外接VREF和電位計(jì)加以調(diào)整。線形度是指DAC的實(shí)際轉(zhuǎn)換特性曲線和理想直線之間的最大偏差。</p><p> D/A轉(zhuǎn)換器有2大類:一類是在電子線路中使用,不能使能控制端口,只有數(shù)字量輸入和模擬量輸出;另一類帶有使能控制端口,可以與微機(jī)直接連接。此實(shí)驗(yàn)中采用后者的
18、LM358,以實(shí)現(xiàn)數(shù)字信號(hào)到模擬信號(hào)的轉(zhuǎn)換。</p><p> LM358轉(zhuǎn)換模塊8位D/A,I/O口定義如下:</p><p> D0~D7:數(shù)據(jù)總線,輸入口;</p><p> /CE:轉(zhuǎn)換允許,低電平有效;</p><p> /CS:片選,低電平有效;</p><p> 有兩種輸出方式。第一種,將短路子
19、接在左側(cè)的兩個(gè)銅柱上,D/A轉(zhuǎn)換輸出到D/A OUT區(qū)域的第六個(gè)孔輸出;第二種,將短路子接在右側(cè)的兩個(gè)銅柱上,D/A轉(zhuǎn)換輸出接到LM358的同相輸入端。LM358單電源二運(yùn)放。與AD558配合,將AD558的輸出接到LM358的同相輸入端,作為他的同相輸入信號(hào);在LM358的右上腳,有TEST IN模塊,他的信號(hào)可作為L(zhǎng)M358的反相輸入端。</p><p><b> 單元電路的設(shè)計(jì)</b>
20、;</p><p> 遞增鋸齒波信號(hào)產(chǎn)生模塊</p><p><b> 代碼:</b></p><p> LIBRARY IEEE;--鋸齒波遞增</p><p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSI
21、GNED.ALL;</p><p> ENTITY juchibo_add IS</p><p> PORT (clk,reset:in std_logic;</p><p> q:out std_logic_vector(7 downto 0));</p><p><b> END;</b></p>
22、<p> ARCHITECTURE behave OF juchibo_add IS</p><p><b> BEGIN</b></p><p> PROCESS(clk,reset)</p><p> VARIABLE tmp: std_logic_vector(7 downto 0);</p><
23、p><b> BEGIN </b></p><p> IF reset='0' THEN</p><p> tmp:="00000000";</p><p> ELSIF clk' event and clk='1' THEN</p><p>
24、IF tmp="11111111" THEN</p><p> tmp:="00000000";</p><p><b> ELSE</b></p><p> tmp:=tmp+1;</p><p><b> END IF;</b></p>
25、<p><b> END IF;</b></p><p><b> q<=tmp;</b></p><p> END PROCESS;</p><p><b> END;</b></p><p> 遞增鋸齒波仿真波形:</p><
26、;p> 圖3遞增鋸齒波仿真波形</p><p> 遞增鋸齒波信號(hào)產(chǎn)生模塊元件圖:</p><p> 圖4遞增鋸齒波元件圖</p><p> 遞減鋸齒波信號(hào)產(chǎn)生模塊</p><p><b> 代碼:</b></p><p> LIBRARY IEEE;--鋸齒波遞減</p&g
27、t;<p> USE IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY juchibo_jie IS</p><p> PORT ( clk,reset:in std_logic;</p><p>
28、q:out std_logic_vector(7 downto 0));</p><p><b> END;</b></p><p> ARCHITECTURE behave OF juchibo_jie IS</p><p><b> BEGIN</b></p><p> PROCESS(
29、clk,reset)</p><p> VARIABLE tmp: std_logic_vector(7 downto 0);</p><p><b> BEGIN </b></p><p> IF reset='0' THEN</p><p> tmp:="11111111"
30、;</p><p> ELSIF clk'event and clk='1' THEN</p><p> IF tmp="00000000" THEN</p><p> tmp:="11111111";</p><p><b> ELSE</b>&l
31、t;/p><p> tmp:=tmp-1;</p><p><b> END IF;</b></p><p><b> END IF;</b></p><p><b> q<=tmp;</b></p><p> END PROCESS;<
32、;/p><p><b> END;</b></p><p> 遞減鋸齒波仿真波形:</p><p> 圖5遞減鋸齒波原件圖</p><p> 遞減鋸齒波信號(hào)產(chǎn)生模塊元件圖:</p><p> 圖6遞減鋸齒波元件圖</p><p><b> 三角波信號(hào)產(chǎn)生模
33、塊</b></p><p><b> 代碼:</b></p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p>
34、 entity sanjiaobo is</p><p> port(reset:in std_logic;</p><p> clk:in std_logic;</p><p> q:out std_logic_vector(7 downto 0));</p><p><b> end;</b></p&
35、gt;<p> architecture behave of sanjiaobo is</p><p><b> begin</b></p><p> process(clk,reset)</p><p> variable tmp:std_logic_vector(7 downto 0);</p><
36、p> variable a:std_logic;</p><p><b> begin</b></p><p> if reset='0' then q<="00000000";</p><p> elsif clk'event and clk='1' then&l
37、t;/p><p> if a='0' then</p><p> if tmp="11111110" then</p><p> tmp:="11111111";</p><p><b> a:='1';</b></p><p
38、> else tmp:=tmp+1;</p><p><b> end if;</b></p><p><b> else</b></p><p> if tmp="00000001" then </p><p> tmp:="00000000"
39、;;</p><p><b> a:='0';</b></p><p> else tmp:=tmp-1;</p><p><b> end if;</b></p><p><b> end if;</b></p><p>&l
40、t;b> end if;</b></p><p><b> q<=tmp;</b></p><p> end process;</p><p><b> end;</b></p><p><b> 三角波仿真波形:</b></p>
41、<p><b> 圖7三角波仿真波形</b></p><p> 三角波信號(hào)產(chǎn)生模塊元件圖:</p><p><b> 圖8三角波元件圖</b></p><p><b> 階梯波信號(hào)產(chǎn)生模塊</b></p><p><b> 代碼:</b&g
42、t;</p><p> library ieee;--階梯波</p><p> use ieee.std_logic_1164.all;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY jietibo IS</p><p> PORT (cl
43、k,reset:in std_logic;</p><p> q:out std_logic_vector(7 downto 0));</p><p><b> END;</b></p><p> ARCHITECTURE behave OF jietibo IS</p><p><b> BEGIN&
44、lt;/b></p><p> PROCESS(clk,reset)</p><p> VARIABLE tmp: std_logic_vector(7 downto 0);</p><p><b> BEGIN</b></p><p> IF reset='0' THEN</p>
45、;<p> tmp:="00000000";</p><p> ELSIF clk 'event and clk='1' THEN</p><p> IF tmp="11111111" THEN</p><p> tmp:="00000000";</p&g
46、t;<p><b> ELSE</b></p><p> tmp:=tmp+16; </p><p><b> END IF;</b></p><p><b> END IF;</b></p><p><b> q<=tmp;</
47、b></p><p> END PROCESS;</p><p><b> END;</b></p><p><b> 階梯波仿真波形:</b></p><p><b> 圖9階梯波仿真波形</b></p><p> 階梯波信號(hào)產(chǎn)生模塊元
48、件圖:</p><p><b> 圖10階梯波元件圖</b></p><p><b> 方波信號(hào)產(chǎn)生模塊</b></p><p><b> 代碼:</b></p><p> library ieee;</p><p> use ieee.std
49、_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity fangbo is</p><p> port(clk,reset:in std_logic;</p><p> q:out std_logic_vector(7 downto 0));
50、</p><p><b> end;</b></p><p> architecture behave of fangbo is</p><p> signal a:std_logic;</p><p><b> begin</b></p><p> process
51、(clk,reset) </p><p> variable tmp:std_logic_vector(7 downto 0);</p><p><b> begin</b></p><p> if reset='0' then</p><p><b> a<='0
52、9;;</b></p><p> elsif clk'event and clk='1' then</p><p> if tmp="11111111" then </p><p> tmp:="00000000";</p><p><b>
53、 else </b></p><p> tmp:=tmp+1;</p><p><b> end if;</b></p><p> if tmp<="10000000" then</p><p><b> a<='1';</b>&l
54、t;/p><p><b> else</b></p><p><b> a<='0';</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p&
55、gt; end process;</p><p> process(clk,a) --信號(hào)輸出</p><p><b> begin</b></p><p> if clk'event and clk='1' then</p><p> if a='1' then&l
56、t;/p><p> q<="11111111"; </p><p><b> else </b></p><p> q<="00000000";</p><p><b> end if;</b></p><p>
57、<b> end if;</b></p><p> end process;</p><p><b> end;</b></p><p><b> 方波仿真波形:</b></p><p><b> 圖11方波仿真波形</b></p>
58、<p> 方波信號(hào)產(chǎn)生模塊元件圖:</p><p><b> 圖12方波元件圖</b></p><p><b> 正弦波信號(hào)產(chǎn)生模塊</b></p><p> 正弦波產(chǎn)生模塊Zhengxianbo:</p><p><b> 代碼:</b></p&g
59、t;<p> library ieee; --正弦波</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity Zhengxianbo is</p><p> port(clk,clr
60、:in std_logic;</p><p> d:out integer range 0 to 255);</p><p><b> end;</b></p><p> architecture behave of Zhengxianbo is</p><p><b> begin</b>
61、</p><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>
62、 d<=0;</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>&
63、lt;/p><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>
64、<p> when 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;
65、 when 10=>d<=197; 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=
66、>d<=112;</p><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>
67、 when 24=>d<=34; when 25=>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=>
68、;d<=0; when 32=>d<=0;</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;<
69、/p><p> when 39=>d<=34; 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<
70、=99; when 46=>d<=112; when 47=>d<=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; whe
71、n 53=>d<=197;</p><p> when 54=>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><
72、;p> when 60=>d<=249; when 61=>d<=252; when 62=>d<=254;</p><p> when 63=>d<=255; when others=>null;</p><p><b> end case;</b></p><p>&l
73、t;b> end if;</b></p><p> end process;</p><p><b> end;</b></p><p><b> 正弦波仿真波形:</b></p><p> 圖13正弦波仿真波形</p><p> 正弦波信號(hào)產(chǎn)生
74、模塊元件圖:</p><p><b> 圖14正弦波元件圖</b></p><p><b> 波形輸出選擇器模塊</b></p><p><b> 代碼:</b></p><p> LIBRARY IEEE;--選擇器</p><p> USE
75、 IEEE.STD_LOGIC_1164.ALL;</p><p> USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p> ENTITY Xuanzeqi IS</p><p> PORT ( sel: in std_logic_vector(2 downto 0);</p><p> d1,d2,d3
76、,d4,d5,d6:in std_logic_vector(7 downto 0);</p><p> q:out std_logic_vector(7 downto 0));</p><p><b> END;</b></p><p> ARCHITECTURE behave OF Xuanzeqi is</p><
77、p><b> BEGIN</b></p><p> PROCESS(sel)</p><p><b> BEGIN</b></p><p> CASE sel IS</p><p> WHEN "001"=>q<=d1;--鋸齒波遞增
78、 </p><p> WHEN "010"=>q<=d2; --鋸齒波遞減 </p><p> WHEN "011"=>q<=d3; --三角波 </p><p> WHEN "100"=>q<=d4;
79、--階梯波 </p><p> WHEN "101"=>q<=d5; --方波 </p><p> WHEN "110"=>q<=d6; --正弦波</p><p> WHEN OTHERS=>null;</p><p><b> E
80、ND CASE;</b></p><p> END PROCESS;</p><p><b> END;</b></p><p><b> 選擇器仿真波形:</b></p><p><b> 圖15選擇器波形圖</b></p><p>
81、; 選擇器信號(hào)產(chǎn)生模塊元件圖:</p><p><b> 圖16選擇器元件圖</b></p><p> 函數(shù)發(fā)生器的頂層設(shè)計(jì)</p><p> (1)將上述模塊生成符號(hào),供頂層電路調(diào)用。這些模塊分別是:遞增鋸齒波產(chǎn)生模塊,遞減鋸齒波產(chǎn)生模塊,三角波產(chǎn)生模塊,階梯波產(chǎn)生模塊,方波產(chǎn)生模塊,正弦波信號(hào)產(chǎn)生模塊,選擇器。頂層電路的連接如圖所示
82、:</p><p><b> 圖17頂層電路圖</b></p><p> ?。?)波形選擇電路與輸出波形對(duì)應(yīng)表:</p><p> 圖18電路波形對(duì)應(yīng)圖 </p><p> 管腳分配,下載及下載后的連線圖:</p><p><b> 圖19管腳分配圖&
83、lt;/b></p><p><b> 圖20連線圖</b></p><p><b> 調(diào)試與結(jié)果:</b></p><p> 設(shè)置時(shí)鐘發(fā)生電路模塊,使輸出時(shí)鐘頻率CLK=625KHZ(把20MHZ進(jìn)行32分頻); </p><p> 撥動(dòng)撥碼開(kāi)關(guān),使s[2..0]=“001”,則示波
84、器輸出“遞增鋸齒波“波形如下:</p><p> 圖21遞增鋸齒波波形圖</p><p> 撥動(dòng)撥碼開(kāi)關(guān),使s[2..0]=“010”,則示波器輸出“遞減鋸齒波“波形如下:</p><p> 圖22遞減鋸齒波波形圖</p><p> 撥動(dòng)撥碼開(kāi)關(guān),使s[2..0]=“011”,則示波器輸出“三角波“波形如下: </p>
85、<p><b> 圖23三角波波形圖</b></p><p> 撥動(dòng)撥碼開(kāi)關(guān),使s[2..0]=“100”,則示波器輸出“階梯波“波形如下:</p><p><b> 圖24階梯波波形圖</b></p><p> 撥動(dòng)撥碼開(kāi)關(guān),使s[2..0]=“101”,則示波器輸出“方波“波形如下:</p>
86、;<p><b> 圖25方波波形圖</b></p><p> 撥動(dòng)撥碼開(kāi)關(guān),使s[2..0]=“110”,則示波器輸出“正弦波“波形如下:</p><p><b> 圖26正弦波波形圖</b></p><p><b> 結(jié)論:</b></p><p>&
87、lt;b> 1)能實(shí)現(xiàn)的功能</b></p><p> 從仿真及實(shí)驗(yàn)結(jié)果可以看出,本設(shè)計(jì)較好地滿足了設(shè)計(jì)要求。同時(shí),由于采用模塊化的設(shè)計(jì)方法,系統(tǒng)中的各個(gè)電路均可獨(dú)立實(shí)現(xiàn)各自的功能從而使系統(tǒng)具有較強(qiáng)的可移植性和維護(hù)性,這也為系統(tǒng)的功能擴(kuò)展和升級(jí)提供了很大的便利。</p><p><b> 2)不足之處</b></p><p&
88、gt; 系統(tǒng)上電后的狀態(tài)不明確,若不按要求進(jìn)行初始化操作會(huì)導(dǎo)致系統(tǒng)運(yùn)行出現(xiàn)紊亂,進(jìn)一步設(shè)計(jì)時(shí)可添加提示電路;以及個(gè)別的波形還不是太完美,還有一點(diǎn)缺陷,比如階梯波。</p><p><b> 體會(huì)及感想、收獲:</b></p><p> 本文以函數(shù)發(fā)生器的為設(shè)計(jì)對(duì)象,運(yùn)用EDA技術(shù)的設(shè)計(jì)方法,進(jìn)行各種波形的輸入設(shè)計(jì)、設(shè)計(jì)處理和器件編程。在VHDL語(yǔ)言的編寫中按照語(yǔ)
89、言描述規(guī)范,實(shí)現(xiàn)了幾種波形的軟件和具體邏輯元件結(jié)構(gòu)的硬件映射。結(jié)合FPGA的開(kāi)發(fā)集成環(huán)境QuartusⅡ軟件,產(chǎn)生了函數(shù)信號(hào)發(fā)生器的各種信號(hào),同時(shí)完成了時(shí)序和功能仿真。實(shí)驗(yàn)表明采用該方法能準(zhǔn)確產(chǎn)生正弦波、三角波、方波、鋸齒波等設(shè)計(jì)產(chǎn)生的波形,實(shí)現(xiàn)了信號(hào)發(fā)生器的功能。</p><p> 總而言之,這次實(shí)驗(yàn)讓我更大程度上加深了對(duì)硬件語(yǔ)言及數(shù)模轉(zhuǎn)換電路的理解,特別是硬件語(yǔ)言所特有的并行性。使用者在使用之初,往往會(huì)由于
90、原有的其他高級(jí)語(yǔ)言順序編程思想的限制而犯錯(cuò)誤。但是,當(dāng)熟練后會(huì)發(fā)現(xiàn),硬件語(yǔ)言的這一并行特性對(duì)于硬件的設(shè)計(jì)非常方便,且有助于提高系統(tǒng)的效率。另外有一點(diǎn)非常重要,那就是模塊化的設(shè)計(jì)方法,它不僅有利于分工,而且有利于模塊的移植和擴(kuò)展。</p><p><b> 參考文獻(xiàn):</b></p><p> [1] 汪烈軍,黃志華. 電子設(shè)計(jì)自動(dòng)化(EDA)實(shí)驗(yàn)指導(dǎo)書(shū). 新疆大學(xué)
91、信息科學(xué)與工程學(xué)院,2008</p><p> [2]劉江海.EDA技術(shù).武漢:華中科技大學(xué)出版社,2009.5</p><p> [3]田耘,徐文波,張延偉.無(wú)線通信FPGA設(shè)計(jì).北京:電子工業(yè)出版社,2007.10</p><p> [4]黃仁欣.EDA技術(shù)實(shí)用教程.北京:清華大學(xué)出版社,2006.9</p><p> [5]付家
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- eda課程設(shè)計(jì)---函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)
- eda課程設(shè)計(jì)--信號(hào)發(fā)生器
- 信號(hào)發(fā)生器課程設(shè)計(jì)----函數(shù)信號(hào)發(fā)生器
- eda課程設(shè)計(jì)報(bào)告---正弦函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)
- eda課程設(shè)計(jì)-簡(jiǎn)易信號(hào)發(fā)生器
- eda課程設(shè)計(jì)--dds信號(hào)發(fā)生器
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 信號(hào)發(fā)生器課程設(shè)計(jì)---函數(shù)發(fā)生器的設(shè)計(jì)
- 信號(hào)發(fā)生器課程設(shè)計(jì)報(bào)告--函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)
- 課程設(shè)計(jì)---函數(shù)信號(hào)發(fā)生器
- 課程設(shè)計(jì)-函數(shù)信號(hào)發(fā)生器
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)--基于labview的函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)
- 電工課程設(shè)計(jì)---函數(shù)信號(hào)發(fā)生器
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì) (2)
- 課程設(shè)計(jì)--函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論