搜索
bottom↓
回复: 15

请教Verilog语言数组赋初值的问题

[复制链接]

出0入0汤圆

发表于 2010-3-26 10:12:27 | 显示全部楼层 |阅读模式
我按照书上写的赋值,出现错误,程序如下

reg [0:3] Xrom [1:4];
Xrom[1] = 4'hA;
Xrom[2] = 4'hB;
Xrom[3] = 4'h1;
Xrom[4] = 4'h2;

把赋值部分去掉,就没有错误了

刚学verilog,不太会用,请高手指教,谢谢了

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2010-3-26 10:15:42 | 显示全部楼层
reg不可以这样赋值,需要在always块内才可赋值。

wire可以,譬如:
wire [3:0] Xrom [4:1] = 16'h21BA;

出0入0汤圆

发表于 2010-3-26 10:27:24 | 显示全部楼层
reg 是属于时序逻辑模块的

出0入0汤圆

 楼主| 发表于 2010-3-26 10:27:46 | 显示全部楼层
明白了,谢谢

出0入0汤圆

 楼主| 发表于 2010-3-26 10:28:42 | 显示全部楼层
reg 不是数组,是不是就可以直接赋初值了

出0入0汤圆

发表于 2010-3-26 18:18:42 | 显示全部楼层
回复【4楼】lsw0136 SOLOMON
reg 不是数组,是不是就可以直接赋初值了
-----------------------------------------------------------------------

2楼说的很清楚了,REG只能在always中使用,它是用来控制逻辑的

出0入0汤圆

发表于 2010-5-29 06:15:36 | 显示全部楼层
数组是个好东西

出0入0汤圆

发表于 2010-5-29 15:40:53 | 显示全部楼层
数组很耗资源的,建议还是使用ram吧。
reg属于时序逻辑资源,不能在always块外面赋值。
即使是wire型,也应该加上assign,表示连线吧。
堵塞赋值不是很好,建议使用非堵塞赋值 “<=” 用在同步电路中可以减少竞争等现象发生。

出0入0汤圆

发表于 2010-5-29 15:45:33 | 显示全部楼层
回复【1楼】tear086  .COM 缺氧
-----------------------------------------------------------------------

补充一下,Verilog 2001中reg和wire都可在定义时初始化。譬如:
reg [3:0] temp = 4'hF;
wire [3:0] temp = 4'hF;

还有reg不一定就是寄存器,比如在组合逻辑alwyas块内,有时就是节点。不过在alwyas块内,就必须声明成reg。


参考:点击此处下载 ourdev_558079.pdf(文件大小:670K) (原文件名:Summary for IEEE Verilog 1363-2001.pdf)

出0入0汤圆

发表于 2010-5-31 23:29:34 | 显示全部楼层
reg [3:0] xrom = 4'b0101;这个可以这样赋值,
但reg [0:3] Xrom [1:4]; 怎么赋值,初始化memory类型的怎么赋值???

出0入0汤圆

发表于 2010-6-2 23:12:18 | 显示全部楼层

出0入0汤圆

发表于 2010-6-4 22:12:41 | 显示全部楼层
亏你想得出这样赋值,呵呵。。

出0入0汤圆

发表于 2010-6-4 22:31:36 | 显示全部楼层
reg [0:3] Xrom [1:4];

always @(posedge clk or rst_n)
begin
    if(!rst_n)
    begin
       Xrom[1] <= 4'hA;
       Xrom[2] <= 4'hB;
       Xrom[3] <= 4'h1;
       Xrom[4] <= 4'h2;
    end
    else
    begin
       其它程序
    end
end

出0入0汤圆

发表于 2011-10-31 17:54:56 | 显示全部楼层
经典。也搞笑。呵呵。

出0入0汤圆

发表于 2011-11-7 17:35:22 | 显示全部楼层
寄存器变量只能在always块赋值。。。。。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-24 11:17

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表