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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2749|回复: 4

请教高手 verilog 综合的问题

[复制链接]
发表于 2009-5-4 08:56:16 | 显示全部楼层 |阅读模式

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

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

x
如果在时钟上升沿的时候对一个reg A进行赋值
如果想在时钟上升沿将reg A 的值赋给reg B ,reg B的值是否会不确定呢?
always @(posedge clk)
sr<= {sr[6:0],sda};  //移位寄存器
.
.
.
mem <= sr;
之前我用时钟下降沿来做将sr的值赋给mem的动作,则在综合时出现
warning : The register 'mem[7]' may not be optimally implemented because of a lack of compatible components with correct clock/enable phase.
如果用时钟上升沿来做将sr的值赋给mem的动作,则没有出现warning,但还没有调出想要的结果。
这个问题是怎么回事,望指教!!
发表于 2009-5-4 09:27:58 | 显示全部楼层
always @(posedge clk)
sr<= {sr[6:0],sda};  //移位寄存器
.
.
.
mem <= sr;

这个有问题吧,如果我没有理解错你的意思的话,应该是
always @(posedge clk)begin
sr<= {sr[6:0],sda};  //移位寄存器
.
.
.
mem <= sr;

end
 楼主| 发表于 2009-5-4 23:25:18 | 显示全部楼层
没有完全把代码写出来
只是意思一下
问下问题
所以没写 begin end
发表于 2009-5-5 09:38:54 | 显示全部楼层
那明白你的意思了,你可以用一个更高的时钟去采目前你用的时钟的沿,这样上升沿移位,下降沿赋值就可以了

对一个时钟的上升沿和下降沿都操作的话会有warning的
发表于 2009-5-5 10:09:20 | 显示全部楼层
不明白你要的结果是什么 请讲清楚
上升下降沿都是OK的,虽然推荐使用上升沿 WARNING 你可以不理会
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-24 00:40 , Processed in 0.020610 second(s), 8 queries , Gzip On, Redis On.

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