讨论:信号定义的最低位必须是0吗?
时间:10-02
整理:3721RD
点击:
信号定义的最低位必须是0吗?
最低位是0:wire[3:0] addr_a; reg[4:0]data_b;
最低位不是0:wire[4:1] addr_a; reg[6:2]data_b;
在总线接口上,常会遇到地址的最低位不是0的情况,为了和原理图保持兼容并做到内部模块接口清晰,定义地址为[22:1]或[22:2]是很好的选择。
还有其它的情况,最低位不为0物理意义很明确。
但是有人说信号位宽定义最低位必须为0,否则会带来很大麻烦。请大家指点一下,到底会带来何种麻烦呢?
最低位是0:wire[3:0] addr_a; reg[4:0]data_b;
最低位不是0:wire[4:1] addr_a; reg[6:2]data_b;
在总线接口上,常会遇到地址的最低位不是0的情况,为了和原理图保持兼容并做到内部模块接口清晰,定义地址为[22:1]或[22:2]是很好的选择。
还有其它的情况,最低位不为0物理意义很明确。
但是有人说信号位宽定义最低位必须为0,否则会带来很大麻烦。请大家指点一下,到底会带来何种麻烦呢?
不一定的,从0开始定义下标是一种convention,而且也很方便,如果你想从1开始也是可以的。
自己顶一下,请大家讨论。
好像最低bit不为0会在布局布线或后端引起麻烦,是这样吗?
自己再顶一下,请大家讨论。
自己再顶,希望牛人能给出答案。