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.

CC3200MOD: Please share the information about Embedded-programming.

Part Number: CC3200MOD
Other Parts Discussed in Thread: UNIFLASH, , CC3220S

 

1.What value should be set for StrorageID at Raw Storage Write command?

2.Please let me know the way to read the data from the storage.

3.Please let me know the way to read the data in SFLASH.

 

  • Hi Haruko,

    1. 0x2 - for serial flash.
    2. Raw Read option is not available. The Ack for write (that verifies the checksum) should be enough.
    3. Same as 2.


    Br,
    Kobi
  • Hi Kobi,

    I have 2 additional questions for #2.

    Which one is expected behavior? (My expected behavior is 2))
    1) The Ack for write verifies if OPCODE and DATA for the write command correctly send from Host to Target by using checksum.
    2) The Ack for write verifies if DATA for the write command is correctly programed on target memory by using checksum.

    Please share the detailed information for the behavior of the function "verify" which is implemented in Uniflash tool.
    Is the function reads back all written data in SFLASH and verify if all written data in SFLASH are expected one?

    Best regards,
    Haruko.
  • The ACK for write is not using checksum. It simply corresponds to the return code from the flash (for the write command).

    The Verify will trigger a read transaction from the flash and compare it to the written content.

    br,

    Kobi

  • Hi Kobi,

     

    >The ACK for write is not using checksum. It simply corresponds to the return code from the flash (for the write command).

     

    I'm little bit confused. According to your answer before,

       "2. Raw Read option is not available. The Ack for write (that verifies the checksum) should be enough."

     

    I'd like to know the detailed behavior of ACK for write commend to SFLASH on Embedded programing.

    And also, I'd like to know the detailed behavior of return code from the flash (for the write command).

     

    The background of these questions are, I'm searching the alternative method of "verify" feature in Uniflash on Embedded programming.

    I mean, I'd like to confirm if written images in SFLASH by "write command" of Embedded programming are correct or NOT.

     

     

    >The Verify will trigger a read transaction from the flash and compare it to the written content.

     

    How does the above behavior can be realized by using Embedded programming?

     

    Best Regards,

    Haruko.

     

  • Hi Haruko,

    Sorry for the confusion.

    The checksum (on the entire command) is being verified by our rom code. In case of error the rom code will ignore the command (i.e. will not write anything to the flash and will not retrieve any NACK message) and simply wait for the next command, Please use some watchdog timer if you suspect a checksum issue (over the uart).

    Only if the checksum passes, we actually start a transaction against the flash. We are supporting standard flash (SPI) commands. See http://processors.wiki.ti.com/index.php/CC3100_%26_CC3200_Serial_Flash_Guide  , "Supported Flash Types" section for list of such commands.

    Please make sure your flash supports those commands and read its datasheet for details.

    The Raw Write response will be an ACK in case of successful return code from the flash or NACK in case of failure.

    The Verify support in Uniflash performs Read-after-Write (and comparison) for files access (using file system API) and for gang programming (available only through the Uniflash).

      

    Br,

    Kobi

  • Hi Kobi,

    >The Verify support in Uniflash performs Read-after-Write (and comparison) for files access (using file system API) and for gang programming (available only through the Uniflash).


    Is there any way to perfoem "comparison" the flashed image on SFLASH at every boot-up the device?
    The perpose of "comparison" is, to confirm if the flashed image on SFLASH is not corrupted by security reason and also to confirm if it's not crashed by some electrical dameges. Main MPU which is connected CC3200MOD would like to confirm the flashed image onSFLASH before booting up CC3200MOD.

    Best Regards,

    Haruko.

  • Hi Haruko,

    Not in 3200. You can use an application bootloader (like we do for OTA) to read the image content before executing it, but the initial app is not protected from changes.

    In the secure CC3220S/SF - we do support secure boot: Upon boot we run a hash function on the MCU (flash) image and compare it to a previously stored digest (that was created when the image was written). It is assumed that any modification to the image will be detected at this stage. Any mismatch (due to attack or damage) will lock the device.

    br,

    Kobi