打印

中间信号是否需赋值的区别

[复制链接]
2816|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wxfxwk1986|  楼主 | 2011-3-1 16:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
tkydax| | 2011-3-2 10:32 | 只看该作者
我是在if(~rst_n)中对它们赋的初值,
不初始化复位后其值应该不确定,
你看一下综合后的RTL视图有没有什么区别

使用特权

评论回复
板凳
wanli315| | 2011-3-8 16:58 | 只看该作者
LZ的代码用于测试的话还行,否则很不规范。
不统一赋初值的话,开始状态会很混乱,可能会对系统造成影响,也有可能不会影响。(水平高,代码写的清晰的话)
建议所有寄存器都给个复位后的初始值

使用特权

评论回复
地板
艹_艹_艹_艹| | 2011-3-8 22:16 | 只看该作者
不好意思 不懂 vhdl啊

使用特权

评论回复
5
sxhhhjicbb| | 2011-3-9 21:59 | 只看该作者
硬件综合后都是没有初值的,一直情况例外,就是例化数据.ROM时.

使用特权

评论回复
6
wxfxwk1986|  楼主 | 2011-3-10 17:27 | 只看该作者
5# sxhhhjicbb
你说的这点我有点理解了,但 这样写代码赋初值的意义体现在哪呢?还请指教,谢谢

使用特权

评论回复
7
sxhhhjicbb| | 2011-3-22 22:26 | 只看该作者
做FPGA设计时,一般是先进行前仿真(比如modelsim,也叫功能仿真,尽快的用代码实现功能),前仿真的时候初始是有意义的.然后再是后仿,后仿的时候主要和硬件对应了.也就没有初值了,同时引入了传输时延.最后是采用像signalstap等逻辑分析进行数据分析(这步是下载到硬件调试的过程).

使用特权

评论回复
8
heitai| | 2011-4-9 19:50 | 只看该作者
个人经验,xst支持信号初值,synplify不支持

使用特权

评论回复
9
JLINGON| | 2011-4-10 08:01 | 只看该作者
对于VHDl  记得老师说过不需要赋初值的  你可以查查潘松,黄继业的EDA

使用特权

评论回复
10
xiaoyuan_ly| | 2011-4-12 14:49 | 只看该作者
在写代码时,有这样一个疑惑:就是定义中间信号时,需不需要附初值呢,区别是什么呢?例如
signal SoPi_Cnt : integer range 0 to7 :=7;                                                                     
sig ...
wxfxwk1986 发表于 2011-3-1 16:10


请原谅我的直言。 你没有理解FPGA在各个开发环节上的具体东西。先说我自己吧,我都没有进行仿真,所以我更能了解这些。我也思考过这些东西,其实那只是为了更好的帮助我们开发的一些辅助罢了。既然为辅助,那么可以说是仿真工具的一些辅助参数。就是为了让我们更加便捷的实现我们的功能东西。回到本题,初值这只是让仿真工具的一些为了让仿真工具更好工作的初始化条件的东西罢了。你说呢??!!

使用特权

评论回复
11
xiaoyuan_ly| | 2011-4-12 14:57 | 只看该作者
再举个例子:  比如 reg bit =1'b0  你说硬件是怎么实现的。--只是辅助仿真工具上用的。
              还有再看一个: reg bit;
                                           ...
                                           always @(... or posedge rst)
                                              if(rst)  bit <=1'b0;-----这才是硬件在真正复位后,给bit赋值为0。
                             ...
你说呢??!!

使用特权

评论回复
12
gavin_m| | 2011-4-12 19:11 | 只看该作者
看了上面很多回复,表示,很多人把VHDL和verilog语法混为一谈。不好。对于signal赋初值问题,LZ,切实理解signal的作用是最重要的。赋初值是没有任何意义。在硬件电路中,没通电的情况下,某一段导线会有电流或者电压降吗?明白这个就好。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

250

帖子

1

粉丝