Xilinx FPGA使用——ROM初始化文件

在調用ROM的IP Core時,需要對其進行初始化,利用MATLAB生成其初始化數據文件。

工具:ISE 14.7、MATLAB、notepad++

廢話不多說,直接上MATLAB代碼,生成了一個1024個正餘弦文本文件,有些細節不用管,是我後面涉及到FFT用到的東西。實際上只需要後面打開文件寫入那幾句代碼即可。

clear all
clc
f_signal = 50*10^3;                %信號頻率Hz
f_sample = 10^6;                   %採樣頻率Hz
T = 1/f_sample;      
data_length = 1024;
n = 0:data_length-1;
x = n/f_sample;
y1 = 1+cos(2*pi*f_signal*x);
y2 = 1+sin(2*pi*f_signal*x);
y1 = y1 * 32678;
y2 = y2 * 32678;
fid = fopen('F:\Xilinx\project\data\cos_data1.txt','wt');
fprintf(fid,'%.0f \n',y1);
fclose(fid);
fid = fopen('F:\Xilinx\project\data\sin_data1.txt','wt');
fprintf(fid,'%.0f \n',y2);
fclose(fid);

注意fprintf(fid,'%.0f \n',y1); 中%.0f與\n之間是有個空格的。

生成的數據如上圖所示,每個數據後面緊跟一個”空格“,將其替換爲”,“(半角逗號),將最後一個數據的”,“替換成”;“(半角分號)。然後在數據最上面增加兩句:

memory_initialization_radix=10; 
memory_initialization_vector=

”10“代表十進制數,然後將文本後綴”.txt“,改爲”.coe“,即爲ROM初始化文件格式。然後在IP core生成器重添加該文件即可,注意如果文件格式有問題,在添加後會出現紅色的提示文字,如果沒有則代表添加的文件沒問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章