Glossary

Memory Initialization File (.mif)


An ASCII text file (with the extension .mif) that specifies the initial content of a memory block (CAM, RAM, or ROM), that is, the initial values for each address. This file is used during project compilation and/or simulation.

A MIF is used as an input file for memory initialization in the Compiler and Simulator. You can also use a Hexadecimal (Intel-Format) File (.hex) to provide memory initialization data.

A MIF contains the initial values for each address in the memory. A separate file is required for each memory block. In a MIF, you are also required to specify the memory depth and width values. In addition, you can specify the radixes used to display and interpret addresses and data values.

Following is a sample MIF:

DEPTH = 32;	% Memory depth and width are required	%
WIDTH = 14;	% Enter a decimal number	%

ADDRESS_RADIX = HEX;	% Address and value radixes are required	%
DATA_RADIX = HEX;	% Enter BIN, DEC, HEX, OCT, or UNS; unless 	%
			% otherwise specified, radixes = HEX	%

-- Specify values for addresses, which can be single address or range

CONTENT
	BEGIN

[0..F]	:	3FFF;	% Range--Every address from 0 to F = 3FFF	%
	6	:	F;	% Single address--Address 6 = F	%
	8	:	F E 5;	% Range starting from specific address--	%	

END ;	% Addr[8] = F, Addr[9] = E, Addr[A] = 5	%
NOTE If multiple values are specified for the same address, only the last value is used.

You can create a MIF using the Memory Editor.

Back to Top

- PLDWorld -

 

Created by chm2web html help conversion utility.