微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > ise rom ip核生成后怎么调用

ise rom ip核生成后怎么调用

时间:10-02 整理:3721RD 点击:
生成一个分布式rom output [63:0] fr;
output [9:0] count;
reg [9:0] count=0;
rom rom (
  .a(count), // input [9 : 0] a
  .spo(fr) // output [63 : 0] spo
);

always @( posedge clk) begin
count <= count+1;
end
count在计数,fr输出为什么一直为0?

你检查下有没有设置ROM的初始化值


有的,我不知道那个地址这么设置

初始化有问题



   怎么修改?



   生成ip时有一步是选择rom初始化文件的,lz将正确的文件放进去就ok了



   不是这个原因,我设置的时候导入coe文件了。rom存了1024个32位数。不知道是不是地址设置错误?这样设置会取出fr这个数?
module top( clk,
rst,
count,  fr
    );
input clk;
input rst;
output [31:0] fr;
output [9:0] count ;
reg [9:0] count =0;
rom rom (
  .a(count), // input [9 : 0] a
  .spo(fr) // output [31 : 0] spo
);
always @(posedge clk ) begin
if (rst == 1 )
count  <= 0;
else
count  <= dout+1;
end
endmodule

例化rom的时候能看到啊


我那初始化数据coe导入了,能帮忙看看7楼那小段程序有没有错?

显然有问题,
count  <= dout+1;

dout?   



   count  <= dout+1; 这是打错了,应该是count  <= count +1;

按道理在modelsim仿真一下就可以,很简单的程序,
你的rom为什么没有时钟呢

我的rom没生成好,问题在这,少了.mif文件。重新gencore就好了,ps:把#7 的dout改回count
rom例化确实没时钟...
感谢各位!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top