This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Question on QSPI(NAND) & SPI

I was in the process of integrating a NAND flash to my project. - MX35LFxGE4AB

Initially, I thought it would be good idea to use QSPI, but it seems to only support NOR flash.

Also, in the nrf52840 datasheet(http://infocenter.nordicsemi.com/pdf/nRF52840_OPS_v0.5.pdf), there is no current consumption for QSPI and SPI for higher freq.

Here are my questions.

1. Is there a way to use QSPI module for NAND.

2. What is the current consumption for QSPI?

3. What is the current consumption for 32 Mbps SPI?

4. How would you calculate the current consumption for SPI/QSPI if you know the data requirement.

Would it be (Bits/Sec) / (SPI Frequency) * (Run current) - ex(   (5000 bits/sec) / (8Mbps) * (50uA) )

Parents
  • Hi,

     

    First, you're referring to an old version of the datasheet. See v1 instead.

     

    NAND flash should be possible to use as far as I know. This is just the underlying technology, if the interface is compatible it should not matter.

     

    We do not have current consumption data for this unfortunately. Still, at this frequency this is something that is wildly dependent on trace and load capacitance, which you therefore would have to measure in your own board .

     

    Regarding the formula, should there not be only 'bits' in the numerator? This leaves time needed to transfer e.g. 5000 bits, which when multiplied with the current draw leads to charge (mAh) used in the transaction. 

     

    Best regards,

    Andreas

  • Thank you for your thoughtful answer.

    Regarding communicating with NAND flash, I was concerned about the status check that is being done on a write and read operation.

    QSPI does a `Read Register Status` - 05h to do a  Memory status check before a read/write/erase. The peripheral will pull this register until it is in the state needed. However, this is only a feature in a NOR flash and non of the NAND flash I looked into doesn't support the `Read Register Status`  command. 
    Is there a way to bypass this memory status check?

Reply Children
Related