In 4-bytes addressing mode, how can I address more than 32 MB QSPI FLASH ?

⚠️
Hi there.. thanks for coming to the forums. Exciting news! we’re now in the process of moving to our new forum platform that will offer better functionality and is contained within the main Dialog website. All posts and accounts have been migrated. We’re now accepting traffic on the new forum only - please POST any new threads at//www.xmece.com/support. We’ll be fixing bugs / optimising the searching and tagging over the coming days.
10 posts / 0 new
Last post
AndreH
Offline
Last seen:4 years 7 months ago
加入:2017-08-15 19:05
In 4-bytes addressing mode, how can I address more than 32 MB QSPI FLASH ?

Hi Dialog, for the DA14681, I want to use a large NOR FLASH memory (256MB) to record my data, but I read in the datasheet (section 13.1.4) that I can only access up to 32MB QSPI Flash memory .

Also from 37. Memory Map (on page 164) , The QSPI FLASH can only be mapped from 0x8000000 to 0xC000000.

How can I access a larger NOR FLASH memory (256MB) ?

Thanks, Andre

Device:
JK_Dialog
Offline
Last seen:5 months 13 hours ago
Staff
加入:2016-08-22 23:07
This is correct and the

This is correct and the current limit of the DA1468x device.

AndreH
Offline
Last seen:4 years 7 months ago
加入:2017-08-15 19:05
This does not exactly answer

This does not exactly answer my question : How can I access a larger NOR FLASH memory (256MB) ?
I I can not, where the limitation come from ?
In manual mode in which register, I write the memory address I want to access ? R or W
thanks, Andre

JK_Dialog
Offline
Last seen:5 months 13 hours ago
Staff
加入:2016-08-22 23:07
The 256MB will simply not

The 256MB will simply not work.

Actual Max size for QSPI Flash: 64MB
The reason is that after the 64MBytes the address space is interrupted by the QSPIC addressed so Automode is impossible to work
这导致重建的LLD mechanism for the QSPI FLASH to work in manual mode and keep mempry mapping with addresses

Max cached: 16M or 32M depending if define the OTP as CACHED or not.

AndreH
Offline
Last seen:4 years 7 months ago
加入:2017-08-15 19:05
Hi, this is where the

Hi, this is where the datasheet is not very clear. Correct me If I am wrong.
This means to access a specific External FLASH memory location, I have to address it in the memory space between 0x8000000 and 0x8FFFFFF, either in manual or automode . And this address is translated into QSPI serial communication to the External FLASH memory device.
Thanks, Andre

JK_Dialog
Offline
Last seen:5 months 13 hours ago
Staff
加入:2016-08-22 23:07
Yes - The QSPI address is at

Yes - The QSPI address is at 0x8000000 with the QSPIC controller at 0xC00000. When running in automode (which is what is supported by the SDK), 0x8000000 gets addressed for flash access up into memory address 0xC000000, which is 64MB.

Technically, using manual mode, this would be possible to address more than 64MB but the entire SDK would have to be restructured to do so..

AndreH
Offline
Last seen:4 years 7 months ago
加入:2017-08-15 19:05
What interest me is the

What interest me is the manual mode. Because (from the datasheet, the automode can only read the data from the memory)
In manual mode, where or how do I let know which address I want to access ?
Thanks, Andre

JK_Dialog
Offline
Last seen:5 months 13 hours ago
Staff
加入:2016-08-22 23:07
Since you are also executing

Since you are also executing from flash, and this interacts with the cache controller - you would also be required to rewrite the entire LLD in order to switch over to manual mode.This is an extremely heavy 'lift' and outside the scope of the forums.

AndreH
Offline
Last seen:4 years 7 months ago
加入:2017-08-15 19:05
OK Thanks for all the

OK Thanks for all the precision ! Very useful ! Andre

JK_Dialog
Offline
Last seen:5 months 13 hours ago
Staff
加入:2016-08-22 23:07
Andre,

Andre,

No problem. If you need this much storage, I would suggest using a smaller flash device for execution and then the secondary SPI interface for data storage.