Showing results for 
Search instead for 
Did you mean: 
Honored Contributor I

ROM Initialization, Max 10 device 10M02



I am trying to use a Max 10, 10M02 (2K LEs) device. My design has a ROM, with the Initialization data in a MIF file. 


However Analysis & Synthesis run fails with the message.. (I am using Quartus II 15.1.2, build 193) 


"error (16031): current internal configuration mode does not support memory initialization or rom. select internal configuration mode with eram." 

As per Max 10 device manual, for this particular device.. 


"the internal configuration scheme for 10m02 device (only) supports the following mode: 

• single compressed image 

• single uncompressed image" 


I tried another device 10M08 and I do not get this message, as it has additional configuration mode options available (few of them allows Image generation, along with an Initialization file too. But as mentioned, 10M02 device does not offer those options). 


so am i stuck with with using a bigger device, because of this issue or is there a way that i can still use the smaller 10m02? 


Tags (1)
0 Kudos
3 Replies
Honored Contributor I

I am wondering, if I could utilize the chips' internal ufm and get over the Initialization problem?? 

Another option, which I thought of was, using the 'on chip memory' IP. However it requires using the Avalon-MM interface and will require making major changes in the design and doing verification again...  

My current design is just using a single port ROM, (which I think gets implemented using the M9K blocks). 


So do I have any options available?? I checked for 10M04 devices, (as this problem seems to occur only with the smallest 10M02 device), but 10M04 are all out of stock, everywhere I checked..  


So I am really stuck with using much bigger and expensive 10M08 device, or figure out how to use Avalon-mm in my design, then re-do the design and verification effort...
Honored Contributor I


and specifically my last post to the thread, which summarises much of this. 


As for using UFM - yes this is fine in principle. However, UFM only uses unutilised CFM1 & 2 sectors - which the 10M02 doesn't have. 


A 'flash' or 'analogue' (not 'compact') variant of the 10M04 sounds like it'll serve you well. 



Honored Contributor I

Hello, I wanted to use 10M02SC-M153 with an application requiring initialized ROM.  

Also found that "Compact Devices" do not support memory initialisation for a ROM made from internal RAM-blocks. 

10M02SA-M153 does not exist (analog+flash) that supports memory initialisation >> I would have to use bigger 10M04SA-M153 


Alternatively, I plan to use on-chip user flash UFM of 10M02SC to implement initialized ROM. 

ufm = iniitialized with file.hex/.mif >> this compiles into bitstream .pof and will program the ROM in the ufm, right ? 

In my design I will have to use "on-chip-flash-ip" avalon-mm to read from ufm.  

So far (design busy) I don not see any warnings/errors that this scheme is not ok .....