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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
12
返回列表 发新帖
楼主: l2002924700

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

[复制链接]
 楼主| 发表于 2011-12-13 09:29:17 | 显示全部楼层
回复 8# remnant


    你的意思是不是说memory它自身还要带有一套寻址逻辑,所以造成memory与由纯粹的寄存器声明所形成的同等大小的寄存器在综合后所形成的面积不一致。比如:
   reg[7:0] mem[3:0];
与:reg[7:0] REG1;
     reg[7:0] REG2;
     reg[7:0] REG3;
     reg[7:0] REG4;
这样两组声明前一组比后一组的面积要大
发表于 2011-12-13 10:45:46 | 显示全部楼层
加reset
发表于 2011-12-13 13:40:50 | 显示全部楼层
你可以研究一下FPGA芯片的原语对于Block RAM的描述。或者换句话说,你所谓的复位,其实就是对RAM的一个擦除操作。如果你认为确实很有必要,可以考虑用一个状态机来实现。但是我确实没有想象出来对RAM复位时整体擦除有什么必要。
发表于 2011-12-13 15:45:48 | 显示全部楼层
如果使用ip的话,ip本身有个参数initial value类似的,一上电后ram就是initial值了。
发表于 2011-12-14 21:54:29 | 显示全部楼层
用循环语句
发表于 2011-12-18 11:47:47 | 显示全部楼层




   我也建议使用版主的这个意见,如果实在要复位的话,可以在启动后用状态机写一遍,对于描述语言跟实际综合出来的东西,最好翻看软件自带的对器件的描述,你可以直接看文档,甚至直接看库描述文件也可以。xilinx的在xst.pdf里边有很详细的描述。
发表于 2011-12-18 23:22:59 | 显示全部楼层


回复  remnant


    你的意思是不是说memory它自身还要带有一套寻址逻辑,所以造成memory与由纯粹的寄 ...
l2002924700 发表于 2011-12-13 09:29



这么说吧,memory根本不是寄存器。
一般来说,相当一部分是寻址逻辑+latch。
memory通常都是用foundry提供的库,而不是自己写出来的reg。
你写出来的,无论哪种写法,都只是一堆reg而已。
 楼主| 发表于 2011-12-19 10:34:53 | 显示全部楼层
回复 17# remnant
好的,谢谢啦,这下大概明白了!
发表于 2014-8-13 10:44:01 | 显示全部楼层
使用core generator 生成block ram或者distribute ram,可以通过eco或者mif文件赋初值
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

X

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

GMT+8, 2025-7-6 00:06 , Processed in 0.020826 second(s), 7 queries , Gzip On, MemCached On.

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