verilog 寄存器初始化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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中寄存器的初始值问题,

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

Verilog里面如何初始化数组才能被Quartus II综合?

verilog 二维数组是如何初始化的啊?

verilog模块端口为二维数组如何调用?

systermverilog中二维数组含义