AnsweredAssumed Answered

QuadSPI AHB memory-mapped read triggers non-stop, repeated, identical SFM transactions

Question asked by Russ Bielawski on Jun 23, 2014
Latest reply on Dec 14, 2015 by Russ Bielawski

I am attempting to setup the QuadSPI for AHB reading.  I have one single-banked external flash attached to Flash A (A1).  I am attempting to use SEQID 0 with the power-on reset values for LUT0 and LUT1 (this is the Read command 0x03).  I am able to write and read registers to and from the external device (different sequence IDs), so I have the LUT setup correctly.  Also, the IAR debugger is able to read external flash, and I can see the flash transactions occur on my logic analyzer when it does so (transactions are 8 bytes of data long, but will be longer if I change QSPI_BUF3CR[ADATSZ] to a larger value).  I am assuming those are merely AHB memory-mapped reads, but I don't know for certain.

 

My problem is that when my application attempts to read a byte, the hardware locks up, and on the logic analyzer, I see consecutive, repeated reads sent to the flash.  Each read has the same address, which is correct.

 

Has anyone seen this?  Am I missing some part of the QuadSPI module setup?  Thanks.

 

Some relevant register values:

 

QSPI_BFGENCR[SEQID]0
QSPI_BUFxIND0
QSPI_LUT00x08180403
QSPI_LUT10x24001C08
QSPI_SFxxAD0x21000000
QSPI_BUFxCR[ADATSZ]0
QSPI_BUF3CR[ALLMST]1
QSPI_RBCR[RXBRD]1

Outcomes