Power-up conditions and memory initialization, Power-up conditions and memory initialization -14 – Altera Internal Memory (RAM and ROM) IP Core User Manual
Page 24
memory block being used, provided you do not assign block type when you instantiate the memory
block.
Power-Up Conditions and Memory Initialization
Power-up conditions depend on the type of embedded memory blocks in use and whether or not the
output port is registered.
Table 3-10: Power-Up Conditions for Various Embedded Memory Blocks
This table lists the power-up conditions in the various types of embedded memory blocks.
Embedded Memory Blocks
Power-Up Conditions
M512
Outputs cleared
M4K
Outputs cleared
M-RAM
Outputs cleared if registered, otherwise unknown
MLAB
Outputs cleared if registered, otherwise reads memory
contents
M9K
Outputs cleared
M144K
Outputs cleared
M10K
Outputs cleared
M20K
Outputs cleared
The outputs of M512, M4K, M9K, M144K, M10K, and M20K blocks always power-up to zero, regardless
of whether the output registers are used or bypassed. Even if a memory initialization file is used to pre-
load the contents of the memory block, the output is still cleared.
MLAB and M-RAM blocks power-up to zero only if output registers are used. If output registers are not
used, MLAB blocks power-up to read the memory contents while M-RAM blocks power-up to an
unknown state.
Note: When the memory block type is set to Auto in the parameter editor, the compiler is free to choose
any memory block type, in which the power-up value depends on the chosen memory block type.
To identify the type of memory block the software selects to implement your memory, refer to the
fitter report after compilation.
All memory blocks (excluding M-RAM) support memory initialization via the Memory Initialization File
(.mif) or Hexadecimal (Intel-format) file (.hex). You can include the files using the parameter editor when
you configure and build your RAM. For RAM, besides using the .mif file or the .hex file, you can initialize
the memory to zero or ‘X’. To initialize the memory to zero, select No, leave it blank. To initialize the
content to ‘X’, turn on Initialize memory content data to XX..X on power-up in simulation. Turning on
this option does not change the power-up behavior of the RAM but initializes the content to ‘X’. For
example, if your target memory block is M4K, the output is cleared during power-up (based on Table 4–
8). The content that is initialized to ‘X’ is shown only when you perform the read operation.
Note: The Quartus II software searches for the altsyncram init_file in the project directory, the project db
directory, user libraries, and the current source file location.
3-14
Power-Up Conditions and Memory Initialization
UG-01068
2014.12.17
Altera Corporation
Embedded Memory Functional Description