I am trying to find a SPI flash memory chip to use with the ICE40LP4K-CM121. In the Programming and Configuration documentation, it states the PROM "must be ready to accept commands 10µs after meeting its power-on conditions." From the many chips I've looked at, I've been unable to identify one meeting this requirement, with 100µs being the closest. Furthermore, the official iCE40 Ultra Breakout Board uses the N25Q032A13ESC40F, which takes 150µs from minimum voltage to command readiness. Is this requirement a typo, or am I looking at the wrong specifications? Thank you!

-
1\$\begingroup\$ To help provide context for an answer, and to comply with the site rules for How to reference material written by others, please edit the question to include a link to the Programming and Configuration Documentation. \$\endgroup\$Chester Gillon– Chester Gillon2026-03-22 20:54:10 +00:00Commented Mar 22 at 20:54
-
\$\begingroup\$ It's possible they all do manipulate the CRESET_B signal, it's there as part of the firmware loading facilities, inside FT2232/STM32 or other USB-capable mcu. That MCU could pull CRESET_B on power-on as long as designers considered needed. \$\endgroup\$Vlad– Vlad2026-03-22 21:09:03 +00:00Commented Mar 22 at 21:09
-
1\$\begingroup\$ The paragraph also tells you "It is possible to use slower PROMs by...", describing the same technique as Justme. That said, the official breakout board does not appear to do it. \$\endgroup\$jpa– jpa2026-03-23 06:14:27 +00:00Commented Mar 23 at 6:14
1 Answer
The requirement is a bit non-sensical.
It does not matter how long the flash chip takes to be ready after supply voltage reaches the power-on conditions of the flash chip.
The power-on conditions of the flash are thus arbitrary compared to the ICE40.
What matters is that the flash is ready when ICE40 starts to communicate with it. If the flash chip is not ready then the ICE40 simply needs to be held in reset longer after startup, which is easy.
And this should be controlled anyway to make sure it can be met, and maybe it could be kept in reset 10x more than needed, so the circuit does not need to be modified just because a different flash chip is used.