I am considering MAX10 as a device for an ongoing project, which uses soft-cpu (not NIOS). I would like to use UFM as a program storage.I'm wondering what is access time of UFM? In the documentation (MAX10 User Flash Memory User Guide) I've found that it takes 5 clock cycles for UFM to output valid data. Not sure if I understood it right (seems too long) - or am I missing something...?
No, you're not missing anything. I'm guessing you feel this is too long as you're hoping to run something directly from your 'program storage'. This isn't really what it's intended for.What are you trying to do that requires something quicker? Cheers, Alex
My idea is to run MCU code from UFM directly (and use SRAM for data storage). Anyway, as UFM clock can run at over 100MHz, it still might be the way (effective access time will still be <50nS)...
Running MCU code directly from the flash will be slow. The 5 cycles are not even the full truth:I have a design that uses the UFM as lookup table. It turned out that the UFM has an even longer access cycle. Despite of what's mentioned in the MAX1000 ufm guide, the memory raises it's busy pin after the access for some cycles so you cannot read just the next word from it after 5 cycles. Ignoring the busy bit causes the read data to be invalid. In experiements I found out that the cycle on complete random access (no burst mode) takes 12 clock cycles.