SPRUJC5 April 2024 TMS320F28P550SJ , TMS320F28P559SJ-Q1
Sets up the flash state machine registers for the 512-bit (32 16-bit words) programming with user provided flash data and issues the programing command to valid Flash.
Fapi_StatusType
Fapi_issueDataOnly512ProgrammingCommand(
uint32 *pu32StartAddress,
uint16 *pu16DataBuffer,
uint16 u16DataBufferSizeInWords
)
pu32StartAddress [in] | 512-bit aligned flash address to program the provided data |
pu16DataBuffer [in] | Pointer to the Data buffer address. Data buffer should be 512-bit aligned. |
u16DataBufferSizeInWords [in] | Number of 16-bit words in the Data buffer. Max Data buffer size in words should not exceed 32. |
This function will only program the data portion in Flash at the address specified. It can program 512-bit data (Second parameter) at the user provided 512-bit aligned flash address.
This function is used when a user application (that embed/use Flash API) has to program 512-bit of data and corresponding 64-bit of ECC data separately. 512-bit Data is programmed using Fapi_issueDataOnly512ProgrammingCommand () function and then the 64-bit ECC is programmed using Fapi_issueEccOnly64ProgrammingCommand() function. Generally, most of the programming utilities do not calculate ECC separately and instead use function Fapi_issueAutoEcc512ProgrammingCommand(). However, some Safety applications may require to insert intentional ECC errors in their Flash image (which is not possible when Fapi_AutoEccGeneration mode is used) to check the health of the SECDED (Single Error Correction and Double Error Detection) module at run time. In such case, ECC is calculated separately (using the Fapi_calculateEcc() function as applicable). Application may want to insert errors in either main array data or in the ECC as needed. In such scenarios, after the error insertion, Fapi_issueDataOnly512ProgrammingCommand () API and then the 64-bit ECC is programmed using Fapi_issueEccOnly64ProgrammingCommand() API can be used to program the data and ECC respectively.
For allowed programming range for the function, see Table 3-5.
Flash API | Main Array | DCSM OTP | ECC | Link Pointer |
---|---|---|---|---|
Fapi_issueDataOnly512ProgrammingCommand() | Allowed | Not allowed | Not allowed | Not allowed |
Example implementation for this function will be released in next C2000ware release.