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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4962|回复: 1

[求助] 求助,verilog中如何能够访问到寄存器数组中的某个元素

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

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

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

x
本帖最后由 estyzq 于 2012-3-26 21:14 编辑

请问各位,
使用verilog语句,声明了一个寄存器数组
reg [7:0] buffer[18:0] ;
实际上就是一个19*8的缓存。
现需要对某个8bit单元中的某个bit进行赋值操作,不知道要怎么弄,是buffer[X][Y]如此的访问?

如果,需要对buffer中的某连续的64个bit,也就是8*8单元中的bit进行移位操作,是否也可以按照[X][Y]的方式进行,
如果,有个reg [5:0] cnt;可否这样访问buffer:buffer[cnt[5:4]][cnt[2:0]] <= signal_a ;
以前经常遇到这样的错误:buffer[cnt:cnt-2]<= 3'b000;错误理由就是buffer访问范围不固定,但是我上面的这种访问方式,其实也没固定下来,是不是说,只有在“:”符号两边不能出现变量?



我是初学者,求指导啊,有简便的方法吗?
发表于 2012-3-26 22:08:27 | 显示全部楼层
回复 1# estyzq


    第一种访问方式是可以的,你可以这样记,中括号里如果是索引可以有变量,但如果是位宽的话,就不可以了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

X

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

GMT+8, 2025-6-6 15:37 , Processed in 0.018548 second(s), 7 queries , Gzip On, MemCached On.

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