This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AWR1843: AWR with 64MB external flash has program bin file on some locations

Part Number: AWR1843
Other Parts Discussed in Thread: UNIFLASH

Dear TI Support

I have a AWR1843 board working with 8 MB external flash working normally. I have left the initial 2 MB out of the flash as reserved space for AWR. Since using that space was creating the AWR1843 to not boot. and rest of the 6 MB space i am using for logging the captured frame data. Also i have left the last page of the flash also empty. since that was also creating issue.

But now for the next version i need to log more data and I have attached 64 MB flash memory to the AWR. Its working normally when i use it for the initial 8 MB same as the previous version. but when i tried to use the whole 64 MB with initial 2MB as reserved memory for AWR and rest 62MB for my logging. I am not able to do that.

With further digging i find that if it clear the whole 62 MB flash memory, My program also gets erased. I have to re flash the program using UNIflash to make it work again. I extracted the flash dump and found out that there are 3 copies of my program there in the flash. I can't find any documentation regrading the same. Any external flash memory size limit. Any external flash recommended memory map. Only the part numbers i was able to find.

The Flash I am using is MACRONICX MX25L51245GZ2I08G.

Any ideas why is this happening. Why the program is getting stored in the flash memory that too thrice. since initially i was using 8 MB flash previously there was no such issue when i left initial 2MB unused. now this is creating issue with 64 MB Flash.

Thanks in advance.

Regards

Kunal

  • Hello Kunal,

    Can you elaborate more on some of the changes you have made? Which SDK are you using, any particular example?

    Regards,
    Saswat Kumar

  • Dear Saswat,

    Thank you for reply, I am using the mmwaveSDK 3.5.0.4.

    Example i have used is medium range radar from MMWave automotive toolbox 3.6.

    I already have an application added over that example which is running normally over 8MB Flash memory. We just did some upgrade regarding the flash storage. Since the requirement is to add more storage.

    Regards

    Kunal Jain

  • There are some update on my research. I have found that the flash is using 3 byte address mode and that is the reason, i am getting the 3 copies of my program(basically i am accessing the same address locations thrice). I would like to know how i can configure the flash to run on 4 byte mode. Since that is getting configured internally using the SFDP mode.

    Regards
    Kunal

  • Hello Kunal,

    Let me check with the right expert and get back on this.

    Regards,
    Saswat Kumar

  • Hi Kunal,

    As per driver(qspiflash.c), I see that numAddrBytes (switch case) is being set by the  QSPIFlashReadSFDP (***, paramData).

    That means it is reading these info from sFlash part.

    Could you put a breakpoint at this point and find out from where numAddrBytes is being set and manually modified (for experiment) to check if you can read further memory of your sFlash part.

    Regards,

    Jitendra

  • Dear Jitendra,

    Thank you for the response. Since i am working on Custom Board, I may not be able to Debug it. But i'll try to read the flash parameters and update you on this.

    Today tried with 16 MB size of flash and its working fine without any issue. Not able to access memory location after that.

    Regards

    Kunal Jain

  • Please let us know what you find out

    thank you

    Cesar

  • Dear Jitendra,

    I am not able to debug the code in the EVM also. As soon as i click the run button the target gets disconnected. I tried connecting to the CPU but it didn't gave me any values that is added as watchpoints. It just showed the program to be running.

    Since these APIs are internal only i am not able to access the local variables for those functions. But i did hardcoded the numAddrBytes to 4U value. The result is still the same. If I try to access the memory address 0XC100 0000. Its still resulting in the same data that is there at the 0XC000 0000 which is the start of the source code binary.

    It would be helpful if you provide the insights in how to get the debugging done on custom board. I am using the Medium Range Radar example with my application on top of it. OR a way to set the addressing to 4byte mode manually.

    Regards,
    Kunal Jain

  • Hi,

    Are you able to connect CCS to the custom board?

    You would need to add qspiflash.c to the CCS project so that you have visibility into the symbols of the code

    By default, the qspiflash driver is built in a library, so you will not have good visibility into the src code.

    thank you

    Cesar

  • Dear TI,

    --------- SPI flash detected-----------

    Device manufacture:         18

    Device type:                f0

    Device capacity:            9f

    Number of Address bytes:    229

    Erase command:              9f

    Dual read command:          f0

    Quad read command:          18

    Read command support:       9f

    ------------------------------------

    I am getting this data while debugging the flash. So as per the switch case mentioned in the screenshot posted by Mr Jitendra the value is coming out to be 3. So the default case will be executed. but I have modified that also to select 4 byte mode only as mentioned in the below screenshot.

    Still while trying to access the address C1000000 i am getting the data stored at C0000000 which is the start byte of the application binary.

  • Any update?
    We are actually in a hurry to get this resolved. Project timelines are getting affected due to this.
    Please consider this a priority.

  • Please Update!!!!

  • Hi Kunal,

    I checked with our Soc design team, and got the confirmation that AWR1843 can support max of 8MB of Flash access.

    .

    ------- EDITED ------

    EXT_FLASH has max of 8MB of MEM_MAP Flash access mode. Mentioned in TRM as well.

    Today tried with 16 MB size of flash and its working fine without any issue.

    Did you try this 16MB flash access via Men_MAP mode?

    .

    Regards,

    Jitendra

  • Dear Jitendra,

    I am able to access 16MB of flash. Beyond that i am not able to access it. A total of 3500 pages i am able to access. Leaving initial 2 MB for Program memory. I am able to trace it back to the qspiflash library is limiting the Addressing mode for the flash at 3 byte. and not reaching 4 byte. Hence I am not able to access the addresses beyond 16MB.

    I tried accessing the 16MB using the standard configuration without the memory mapped mode.


    If you can help me get some driver update or something else it would be helpful.

    Thanks and regards,
    Kunal

  • Hi,

    Unfortunately our design team does not have additional input

    thank you

    Cesar