第一步,用波形軟件產生某波形數據文件,如Guagle_wave_波形Mif文件生成軟件,可產生正弦、三角,鋸齒等波形數據,后綴.mif,如果沒有,則在第x不必須通過紛雜計算獲得。
第二步,其次,在QuartusII開發軟件建立項目。
第三部, 在QuartusII下,點擊選取New/Memory/Hexadecimal(Intel-Fomat)File,如下圖建立波形文件。

點擊Ok后在新界面窗口輸入必行點數Number,如64,128,256,512,1024… 位寬選8位,或更多。一般選8位。 
出現hex1.hex如圖,

在填入數據后保存為與項目名稱相同的.hex文件,如sindata.hex,數據填入先打開第一步產生的后綴為.mif的文件如圖:

用鼠標全選復制粘貼到.hex文件中,保存。關閉mif文件。
第四部:選擇Tools如圖




直接下一步next
Finsh后就生成了一個sinxdata的波形數據項目文件,綜合后就可元件化使用。
Library ieee;
Use ieee.std_logic_1164.all;
Use ieee.std_logic_unsigned.all;
Entity sinx is
Port(clk:in std_logic;
Q:out std_logic_vector(7 downto 0));
end;
Architecture ss of sinx is
signal qq:std_logic_vector(9 downto 0);
component sinxdata IS --調用剛生成的波形數據文件。
PORT ( address : IN STD_LOGIC_VECTOR (9 DOWNTO 0);
clock : IN STD_LOGIC ;
q : OUT STD_LOGIC_VECTOR (7 DOWNTO 0) );
end component;
begin
process(clk)
begin
if clk'event and clk='1' then
qq<=qq+1;
end if;
end process;
U:sinxdata port map(qq,clk,q);
end;
|