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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 16242|回复: 18

[求助] verilog中的存储器初始化问题

[复制链接]
发表于 2011-12-12 17:20:47 | 显示全部楼层 |阅读模式

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

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

x
各位大侠,小弟有一个问题,就是我一旦定义了一个存储器,那么我如何在复位时将其置0。
       比如:reg[15:0] MEM_REG[7:0];我怎样才能将其在复位信号有效时置0?
 楼主| 发表于 2011-12-12 17:22:31 | 显示全部楼层
补充一句,不用initial块,因为我要使用一个可综合的语句!如何使用verilog语句实现?
发表于 2011-12-12 17:22:34 | 显示全部楼层
一般来讲RAM不能用复位信号置位,否则会综合出一大堆逻辑出来。
发表于 2011-12-12 18:25:26 | 显示全部楼层
回复 3# buley


    这个是为什么呢,我好像也看见过一段代码,没用存储器格式,而是把寄存器一个个定义出来,比如reg 【7:0】 mem0,mem2,...,mem7;
然后还是一个个的赋值。
 楼主| 发表于 2011-12-12 19:38:32 | 显示全部楼层
回复 3# buley


    那如果我一定想要用复位来对RAM进行初始化呢!就像FPGA那样!我以前是做FPGA的,我觉得对于FIFO的复位有时还是蛮重要的!
 楼主| 发表于 2011-12-12 19:40:05 | 显示全部楼层
回复 4# SKILLER

对呀!我也见过这种代码,但是我不想使用这种风格。不过话又说过来,既然这样可以,那没有理由不能对于存储器使用复位呀!
发表于 2011-12-12 20:34:14 | 显示全部楼层
这么说吧,你能想出带复位置0的RAM是什么个硬件结构吗?
这样就能理解3L说的话了
发表于 2011-12-12 22:20:48 | 显示全部楼层
verilog描述的所谓memory无法被综合。
你所见到的写法,其实是寄存器。

当对存储要求很小时,比如i2c,只会1个byte传入立刻被读走的话,那就没必要使用memory这种
面积巨大的器件,寄存器就足够了。
发表于 2011-12-13 08:24:34 | 显示全部楼层
reg[15:0] MEM_REG[7:0] 是一个数组
若需要对数组中的某一存储单元进行操作,必须指定该存储单元在数组中的位置。
如:MEM_REG[5] 《= 0;
或者
reg [15:0]  data;
data 《= MEM_REG[4];
发表于 2011-12-13 09:00:55 | 显示全部楼层
自行定义for循环,复位每个寄存器
你这个定义根本就不是RAM
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

X

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

GMT+8, 2025-7-6 08:40 , Processed in 0.024289 second(s), 7 queries , Gzip On, MemCached On.

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