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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5554|回复: 10

[求助] Xilinx器件中,寄存器型时序变量如果不指定初始值,配置完成后是全零值还是随机值?

[复制链接]
发表于 2012-6-26 21:43:14 | 显示全部楼层 |阅读模式

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

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

x
在《xilinx可编程逻辑器件技术详解中提到,如果不进行初始化,默认值为全零,但又无法从Xilinx官网上找到相应支持,其综合手册里只提到初始化的有效性,
我自己试验的结果似乎确实如该书提到的这样,但一个同事又说他碰到不是这样的,大家有权威些的解答吗?
 楼主| 发表于 2012-6-26 21:44:50 | 显示全部楼层
http://www.eefocus.com/article/10-03/94264s.html,该书的相关链接
发表于 2012-6-26 23:21:05 | 显示全部楼层
默认是零,但如果改变初值可以更省资源,理论上会变更初始值。
发表于 2012-6-27 00:24:31 | 显示全部楼层
默认都是全零。包括没有连接输入的信号。
发表于 2012-6-27 11:28:33 | 显示全部楼层
基本是是默认为0,如果你人品不好,也可以为1,所以一定要有初始化
 楼主| 发表于 2012-6-27 12:44:32 | 显示全部楼层
各位大大有权威的资料解答吗?为这个问题困扰一段时间了,目前看来,加上初始化还是必不可少的
发表于 2012-6-27 15:03:14 | 显示全部楼层
本帖最后由 shaweikang1984 于 2012-6-27 15:05 编辑

不一定的,跟你逻辑设计有关。

如果你的寄存器是使用的置位功能,SRINIT1,初始即为1
如使用复位功能,SRINIT0,初始即为0,
如两个都没有使用,默认为SRINIT0,初始为0

其实,xilinx的fpga存在一个配置后全局复位,该信号会在配置后驱动所有DFF的SR端,所以配置后的DFF初始值就跟你设计中DFF所配置的SRINIT值相关了。
 楼主| 发表于 2012-6-27 20:01:29 | 显示全部楼层
回复 7# shaweikang1984


    版主的意思我明白,但这是Slice的底层接口,而事实上多数寄存器型变量是通过代码推断出来的,即用户自己编写的时序型变量,对这样的变量,没有初始化,没有复位,配置完成后其初始值能保证是全零吗?
发表于 2012-6-27 21:17:29 | 显示全部楼层
回复 8# pengpwn


   能的,如果你不放心,可以使用INIT约束
   比如说你要寄存器i初始值为0,可以在verilog里面这样描述
   (* INIT = "0" *)
   reg i;
发表于 2012-6-28 09:16:42 | 显示全部楼层
mark一下  这个也不是很清楚
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-12-22 23:53 , Processed in 0.044989 second(s), 8 queries , Gzip On, Redis On.

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