在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4054|回复: 9

[原创] 大家看看用Xilinx-XST综合这个单端口RAM为什么就不对,读出来全是0!

[复制链接]
发表于 2011-9-23 09:19:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 canoeeda 于 2011-9-23 17:03 编辑

module ram_ad(clk,
              rden,
              data,
              address,
              wren,
              q);
input clk;
input rden;
input[63:0]data;
input[10:0]address;
input wren;
output[63:0]q;
reg[63:0]q;
wire[63:0]q_out;
wire cen=!(wren|rden);
always@(posedge clk)
q<=q_out;
ram_ad1 ram_ad1_ins(
        .Q(q_out),
        .CLK(clk),
        .CEN(cen),
        .WEN(!wren),
        .A(address),
        .D(data)
        );
endmodule


module ram_ad1(CLK,
              CEN,
              D,
              A,
              WEN,
              Q);
input CLK;
input CEN;
input[63:0]D;
input[10:0]A;
input WEN;
output [63:0]Q;
reg [63:0]Q;
reg[63:0]mem[2047:0];

always@(posedge CLK)
if((!CEN)&&(!WEN))
mem[A]<=D;

always@(posedge CLK)
if((!CEN)&&(WEN))
Q<=mem[A];
endmodule


单位电脑不能上网,又敲了一遍,有错误请指正!
 楼主| 发表于 2011-9-23 15:07:35 | 显示全部楼层
本帖最后由 canoeeda 于 2011-9-23 15:14 编辑

在我的工程里功能仿真一点问题没有,结果是对的!但是一旦后仿真就全是0。我把例化的这个RAM的端口在Modelsim里拉出来,功能仿真没问题,另外的仿真(post 综合之类)输出端全是0,实际电路中用CHIP SCOPE debug在读的时候输出也是0!还有一个要交代的是,我写是慢速的大约每8个clk写一次(wren每8个clk为1,其余为0),写完后连读,也就是rden长时间为1。另外在ISE里单独仿真这个RAM偶没有做!!请问楼上的你的第三张图怎么不可见?其两张是功能仿真还是网表仿?
另外也没有必要不讨论吧,真理越辩越明,对大家都有好处。我只是把我碰到的问题说出来,也许是我的工程里某些设置项不对,也许是......!!但是一定要把问题给找出来,我们需要真相!只是我这边贴图不太方便,要不然我也贴图!!
 楼主| 发表于 2011-9-23 17:00:39 | 显示全部楼层
哦??请再看一遍代码,我设计的本意是wren为高写,rden为高读,en是使能的意思,不代表低电平!请注意cen=!(wren|rden),cen低电平有效。请再看一看我的上一个回帖!
 楼主| 发表于 2011-9-23 17:08:28 | 显示全部楼层
还有,刚才发现第二个模块名称应为 ram_ad1,写错了,写成ram_ad了,已经编辑更新。在ram_ad中例化ram_ad1。不知道大侠仿的是哪一个?第一个还是第二个?
 楼主| 发表于 2011-10-14 20:56:20 | 显示全部楼层
LZ回的帖子怎么还删了?
发表于 2011-10-14 22:18:05 | 显示全部楼层
回复 5# canoeeda


    被sdwsh版主给删除了
发表于 2011-10-15 11:15:53 | 显示全部楼层
要初始化ram,有个命令
发表于 2012-4-14 21:39:04 | 显示全部楼层
我也遇到类似的问题,
不过是双口的ip,
也是写没问题,但是读是全0.
发表于 2012-4-15 13:43:58 | 显示全部楼层
1.仿真时加glbl模块了嘛?
2.复位后等待时间够吗?
发表于 2012-4-15 22:08:35 | 显示全部楼层
换个ise版本试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-16 15:35 , Processed in 0.025312 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表