加载中…
个人资料
nxhsyv
nxhsyv
  • 博客等级:
  • 博客积分:0
  • 博客访问:6,106
  • 关注人气:8
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

ise中rom仿真出现的问题及解决方法

(2017-03-15 23:26:58)
分类: Xilinx/Intel-IP核

2017年3月15日23:28:11

1、代码注意的问题
(1)//五个移位乘法器
always @ (posedge sclk or negedge rst_n)
if(rst_n == 1'b0) begin
result1 <= 'd0;    
result2 <= 'd0;   
result3 <= 'd0;   
result4 <= 'd0;   
result5 <= 'd0;    
  
end 
else if(start_cal_flag == 1'b1) begin //注意下面移位操作的位置要加括号
result1 <= (data_a<<1) (data_a<<1) data_a
data_b;
result2 <= (data_a<<1) (data_a<<1)
(data_b<<1);
result3 <= (data_a<<1) data_a (data_b<<1)
data_b;
result4 <= (data_a<<1) (data_b<<1)
(data_b<<1);
result5 <= data_a (data_b<<1) (data_b<<1)
data_b;
end
(2)
module top_inter(
input wire sclk,
input wire rst_n,
input wire start,
output wire [10:0] w_ram_addr, //写ram地址
output wire [15:0] w_ram_data, //写ram数据
output wire cal_end_flag //计算完220组rs标志
);
//不定义综合工具默认生成单比特信号
wire [7:0] r_rom_data1;
wire [7:0] r_rom_data2;
wire [7:0] r_rom_addr1;
wire [7:0] r_rom_addr2;
inter inter_inst(
.sclk (sclk ),
.rst_n (rst_n ),
.r_rom_data1 (r_rom_data1 ), //读出的rom1数据
.r_rom_data2 (r_rom_data2 ), //读出的rom2数据
.start (start ), //启动模块
     
     
   
.w_ram_addr (w_ram_addr ), //写ram地址
.w_ram_data (w_ram_data ), //写ram数据
.r_rom_addr1 (r_rom_addr1 ), //rom1读地址
.r_rom_addr2 (r_rom_addr2 ), //rom2读地址
.cal_end_flag (cal_end_flag   )
//计算完220组rs标志
// .group_end_flag1 //用于仿真验证
);
rom_220x8 rom_220x8_1 (
  .clka(sclk), // input clka
  .addra(r_rom_addr1), // input [7 : 0]
addra
  .douta(r_rom_data1) // output [7 : 0]
douta
);
rom_220x8 rom_220x8_2 (
  .clka(sclk), // input clka
  .addra(r_rom_addr2), // input [7 : 0]
addra
  .douta(r_rom_data2) // output [7 : 0]
douta
);
endmodule 
2、ise中rom的初始化文件为.coe文件。文件格式如下:
memory_initialization_radix=10;
memory_initialization_vector= 
1,
2,
3,
4,
5,
6,
7,
8,
9,
10;
第一行为进制,下面的为数据。数据之间使用“,”分隔,最后一个数据后使用“;”,数据个数与rom个数相同,否则会出现错误。
3、在ise软件中产生rom的IP核成功后,会自动在ise工程文件夹下的IPcore_dir中产生一个与初始化文件(.coe)名字相同的.mif文件。使用modelsim仿真ise的rom的时候,不仅需要将.coe文件复制到modelsim仿真目录下,也要将这个.mif文件复制过去。否则不能成功初始化rom。
4、需要手动添加ise仿真库,和ise全局仿真文件
5、具体如下图:
(1)ise工程文件夹下ipcore_dir中自动根据.coe文件产生.mif文件http://s5/mw690/006hC78Ezy79x19NaL234&690

(3)modelsim仿真文件夹下添加的ise库http://s16/mw690/006hC78Ezy79x1ikoWPbf&690

0

阅读 收藏 喜欢 打印举报/Report
前一篇:乒乓操作示例
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有