verilog的寄存器默认初始值是多少?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了verilog的寄存器默认初始值是多少?相关的知识,希望对你有一定的参考价值。

如果不对寄存器进行任何赋值操作的话,其值是未知,在Verilog中用x表示;
就像线网类型默认的初始值是高阻, 在Verilog中用z表示。
参考技术A 举个例子吧:
reg A;
always @( posedge CLK or negedge RSTn )
if(!RSTn) begin A <= 1'b0; end //如果有这个异步复位那么,上电复位,寄存器初值0,反之没 有这一句就是x,所以写程序是最好异步复位时,将寄存器赋一个默认值。

else
begin
.....................
end本回答被提问者和网友采纳
参考技术B fpga上电复位,寄存器初值0

verilog 寄存器初始化

想在verilog里像C语言那样用数组,可是用了一段时间才发现,原来在verilog里面不是数组,而是寄存器,虽然用法相同,但是初始化就是个问题了,请高手给指点一下,如何初始化,最好给一个参考示例,谢谢了

参考技术A 看你用的什么板子和软件了,xilinx 和 altera是不同的。给你点东西,你自己看看,到时可以交流一下

Xilinx ROM初始化文件——coe文件格式

在ISE初始化ROM的时候要用到一个扩展名为.coe的文件,一个标准的coe文件的格式如下:

MEMORY_INITIALIZATION_RADIX=2; //数据格式,此为2进制,还可以为8,10,16进制
MEMORY_INITIALIZATION_VECTOR=
01110100,
00100000,
11110101,
10000000,
01111000,
00100010,
00000001,
00010100,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
01110100,
00000101,
11110101,
10000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000,
00000000;

Altera ROM初始化文件——mif文件格式
DEPTH = 32; -- The size of data in bits
WIDTH = 8; -- The size of memory in words
ADDRESS_RADIX = HEX; -- The radix for address values
DATA_RADIX = BIN; -- The radix for data values
CONTENT -- start of (address : data pairs)
BEGIN

00 : 00000000; -- memory address : data
01 : 00000001;
02 : 00000010;
03 : 00000011;
04 : 00000100;
05 : 00000101;
06 : 00000110;
07 : 00000111;
08 : 00001000;
09 : 00001001;
0A : 00001010;
0B : 00001011;
0C : 00001100;

END;本回答被提问者采纳
参考技术B 用FOR或者一个个来

以上是关于verilog的寄存器默认初始值是多少?的主要内容,如果未能解决你的问题,请参考以下文章

verilog中寄存器的初始值问题,

8086寄存器初始值是多少

verilog 寄存器初始化

问个verilog二维寄存器初始化的问题

请问一下各位verilog当中最多支持多少位的寄存器?这根具体芯片相关还是和verilog语言本身相关?

IC 设计工具篇 -- 寄存器模块生成脚本设计过程(verilog 版)