verilog中定义的存储空间的初始化问题
时间:10-02
整理:3721RD
点击:
大家好!我用verilog代码写了一个module,该module用reg模拟了一定大小的存储空间,
如reg [7:0] memory [255:0];
现在,我想在系统复位时,将此memory清零;
因为这些reg变量,最终综合出来应该是用数字库中的dff搭建的,而dff一般都有异步复位端,因此,将这些dff的复位端都连接到系统复位信号,应该就能实现复位清零;
在verilog代码阶段,在复位时,将每个memory[x]都置0,应该能够达到相同的复位清零效果;
但是,这么写,代码就太多了;
如果在复位时,用for语句来将memory清零,综合出来,是否能够达到将各dff的复位端接系统复位信号的预期?
当然,在实际应用中,会通过通信协议将此memory写一遍,然后再使用此memory,但没有初值总让人担心。
PS:不是不想用工艺厂提供的RAM,而是,这个工艺还不太成熟,工艺厂还没有提供RAM,因此,就想通过寄存器来实现RAM,面积方面倒是不太关心。
不用管复位端,综合会报warning,但没关系
多谢!
