Skip to main content


Dialog Improves System Performance

Non-volatile memory (NVM) is a key component at the heart of every system design. It holds critical data, controls how the system boots, and affects overall performance. Choosing the right NVM is key. We’re here to help. Our wide range of NVM products offer an array of features designed to help tune and optimize your system.

Octal xSPI Memory


xSPI (8x SPI)

High bandwidth

Low power

eXecute-in-Place (XiP)



See More

Dual / Quad SPI Memory


SPI, Dual, Quad

1.8V, 3.0V. Wide VCC

Ultra-low Energy, Low Power

7nA sleep

Battery monitor


See More

DataFlash SPI Memory

Fast Flexible Robust

Concurrent programming

Easy to use

Power fail protection

Data integrity

Low power modes


See More

Wafer KGD

Known Good Die program

Up to 125°C operating temperature

All voltage levels

  • 1.8V
  • 3.0V
  • Wide Voltage 1.65V to 3.6V

See More

Verified Memory for NXP

Low Power and high-speed SPI Flash solutions for NXP i.MX RT MCUs

See More

Verified Memory for ST Microelectronics

Dialog SPI Flash solutions verified on over 30 STM32 MCUs

See More

CBRAM Technology

CBRAM is a resistive RAM technology that provides power, speed, and cost benefits over other non-volatile memory technologies. It is well suited for battery powered devices, edge computing, and AI applications.

See More

Stay connected

Get in touch with us directly through our worldwide sales offices, or contact one of our global distributors and representatives.

Inquiries Distributors and Representatives Register for newsletters
Back to results


1 week ago


Posted by grai2907 10 points 1 reply


I'm using AT25XE321D serial flash IC in one of the project I'm working on. I've gone through the datasheet of this and was trying to program it using SPI mode. But I found that even at the first step while trying to read the JEDEC ID, it reads the id as 0 (5 Bytes). I proceeded and tried to read status registers and there also I got 0 value. Thinking that it is the default values I tried to do the "write enable" by writing to status register 1 (set bit 1). Even after this when I tried to read the status register 1 value, I get 0 itself.  

Is there something I'm missing? Is there any document which can guide me through the correct way of doing this?

1 week ago

gordonmacnee 65 points

Hello grai2907,

Reading the JEDEC ID and status reg is just as it is for all other xx25yyy Flash memory parts so something else is going wrong. 

Have you tried multiple devices? Which uController are you using? Are you using single SPI bus (not QSPI) Can you share the relevant part of the schematic? Can you provide some 'scope captures of the signal and power lines? What SPI clock speed are you using, what voltage are you running the system at? Are there any other devices on the SPI Bus or is there anything else that could be holding the MISO low? Does the MISO line ever go high?

If you would prefer to discuss this out with the forum, please send the info to