【正文】
遞減到0置最大值ELSE tmp:=tmp1。END PROCESS。圖3 三角波模塊仿真圖程序設(shè)計的是reset復(fù)位信號為0時輸出為0,無對應(yīng)的波形產(chǎn)生。 USE 。end delta。039。139。 置最大值a:=39。 ELSE IF tmp =00000001 THENtmp:=00000000。 遞減運算 END IF。 END PROCESS。模塊程序如下:LIBRARY IEEE。 q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0))。 BEGINIF reset=39。EVENT AND clk=39。 THEN 判斷a數(shù)值,計數(shù)。 ELSEtmp:=tmp+16。 ELSEa:=39。q=tmp。結(jié)構(gòu)圖如下圖所示:8位波形數(shù)據(jù)輸出上圖所示的信號發(fā)生結(jié)構(gòu)中圖中,包含兩個部分:ROM的地址信號發(fā)生器,由6位計數(shù)器擔(dān)任;一個正弦數(shù)據(jù)ROM,由LPM_ROM模塊構(gòu)成,6位地址線,8位數(shù)據(jù)線,一個周期含有64個8位數(shù)據(jù)。正弦波的頻率取決于讀取數(shù)據(jù)的速度。USE 。END sin_rom。 intended_device_family : STRING。 operation_mode : STRING。 width_a : NATURAL。 q_a : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) )。END SYN。entity t is 定義計數(shù)器的實體 port(clk: in std_logic。architecture bhv of t is begin process(clk,clr)variable cqi:std_logic_vector(5 downto 0)。039。139。 賦值,輸出 end process 。圖6 方波模塊仿真圖方波模塊的設(shè)計是當(dāng)內(nèi)部計數(shù)t達到64時,根據(jù)輸出標(biāo)志a的數(shù)值輸出對應(yīng)的數(shù)值,當(dāng)a=0輸出0,也即是方波周期中的低電平,當(dāng)a=1,輸出255,也即是方波周期中的高電平。 ENTITY square ISPORT(clk,clr:IN STD_LOGIC。BEGINPROCESS(clk,clr)VARIABLE t:INTEGER。039。 THEN 檢測時鐘上升沿IF t63 THEN 計數(shù)64個點t:=t+1。 對內(nèi)部a變量取反,a變化已啟動進程END PROCESS。 PROCESS(clk,a)BEGINIF clk39。139。 END IF。輸出波形選擇模塊波形選擇模塊是一個設(shè)計位6選1的數(shù)據(jù)選擇器,其中sel為波形數(shù)據(jù)選擇端口,d0~d5為8位二進制輸入端口,q為8位二進制輸出端口。 ENTITY ch61a ISPORT(sel:IN STD_LOGIC_VECTOR(2 DOWNTO 0)。 ARCHITECTURE behave OF ch61a ISBEGINPROCESS(sel)BEGINCASE sel ISWHEN000=q=d0。 階梯波形輸出WHEN100=q=d4。 END PROCESS。調(diào)試整個系統(tǒng)了原理圖如下圖所示::(復(fù)位信號reset高電平,低電平為不輸出)(1)第一次sel選擇值設(shè)為0,輸出為遞增波,從圖中可以看出,輸出的波形成線性遞增,結(jié)果正確。(5)第五次sel的值設(shè)為4,其輸出的波形是正弦波,從圖中可以看出,輸出的數(shù)據(jù)的變化規(guī)律是正弦規(guī)律。結(jié)合FPGA的開發(fā)集成環(huán)境Quartus2軟件,產(chǎn)生了函數(shù)信號發(fā)生器的各種信號,同時完成了時序和功能仿真。八、心得體會一個學(xué)期的EDA學(xué)習(xí),使我獲益良多。 16。但這些內(nèi)容掌握的程度還不深入,要想能夠融會貫通必須用更多的時間去深入學(xué)習(xí)。本設(shè)計的函數(shù)信號發(fā)生器在設(shè)計上由于設(shè)計時考慮的不夠全面雖然完成了函數(shù)信號的產(chǎn)生,但不夠完善。(7)當(dāng)設(shè)置為其他值時無波形輸出七、設(shè)計結(jié)論本設(shè)計以函數(shù)信號發(fā)生器的功能為設(shè)計對象,運用EDA技術(shù)的設(shè)計方法,進行各種波形的輸入設(shè)計、設(shè)計處理和器件編程。(3)第三次sel的值設(shè)為2,輸出為三角波,其仿真波形如下圖所示,輸出波形線性增大到最大后,再線性減小。WHEN OTHERS=NULL。 方波輸出