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.

TMS320F28377D: OTP size

Part Number: TMS320F28377D

The OTP size isn't called out in the device comparison table in the data sheet (rev M) but the block diagram shows 1K for each CPU. Is that correct? I can't see the OTP on the memory map from code composer so I just want to confirm the OTP size. Thanks!

  • This is correct, there is 1k OTP on each core of this device.  This is listed in the flash memory map further down in the DS .  I agree that the comparison table could be a bit more explicit, vs the "Yes" that is currently listed.  I'll recommend we make this improvement so all the information is in that comparison table.

    I need to look into the Code Composer memory map to see if this got left out of the GEL file that configures this.  If you select Tools->On-chip Flash, this will bring up a tool window; you'll see a tab for GEL files.  If you click on this you should see a GEL file for your target; if you open this you should see a large section with GEL_MapAdds, which sets up the memory map.  Let me know if this file is showing the OTP banks or not.

    Best,

    Matthew

  • Matthew,

    Thanks for your reply.

    Yes I see OTP in the gel file. More than I expected to see under data memory maps with the user OTP though.

    /* Program memory maps */

        GEL_MapAddStr(0x00070000,0, 0x400, "R|AS2",0);                     /*   TI OTP BANK1 (2 KBytes)                                 */
        GEL_MapAddStr(0x00070800,0, 0x400, "R|AS2",0);                     /*   TI OTP BANK2 (2 KBytes)                                 */

        /* Data memory maps */

        GEL_MapAddStr(0x00070000,1, 0x400, "R|AS2",0);                     /*   TI OTP BANK1 (2 KBytes)                                 */
        GEL_MapAddStr(0x00070800,1, 0x400, "R|AS2",0);                     /*   TI OTP BANK2 (2 KBytes)                                 */
        GEL_MapAddStr(0x00078000,1, 0x400, "R|AS2",0);                     /*   USER OTP BANK1 (2 KBytes)                               */
        GEL_MapAddStr(0x00078800,1, 0x400, "R|AS2",0);                     /*   USER OTP BANK2 (2 KBytes)                               */
        GEL_MapAddStr(0x01070000,1, 0x400, "R|AS2",0);                     /*   TI OTP BANK1 ECC (2 KBytes)                             */
        GEL_MapAddStr(0x01070800,1, 0x400, "R|AS2",0);                     /*   TI OTP BANK2 ECC (2 KBytes)                             */
        GEL_MapAddStr(0x01071000,1, 0x80, "R|AS2",0);                     /*   USER OTP BANK1 ECC (2 KBytes)                           */

  • Ricker,

    I assume the confusion here is the mapping/inclusion of the ECC banks and TI OTP.

    The ECC banks are not comprehended in the sizes listed in the datasheet, since they don't hold user programmable data, but rather the ECC syndromes that allow the logic to correct single bit errors or detect double bit errors.  The mapping is a way to view the ECC syndromes in case that is needed by your system requirement.

    The TI OTP banks, while not usable either do contain device config information as well as module trims so that the device performs correctly and to the DS spec.

    Let me know if this clears things up.

    Best,

    Matthew